ProtocolCapabilities 要素 (XMLA)
SOAP 要求メッセージの SOAP ヘッダーを使用して、インスタンスとクライアント アプリケーションの間のAnalysis Services機能を識別します。
名前 空間http://schemas.microsoft.com/analysisservices/2003/engine
構文
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
...
<ProtocolCapabilities xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Capability>...</Capability>
</ProtocolCapabilities>
...
</soap:Header>
<soap:Body>
...
</soap:Body>
</soap:Envelope>
要素の特性
特徴 | 説明 |
---|---|
データ型と長さ | なし |
既定値 | なし |
カーディナリティ | 0-1 : 省略可能な要素で、出現する場合は 1 回だけの出現が可能です |
要素リレーションシップ
リレーションシップ | 要素 |
---|---|
親要素 | なし |
子要素 | 機能 |
注釈
ProtocolCapabilities 要素を使用すると、クライアント アプリケーションは、バイナリ XML や圧縮のサポートなどのプロトコル機能をいつでもサーバー インスタンスとネゴシエートできます。 プロトコルのネゴシエーションは以下の手順で行われます。
クライアント アプリケーションは、SOAP ヘッダー内に ProtocolCapabilities 要素を含む SOAP 要求を送信することにより、自らのプロトコル機能を示します。
インスタンスは SOAP 要求を受信して処理します。
インスタンスに要求されたプロトコル機能と同じプロトコル機能がある場合、インスタンスは SOAP 要求で送信されたのと同じ ProtocolCapabilities 要素を含む SOAP 応答を送信し、プロトコルは正常にネゴシエートされています。 そうでない場合、プロトコル機能は正常にネゴシエートされず、インスタンスは SOAP エラーを返します。
プロトコル機能を正常にネゴシエートした後、クライアント アプリケーションとインスタンスが特定のプロトコルを使用する期間は、セッションが明示的か暗黙的かによって異なります。
明示的なセッションは、 BeginSession ヘッダー要素を使用して作成 されるセッションです。 明示的セッションの場合、ネゴシエートされたプロトコルは、クライアント アプリケーションが新しい ProtocolCapabilities 要素を送るまで、またはセッションが終了するまで使用されます。
暗黙的なセッションは、 インスタンスによって作成され、SOAP 要求の送信時にクライアント アプリケーションによって明示的に指定されていないセッションです。 暗黙のセッションの場合、ネゴシエートされたプロトコルは、SOAP 要求が完了するまでの期間だけ使用されます。
プロトコル機能を明示的にネゴシエートする必要はありません。 つまり、クライアント アプリケーションで ProtocolCapabilities 要素を SOAP 要求に含める必要はありません。 SOAP 要求に ProtocolCapabilities 要素が含されていない場合、インスタンスは SOAP 要求と同じ形式で応答します。