Elemento ProtocolCapabilities (XMLA)

Usa el encabezado SOAP en un mensaje de solicitud SOAP para identificar las funcionalidades de protocolo entre una instancia de Analysis Services una aplicación cliente.

Nombreshttp://schemas.microsoft.com/analysisservices/2003/engine

Sintaxis

  
<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>  

Características de los elementos

Característica Descripción
Tipo y longitud de los datos Ninguno
Valor predeterminado Ninguno
Cardinalidad 0-1: Elemento opcional que puede aparecer una y solo una vez.

Relaciones de elementos

Relación Elemento
Elementos primarios None
Elementos secundarios Funcionalidad

Comentarios

El elemento ProtocolCapabilities permite a las aplicaciones cliente negociar funcionalidades de protocolo, como xml binario o compatibilidad con compresión, con una instancia de servidor en cualquier momento. La negociación de protocolo conlleva los pasos siguientes:

  1. La aplicación cliente identifica su capacidad de protocolo enviando una solicitud SOAP que incluye el elemento ProtocolCapabilities como parte del encabezado SOAP.

  2. La instancia recibe y procesa la solicitud SOAP.

  3. Si la instancia tiene la misma funcionalidad de protocolo que la solicitada, la instancia envía una respuesta SOAP que incluye el mismo elemento ProtocolCapabilities enviado en la solicitud SOAP y el protocolo se ha negociado correctamente. En caso contrario, las capacidades de protocolo no se negocian correctamente y la instancia devuelve un error de SOAP.

Después de negociar correctamente las funcionalidades del protocolo, el tiempo que la aplicación cliente y la instancia usan un protocolo determinado depende de si la sesión es explícita o implícita:

  • Una sesión explícita es aquella que se crea mediante el elemento de encabezado BeginSession . Para una sesión explícita, el protocolo negociado se utiliza bien hasta que la aplicación cliente envía un nuevo elemento ProtocolCapabilities o bien hasta que la sesión termina.

  • Una sesión implícita es aquella creada por una instancia de y no especificada explícitamente por la aplicación cliente al enviar una solicitud SOAP. Para una sesión implícita, el protocolo negociado se utiliza solamente hasta que se completa la solicitud SOAP.

Las capacidades de protocolo no tienen que ser negociadas explícitamente. Es decir, una aplicación cliente no tiene que incluir un elemento ProtocolCapabilities como parte de la solicitud SOAP. Si una solicitud SOAP no incluye un elemento ProtocolCapabilities , la instancia responde con el mismo formato que la solicitud SOAP.