Standard Object Access Protocol ( SOAP )

Much has been made of XML – it seems that a computer magazine cannot be opened without reading a column on XML, what it looks like and how it is going to affect the way that data are being represented. However, whilst XML is a data representation standard, numerous standards and organizations have embraced it and are using it to do more than simply representing data. This is due to two features of XML that leads to its potential, namely the fact that:


Introduction
Much has been made of XML -it seems that a computer magazine cannot be opened without reading a column on XML, what it looks like and how it is going to affect the way that data are being represented.However, whilst XML is a data representation standard, numerous standards and organizations have embraced it and are using it to do more than simply representing data.This is due to two features of XML that leads to its potential, namely the fact that: XML is self-describing (i.e. the way that the data are represented actually describes itself as well); and XML is a platform-independent format.One of the most interesting and newest initiatives to emerge using XML is the Simple Object Access Protocol, or SOAP.SOAP was originally a Microsoft initiative, but has been embraced by such companies as IBM and Lotus and was ratified as a standard in December 1999.

What is SOAP?
SOAP has a very simple function: it describes how to do remote procedure calls using XML.A remote procedure call is: 'A call by one program to a second program on a remote system.The second program generally performs a task and returns the results of that task to the first program' (Microsoft, CD:1998).
The following definition of SOAP comes from The SOAP 1.1 specification: 'SOAP provides a simple and lightweight mechanism for exchanging structured and typed information between peers in a decentralized, distributed environment using XML.'

Why is this important?
With the growth of the Internet and e-commerce, it is becoming more and more important to integrate business systems across the Internet, hence the focus of new development on standards such as XML and SOAP.'Developers must be able to integrate more than just services.They need to be able to assemble solutions from any combination of software components, applications, business processes, devices, or any other intellectual property' (Loshin, Online:1999).
It can be said that information management delivers the right information to the right place at the right time.SOAP allows information to be shared and accessed between remote systems.SOAP ties together the information management resources, and using modules between systems becomes a non-issue.
Effectively, the in-house and supplier systems can become a big blob of information, and information will not need to be manually transferred because the systems are 'incompatible'.One interface can be supplied, tying together the systems, and the user need not have any knowledge of exactly where the information is coming from, just that it is being delivered.Therefore, businesses are spanned across the Internet, not only the company's in-house servers.

Business benefits
It is a lightweight protocol that uses XML.SOAP is thus not dependent on a specific vendor and therefore the business will not get tied in to a specific vendor or package.Interfaces are clearly defined in such a way that they are easy to access and understand.It formalizes the definition of the required interfaces, essentially enforcing a contract between the caller and the receiver.This is of prime importance when connecting distributed applications.The use of standards takes away the guess work.It enforces a loose coupling between distributed applications, allowing for easy expansion and increased scalability of distributed systems.That is, SOAP makes it easy to expand existing systems, and to add more components, for example, a second server.SOAP can function over standard HTTP where other distributed systems may run into the firewall.SOAP therefore makes use of current Internet infrastructures.
However, there are some disadvantages to using SOAP: Because SOAP uses XML, it suffers from the same verbosity issues as XML.SOAP supports the use of schemas to validate the XML content.However, there are no XML parsers available that offer full schema support yet, and the XML schema standard has not yet been ratified.

Conclusion
More and more information is being made available with regards to SOAP.Various sources (Web sites as well as books) are listed.Microsoft and IBM have released SOAP toolkits and documentation.Microsoft's Biztalk server -used for integration between businesses on the Web -uses SOAP.The newly announced UDDI (Universal Description, Discovery, and Integration) initiative by Microsoft, IBM and Arriba uses SOAP as its interrogation mechanism.In the space of about a year, SOAP has risen from an interestingly named initiative to a major player in the distributed space.If your company is going to integrate to another, it is worth taking a look at SOAP.