SOAP defines four basic pieces of information, which we will look at in turn:
The way the XML message is structured
The conventions representing a remote procedure call in that XML message
A binding to HTTP, to ensure that the XML message is transported correctly
The conventions for representing an error back to the sender
SOAP does not define an object model or language bindings. It provides only the overall framework for an XML message to be communicated between a sender and a receiver, generically called SOAP processing nodes (Figure 4.3). A node may be a sender, a receiver, or both. This one-way message between nodes is often combined to implement request-response, asynchronous messaging, and notification type interactions. For example, a client may send a SOAP message within an HTTP request. The server processes that message and returns the SOAP response with the HTTP response.