Simple Object Access Protocol

O SOAP (Simple Object Access Protocol) é uma maneira de passar informações entre aplicativos em um formato XML.

As mensagens SOAP são transmitidas a partir do aplicativo de envio para o aplicativo de recebimento, geralmente sobre uma sessão HTTP. A mensagem SOAP real é composta do elemento Envelope, que contém um elemento Corpo e um elemento Header opcional.

  • Envelope. Este elemento obrigatório é a raiz da mensagem SOAP, identificando o XML transmitido como sendo um pacotaço SOAP. Um envelope contém uma seção de corpo e uma seção de cabeçalho opcional.
  • Cabeçalho. Este elemento opcional fornece um mecanismo de extensão indicando informações de processamento para a mensagem. Por exemplo, se a operação usando a mensagem requer credenciais de segurança, essas credenciais devem fazer parte do cabeçalho do envelope.
  • Corpo. Este elemento contém a carga útil da mensagem, sendo os dados brutos transmitidos entre os aplicativos de envio e recebimento. O próprio corpo pode consistir em múltiplos elementos filhos, com um esquema XML tipicamente definindo a estrutura desses dados.

Um pacote SOAP e o XML correspondente são estruturados da seguinte maneira:

Figura 1. Um pacote SOAP de exemplo
Esta imagem representa um envelope SOAP, que consiste em dados de cabeçalho e dados do corpo. O elemento raiz do XML para o envelope é soapenv: Envelope. As informações do cabeçalho estão contidas no elemento soapenv: Header. Os dados do corpo estão contidos no elemento soapenv: Corpo.