SOAP simplifies Web application development
Businesses wanting to integrate purchasing systems, share business data or participate in the fluid business alliances that global e-business favors will find the recently updated SOAP a key technological enabler.
The Simple Object Access Protocol is an XML (Extensible Markup Language)-based RPC (remote procedure call) standard originally developed by Microsoft, Develop Mentor and UserLand Software (later joined by IBM and Lotus Development) that can greatly simplify cross-language and cross-business development.
Key changes in SOAP 1.1 are a switch from Microsoft's older XML-Data to XML Schema and the addition of transport protocol independence. SOAP 1.0 required HTTP; SOAP 1.1 is transport-agnostic --e-mail or message queuing links can be used if desired to move SOAP messages around.
SOAP 1.1 was submitted last month to the World Wide Web Consortium as a standards proposal. Although SOAP is still many months away from becoming a W3C recommendation, eWeek Labs believes it is worth investigating now for use in controlled cases. The technology will cut through the complexity of current approaches to intermachine communication, espe cially when systems are separated by a WAN or an Internet link.
Unfortunately, SOAP's simplicity and ease of use are offset by the communications inefficiency of its text-based format and by its limited feature set. For example, SOAP has no support for transactional exchanges, and security and guaranteed delivery aren't part of the proposed spec. However, SOAP can easily be used within established infrastructures such as message queuing products that provide these features, as long as both sides of a SOAP connection use the same message queuing product.
Companies using RPC technologies such as the Object Management Group's CORBA (Common Object Request Broker Architecture), Microsoft's DCOM (Distributed Component Object Model) and Java RMI (Remote Method Invocation) should investigate SOAP.
SOAP solves the hard problems of cross-organisation distributed programming by being simpler and less vendor-specific than other bridging technologies. For example, one side of a SOAP connection can be CORBA-based and the other, DCOM-based. SOAP is also better suited to stateless Internet programming models than are CORBA- or DCOM-based solutions.
In the past few months alone, SOAP has also matured as a proposed standard and shed some of the Microsoft-specific characteristics that had made us reluctant to recommend the protocol.
The initial SOAP 1.0 proposal, which was submitted to the Internet Engineering Task Force last November, relied on the Microsoft-backed XML-Data proposal from January 1998 and has long since been replaced by XML Schema in the W3C standards process.
Companies using SOAP 1.0 are thus locked into a Microsoft-only, nonstandard data-typing technology --a limitation that will remain in Microsoft's upcoming BizTalk Server and SQL Server 7.0, which also rely on XML-Data. After the original development by Microsoft, DevelopMentor and UserLand, IBM and Lotus helped revise SOAP to make it more useful for heterogeneous organisations.
"Making it independent was one of the main things we worked on with Microsoft in SOAP 1.1," said Bob Sutor, program director for XML technologies at IBM.
Like all prestandard efforts, SOAP is, for now, a slippery target. Even so, we believe SOAP 1.1 can deliver value now in specific situations.
"SOAP 1.1 is the basis to start building things today," Sutor said. "The way the world is going, standardisation is happening with implementation. ... We have to deal with versions. [SOAP] 1.1 is quite stable; it's a very good effort. There'll be tweaks, but it's a strong technology. We're not waiting."













