Since SOAP is one of the focal points of the hype associated with Web Services, it makes sense to start there. And as much as SOAP might appear to a complicated entity, its basic purpose is quite simple. The Simple Object Access Protocol defines the XML format for messages that are sent between two processes. That's it, that's all. Nothing magical at work here.
But as with most technical subjects, the devil is in the details. Just sending an XML message using SOAP is by no means sufficient to have two applications communicate with one another. Each application needs to understand the context of the messages in order for SOAP to be effective. And that leads to the requirement to define data types (Section 5 of the SOAP specification) or RPC function call formats (Section 7 of the specification). Not to mention the techniques that utilize the HTTP port to send messages, something that, while not in the required portion of the SOAP specification, is supported by almost every SOAP implementation.
Figure 1 - SOAP Message Structure
The format of a SOAP message is quite straightforward. The message is delivered
in an envelope. The envelope contains two parts. The Header contains information
that describes how the recipient should process the message. The Body contains
the payload of the message (in other words, the contents) and an optional section
called SOAP Fault. This optional section contains error or status information.
Comments