This used to stand for “Simple Object Access Protocol” but with the latest revision of the standard, Version 1.2, SOAP is no longer an acronym. The SOAP standard contains the information for how the messages should be sent, the format the XML appears in, the different primitive types supposed, the roles different pieces of software take during the transmission of the SOAP documents, and the type of transports available, such as HTTP.
As this standard moves forward, the name will change to XMLP for the XML Protocol. SOAP’s evolution has been muddied by the fact that it came from Microsoft. XMLP is a complete rewrite of the standard so that Web Services become even more cross-platform compatible. Because of this change, much of this vocabulary must evolve. Although the names will probably change, the general idea of each term will remain the same.
The SOAP standard is not just an XML standard. The standard includes how SOAP messages should behave, the different transports used, how errors get handled, and more
This describes how a SOAP message works with a transport protocol such as HTTP, SMTP, or FTP to move across the Internet. It is important that SOAP moves across a standard protocol in order to communicate with other Web Service products.
Before SOAP, many developers created their own method of transmitting XML documents through a network. This works fine as long as the transmission is limited within a particular team. If, however, you need to work with another group either within or outside your company this becomes difficult because of training and possible modification to work with an XML transmission they may be using. By using a standard XML document on standard protocols, the work needed for collaboration will be minimal.
SOAP Message Exchange Pattern (MEP)
This describes how a SOAP document gets exchanged between a client and server. The SOAP message possesses a binding, such as HTTP, so that it can move across the Internet. The conversation between the client and server, both known as nodes, determines what actions both take.
Remember that SOAP is an XML encapsulation of RPC. Therefore, the MEP is completely request and response between the client and server (or other nodes). Thus, if there needs to be several interactions between nodes, this takes several requests and responses to complete transmission. This differs from other remote object technologies such as CORBA where the entire conversation occurs over one single connection.
A SOAP application is simply an application that uses SOAP in some way. Some applications maybe entirely based on the SOAP standard or may just use the SOAP standard to receive code or software updates. Remember an application can produce, consume, or be an intermediary (or router).
A node’s responsibility can include sending, receiving, processing, or retransmitting a SOAP message. A node is just a piece of software that properly handles a SOAP document dependent on its role. Besides transmission, a node is also responsible for enforcing that the XML contained in the SOAP document is grammatically correct according to the SOAP standard.
A SOAP role defines what a particular node does. It may be a sender, receiver, or intermediary.
The node sending the SOAP request is the SOAP sender. If you think of a client/server example, when a client first makes a request, it sends a message to the server asking for some information.
A server that receives the SOAP request is obviously the receiver. This is the server in the client/server model.
An intermediary looks at a SOAP message, perhaps acts on some of the information in the message, and then looks at the SOAP document for more information on where to pass the information in the document next.
A SOAP intermediary essentially acts like a router in a network. A router takes a look at a packet of information moving through a network, finds the packet’s next destination, and then sends it to that destination.
A SOAP intermediary does the same thing but it’s looking at SOAP messages and information in the XML to send the message to the proper location. This occurs when a large corporation possesses many SOAP servers that perform different functions, and the SOAP intermediary may have access to the firewall. Once it receives the information, it looks at the XML to see where to send the message next. It may act on or modify the data before this retransmission, but it is not necessary.
A SOAP message moves from sender to receiver perhaps through several intermediaries. The resulting route the message takes is the Message Path.
Initial SOAP Sender
The node sending the first SOAP request is the initial SOAP sender.
A SOAP feature is a piece of functionality in software supporting SOAP that deals with a feature of SOAP. Examples include securing the transaction with a secure protocol or the software acting as an intermediary.