onstruction without loss of information. This is achieved using protocol binding of the XML document. An encrypted structure can also provide serializa- tion and is supported in SOAP. The most popular transport binding with SOAP is HTTP. The SOAP-HTTP pair is used extensively in Web-based applications. HTTP binding with SOAP provides request message and response message cor- relation. HTTP implicitly correlates its request message with the response message that can be leveraged as part of binding. So a SOAP application can choose to infer a correlation between a SOAP message sent in the body of a HTTP request message and a SOAP message returned in the HTTP response. In SOAP if a specific feature that is required for the application is not available through the binding, then it may be implemented within the SOAP envelope, using SOAP header blocks. SOAP binding mainly supports two types of message exchange patterns. They are request-response exchange pattern and response exchange pattern. In SOAP request-response message exchange pattern, SOAP messages can be exchanged in both directions between two adjacent SOAP nodes. The HTTP POST method can be used for conveying SOAP messages in the bodies of the HTTP request and response message. SOAP response message exchange pattern is used when non- SOAP message exchange is involved and is done when a non-SOAP message as an HTTP request is followed by a SOAP message included as part of the response. The HTTP GET method in a HTTP request is used to return a SOAP message in the body of a HTTP response. It is suggested to use SOAP request-response message exchange pattern when information resource is manipulated and SOAP response message exchange pattern when an application is assured that the message exchange is for information retrieval where the information resource is "untouched" as a result of the interaction. SAAJ (SOAP with attachments API for Java) gives Java APIs for SOAP message creation and manipulation. When it comes to SOAP programing with Java, JAX- RPC (Java API