Definition of SOAP
SOAP (Simple Object Access Protocol) is a simple, lightweight protocol for structured and strong-type information exchange in a decentralized, distributed environment. The protocol is based on XML and consists of three parts:
- An envelope that describes the contents of the message and how to use it
- A set of rules for serializing data exchanged between applications
- A procedure to represent remote procedure calls, that is, the way in which queries and the resulting responses to the procedure are represented
Apache SOAP is a rather comprehensive implementation of SOAP. This thorough overview goes over the nuts and bolts of the protocol for enterprise looking to implement SOAP 2.2.
Similar to object distribution models (e.g., IIOP and DCOM), SOAP can call methods, services, components, and objects on remote servers. However, unlike these protocols, which use binary formats for the calls, SOAP uses text format (Unicode), with the help of XML, to structure the nature of the exchanges.
SOAP can generally operate with numerous protocols (e.g., FTP, SMTP and POP), but it is particularly well-suited for the HTTP protocol. It defines a reduced set of parameters that are specified in the HTTP header, making it easier to pass through proxies and firewalls.