Elemento ProtocolCapabilities (XMLA)
Usa o cabeçalho SOAP em uma mensagem de solicitação SOAP para identificar os recursos do protocolo entre uma instância de Microsoft SQL Server Analysis Services e um aplicativo cliente.
Namespace https://schemas.microsoft.com/analysisservices/2003/engine
Sintaxe
<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>
Características do elemento
Característica |
Descrição |
---|---|
Tipo de dados e comprimento |
Nenhum |
Valor padrão |
Nenhum |
Cardinalidade |
0-1: elemento opcional que pode ocorrer apenas uma única vez. |
Comentários
O elemento ProtocolCapabilities permite que os aplicativos cliente negociem os recursos de protocolo com uma instância Analysis Services, como o suporte à compactação ou XML binário, a qualquer momento. A negociação dos recursos de protocolo envolve as seguintes etapas:
O aplicativo cliente identifica seu recurso de protocolo enviando uma solicitação SOAP que inclua o elemento ProtocolCapabilities como parte do cabeçalho SOAP.
A instância Analysis Services recebe e processa a solicitação SOAP.
Se a instância Analysis Services tiver o mesmo recurso de protocolo que foi solicitado, a instância enviará uma resposta SOAP que inclui o mesmo elemento ProtocolCapabilities enviado na solicitação SOAP e o protocolo terá sido negociado com êxito. Caso contrário, os recursos de protocolo não serão negociadas com êxito e a instância retornará uma falha SOAP.
Após a negociação bem-sucedida dos recursos de protocolo, o tempo em que o aplicativo cliente e a instância Analysis Services utilizarão um determinado protocolo dependerá do fato de a sessão ser explícita ou implícita:
Uma sessão explícita é aquela que foi criada usando o elemento de cabeçalho BeginSession. Em uma sessão explícita, o protocolo negociado é usado até que o aplicativo cliente envie um novo elemento ProtocolCapabilities ou até o término da sessão.
Uma sessão implícita é aquela que foi criada por uma instância Analysis Services e não foi explicitamente especificada pelo aplicativo cliente no momento do envio da solicitação SOAP. Em uma sessão implícita, o protocolo negociado só é usado até que a solicitação SOAP seja concluída.
Os recursos de protocolo não precisam ser negociados explicitamente. Ou seja, um aplicativo cliente não precisa incluir um elemento ProtocolCapabilities como parte da solicitação SOAP. Caso uma solicitação SOAP não inclua um elemento ProtocolCapabilities, a instância Analysis Services responderá usando o mesmo formato usado na solicitação SOAP.