Simple Object Access Protocol (SOAP) is a communication protocol developed by Microsoft for accessing individual projects on the Internet. The SOAP protocol allows distributed elements of an application to communicate with each other. SOAP evolved from a Remote Procedure Call( RPC) using XML syntax to send text commands over the Internet using the HTTP protocol. SOAP is a lightweight protocol that can be used to package proprietary modules and provide them with commonly understood interfaces.
SOAP is part of the service-oriented architecture( SOA). It defines a message exchange between two program objects. One that requests SOAP services and the second that offers SOAP services. The protocol is vendor-neutral and completely independent of the programming language, object model, and operating system platform used. The messages are written in XML or use the Web Services Description Language(WSDL), also written in XML. SOAP is used as the user interface for web services. It is similar to the Internet Inter- ORB Protocol( IIOP).
A SOAP service is requested via a corresponding query. The request goes through the web server, which has implemented Simple Mail Transfer Protocol( SMTP), HTTP or FTP protocol as the transportprotocol. The web server passes the request to a SOAP application server. After checking and validating the requestor, the application can interpret the message and invoke the desired SOAP service.