次の方法で共有


ProtocolCapabilities 要素 (XMLA)

Microsoft SQL Server Analysis Services インスタンスとクライアント アプリケーションの間のプロトコル機能を識別するために、SOAP 要求メッセージ内で SOAP ヘッダーを使用します。

名前空間 https://schemas.microsoft.com/analysisservices/2003/engine

構文

<soap:Envelope xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/">
   <soap:Header>
      ...
      <ProtocolCapabilities xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
         <Capability>...</Capability>
      </ProtocolCapabilities>
      ...
   </soap:Header>
   <soap:Body>
      ...
   </soap:Body>
</soap:Envelope>

要素の特性

特性

説明

データ型と長さ

なし

既定値

なし

基数

0-1 : 省略可能な要素で、出現する場合は 1 回だけの出現が可能です

要素のリレーションシップ

リレーションシップ

要素

親要素

なし

子要素

Capability

説明

ProtocolCapabilities 要素は、クライアント アプリケーションが Analysis Services インスタンスとの間でプロトコル機能 (たとえばバイナリ XML や圧縮サポート) を任意の時点でネゴシエートすることを可能にします。 プロトコルのネゴシエーションは以下の手順で行われます。

  1. クライアント アプリケーションは、SOAP ヘッダー内に ProtocolCapabilities 要素を含む SOAP 要求を送信することにより、自らのプロトコル機能を示します。

  2. Analysis Services は SOAP 要求を受信して処理します。

  3. 要求されたプロトコル機能と同じものを Analysis Services インスタンスが保有している場合、インスタンスは SOAP 要求で送られたのと同じ ProtocolCapabilities 要素を含む SOAP 応答を送信し、その時点でプロトコルのネゴシエーションが正常に完了します。 そうでない場合、プロトコル機能は正常にネゴシエートされず、インスタンスは SOAP エラーを返します。

プロトコル機能が正常にネゴシエートされた後、クライアント アプリケーションと Analysis Services インスタンスが特定のプロトコルを使用する期間は、セッションが明示的か暗黙かに応じて次のように異なります。

  • 明示的セッションとは、BeginSession ヘッダー要素を使用して作成されるセッションです。 明示的セッションの場合、ネゴシエートされたプロトコルは、クライアント アプリケーションが新しい ProtocolCapabilities 要素を送るまで、またはセッションが終了するまで使用されます。

  • 暗黙のセッションとは Analysis Services インスタンスによって作成されるセッションで、SOAP 要求の送信時にクライアント アプリケーションによって明示的に指定されるものではありません。 暗黙のセッションの場合、ネゴシエートされたプロトコルは、SOAP 要求が完了するまでの期間だけ使用されます。

プロトコル機能を明示的にネゴシエートする必要はありません。 つまり、クライアント アプリケーションで ProtocolCapabilities 要素を SOAP 要求に含める必要はありません。 SOAP 要求に ProtocolCapabilities 要素が含まれない場合、Analysis Services インスタンスは SOAP 要求と同じ形式を使用して応答します。

関連項目

概念

接続およびセッションの管理 (XMLA)

その他の技術情報

ヘッダー (XMLA)