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:可發生一次且只有一次的選擇性專案。 |
元素關聯性
關係 | 元素 |
---|---|
父元素 | 沒有 |
子專案 | 功能 |
言論
ProtocolCapabilities 元素可讓用戶端應用程式隨時與伺服器實例交涉通訊協定功能,例如二進位 XML 或壓縮支援。 通訊協定交涉涉及下列步驟:
用戶端應用程式藉由傳送 SOAP 要求,以將 ProtocolCapabilities 項目當做 SOAP 標頭的一部分,來識別其通訊協定功能。
實例會接收及處理SOAP要求。
如果實例具有與要求相同的通訊協定功能,則實例會傳送 SOAP 回應,其中包含在 SOAP 要求中傳送的相同 ProtocolCapabilities 元素,而且通訊協定已成功交涉。 否則,通訊協定功能不會成功交涉,而 實例會傳回SOAP錯誤。
成功交涉通訊協定功能之後,用戶端應用程式和實例使用特定通訊協議的時間長度取決於會話是否明確或隱含:
明確會話是使用 BeginSession header 元素所建立的會話。 對於明確會話,交涉通訊協定會使用,直到用戶端應用程式傳送新的 ProtocolCapabilities 專案或會話結束為止。
隱含會話是實例所建立的會話,在提交SOAP要求時不會由用戶端應用程式明確指定。 對於隱含會話,交涉的通訊協定只會在SOAP要求完成之前使用。
通訊協定功能不需要明確交涉。 也就是說,用戶端應用程式不需要在SOAP要求中包含 ProtocolCapabilities 元素。 如果 SOAP 要求不包含 ProtocolCapabilities 元素,實例會使用與 SOAP 要求相同的格式回應。