August 24, 2010


SOAP (Simple Object Access Protocol) is a wonderful technology that can help to develop great applications. SOAP is a lightweight XML-based protocol for exchanging structured information between distributed applications over native web protocols such as HTTP. SOAP specifies the formats that XML messages should use, the way in which they should be processed, a set of encoding rules for standard and application-defined data types and a convention for representing remote procedure calls and responses. It is rapidly becoming the standard protocol for accessing Web Services. It uses XML messages to exchange information across endpoints and provides several advantages over other binary protocols. SOAP is the powerhouse of web services. It has created collaboratively as an open protocol. SOAP is a highly adaptable, object-oriented protocol that exists in over 80 implementations on every popular platform, including AppleScript, JavaScript, and Cocoa. It provides a flexible communication layer between applications, regardless of platform and location. SOAP can use other transport protocols, offers a number of high-end features and is developing rapidly. A SOAP transaction begins with an application making a call to a remote procedure. The SOAP client script then encodes the procedure request as an XML payload and sends it over the transport protocol to a server script. The server parses the request and passes it to a local method, which returns a response. The response is encoded as XML by the server and returned as a response to the client, which parses the response and passes the result to the original function. There are a number of different implementations of SOAP under PHP. It’s a shifting landscape: new ones appear, and old ones aren’t maintained or simply vanish. PHP 5’s SOAP extension is the first attempt to implement the SOAP protocol for PHP in C. The SOAP extension can be used to write SOAP Servers and Clients.

In Solver Circle, they use PHP SOAP in many projects because SOAP is a communication protocol. It is a format for sending messages, it communicates via Internet, platform and language independent, simple and extensible, allows to get around firewalls and a W3C recommendation.