Written by Patricia Skinner
Bookmark and Share

SOAP, or Simple Object Access Protocol, is a lightweight, XML-based protocol exchange of information in a decentralized, distributed environment. It consists of three parts: an envelope defining a framework that describes what is in a message and how to process it, a set of encoding rules for expressing instances of application-defined datatypes, and a convention for representing remote procedure calls and responses.

Parts of SOAP

The envelope is the top part of the message that represents it. All soap messages must have an envelope. The header is the part of the message that may list attributes and is a generic mechanism for adding features. The header may or may not be present in a SOAP message. The body is the container of information intended for the recipient of the message. The body part of a SOAP message is also obligatory, and may contain a set of entries.

All SOAP messages are encoded using XML. However, SOAP messages must not contain a document type declaration or processing instructions. The SOAP encoding Style global attribute can be used to indicate the serialization rules used in a SOAP message. This last may, or may not be present in a SOAP message.

All That SOAP Is

So, SOAP describes envelope and message formats, and has a basic request/response handshake protocol. Part of the appeal of SOAP is its ability to run on top of multiple protocols and its ability to extend functionality with headers. Increasingly complex systems are being built on SOAP's basic interoperability. The most important developments for the future are probably SOAP messages with attachments, SOAP security extensions and the incorporation of digital signatures into SOAP protocols.

Bookmark and Share