- Referred to ‘Simply SOAP’, Roger Wolter, Microsoft Corporation
SOAP is a specification that defines the XML format for messages.
Section 5 of the SOAP standard specifies an XML notation for representing programming language types. The Section 5 encoded SOAP message is called an encoded message, and a message that contains an XML document is called a literal message. The .NET XML Web services defaults to literal messages, but it does support encoded messages for interoperability.
Section 7 titled Using SOAP with RPC defines the XML element that represents a function call and the return code in the response message.
The last part of the SOAP specification defines what an HTTP message containing a SOAP message must look like.
To summarize, the SOAP specification defines the structure of an XML document that can be used to exchange data between two applications.
This flexibility means that SOAP is widely applicable to a large number of communications requirements, but it also means that users have to choose carefully when selecting SOAP implementations. For example, if one implementation only offers HTTP as a transport and another only offers MSMQ as a transport, they both conform to the SOAP standard, but they won't be able to communicate with each other. In other words, SOAP promotes but doesn't ensure interoperability.