* Productivity: SOAP is widely supported in development environments with most providing proxy generators for using web services. This makes it alot quicker to consume services with complex arguments and response streams.
* Security: Embedding the request in an HTTP POST, rather than setting the parameters as query string parameters, enables the communication between the server and the client to be encrypted using standard methodologies. For instance the .NET framework and the MSXML library do not require any additional code to utilise HTTPS over HTTP.
* Extensibility: Method arguments and responses can be more complex but conform to an interface definition language (WSDL) that is widely supported. Further, as we enrich the functionality of the service, we can easily maintain support of the previous interfaces. This ensures our clients can adopt the new functionality if/when the feel it most appropriate.
