inset
Web Services Built on Cooperation and Competition
Apr. 16, 2001

The initial jockeying over Web services standards is almost over, paving the way for widespread adoption of Web services, which provide a way for applications to share components over the Internet. The acceptance of these key standards, together with IBM’s release of new WebSphere products and tools, is likely to make Web services the next big marketing push in the Internet space.

A Web service, working much like a distributed COM component, allows a Web application to obtain services from other Web sites, even when those services are provided by unaffiliated entities and hosted on completely different underlying platform software. For example, a financial application on one Web site could call a money converter Web service at a foreign bank across the Internet to supply an up-to-the-minute exchange conversion calculation; the entire exchange of information would be transparent and hidden from the user. Web services will change the nature of the Internet, expanding it from a set of loosely connected browser pages to also include a shared set of interoperable program components. Java programs, for example, will be able to use .NET components, and vice versa. (For more details about Web services and their architecture, see "New Toolkits Power Web Services Now" on page 7 of the Mar. 2001 Update.) However, before Web services run heavyweight e-commerce applications, the major players will have to resolve transaction handling and security issues.

Competing Vendors Unified

Two players control most of the Web services turf: Microsoft and IBM. Other players, such as Sun and Oracle, have announced Web service platforms, but are far behind in fielding implementations. Despite their longstanding differences, Microsoft and IBM have worked together on standards for Web services.

OASIS Agreement on SOAP

Probably the most unexpected sign of cooperation is that the OASIS group (an industry consortium including IBM and Sun that has been working on replacements for Electronic Document Interchange [EDI] standards) has recently adopted the Microsoft version of the Simple Object Access Protocol (SOAP) into its Electronic Business XML (ebXML) initiative. SOAP, the core protocol needed to implement Web services, defines how messages in the eXtensible Markup Language (XML) may be exchanged with Web services over the Internet. The OASIS group was backing a data-exchange standard based on a different XML messaging standard. The recent adoption of Microsoft’s version of SOAP messaging by this group bodes well for future Web service interoperability.

Joint Submission of WSDL Standard to W3C

A critical requirement for wide adoption of Web services is a means for one company’s application to know what messages are required to work with someone else’s Web service. A major step was taken when IBM and Microsoft, together with many other companies, jointly submitted a proposed specification for the Web Services Description Language (WSDL) to the World Wide Web Consortium (W3C) standards body. A remote program can use the WSDL document that a Web service posts about itself on its own Web site to understand how to use the service. The uniform agreement on WSDL, even prior to the W3C issuing an official recommendation, implies that the major players are committed to making their own Web service implementations interoperable with each other.

Effective Standards Accelerate Competition

These two events have put in place the basic standards required for building useful inter-platform Web services.

As frequently happens, agreement on standards has accelerated competition among vendors. Microsoft has attempted to race in front of the standards process, betting that if it can lead, others will be forced to follow. However, IBM has released a Web services development package as a developer preview: WebSphere Application Server, a Java-based platform, will compete with the Microsoft .NET Framework for hosting Web services. This pulls IBM even with Microsoft, whose main tools for building Web services—the .NET Framework, Visual Studio.NET, and SOAP Toolkit version 2.0—are also still in beta testing (although the SOAP Toolkit has just moved to release candidate status). With a commercial release of the .NET Framework still about six months away, IBM has plenty of time to start steering the Web services market in directions that Microsoft may not like.

Although IBM and Microsoft are fierce competitors, the two companies do not compete head-to-head with Web services. Microsoft's dominance over the PC desktop and Web portal spaces presents a clear advantage for consumer applications, with consumer-oriented Web services such as MSN and the recently announced HailStorm (see "HailStorm Fulfills Crucial Roles for .NET".) leading the way. IBM, on the other hand, has a clear advantage in the business and ISP spaces because of its dominance in the large-scale business server market, and its tools seem to be targeted at business-to-business Web services.

Bill Gates said in October at the .NET Beta 1 Reviewers Workshop that the only competitor he was worried about was IBM. The WebSphere announcements show why.

Issues Remain for Interoperability

While very real progress has been made in realizing the promise of interoperable Web services, a few vexing concerns remain:

Message security. A security model governing SOAP messages is needed. New standards, such as Canonical XML (which guarantees that a message remains unchanged as it passes through multiple computers), XML Encryption, and XML Signatures (XML-SIG) will, when released, put in place the last standards needed to create highly secure and interoperable Web services. Work is progressing in the W3C on these issues, and announcements are expected this year.

Transaction handling. Establishing a transaction protocol is especially important for e-commerce. Such a protocol would enable two-phase commits, which assure both the sender and receiver that an essential message was properly received. Financial transactions typically contain multiple parts that must be successfully processed together, such as processing multiple items in a single order as a single transaction. Microsoft and IBM are still working on different standards for transactions.

A few small-scale tests have been run involving inter-platform Web services, but Microsoft and IBM have many remaining opportunities to "break" compatibility before many sites go live. The record until now has been spotty, with both Microsoft and IBM attempting to pull ahead of the standards process. As of this writing, though, they have managed to work together on core standards, and the prospects for interoperable Web services are much improved, with Microsoft planning to demonstrate interoperability soon between its platform and IBM and Apache Web service implementations.

Resources

Information about Web services at Microsoft can be found at msdn.microsoft.com/webservices/. The WSDL specification is at msdn.microsoft.com/xml/general/wsdl.asp.

Information about OASIS is available at www.oasis-open.org/.

Information about XML, SOAP, XML-SIG, and XML Encryption standards at the W3C is at www.w3.org/.

IBM's Web services activity is described at www-106.ibm.com/developerworks/theme/, and the specific Web services technology product may be found at www7b.boulder.ibm.com/wsdd/products/wstdfactsheet.html.