Specific Web Services Technologies
Probably the most important technology being used to create Web services applications is XML. Previous sections have greatly simplified the role of XML as being a means to package and describe data, content, and format. For most business managers this definition is more than sufficient.
But some business managers may wish to understand how Web services technologies really work from a technical perspective. This section provides a little more depth in that respect. The following few sections “drill-down” in greater detail on Web services technologies and examine how XML, UDDI, WSDL, and SOAP really work. These sections also examine some of the other standards that are important for building Web services.
XML: A Lot More Than Just Content/Format
For those familiar with XML specifications, there is a whole lot more involved in using XML standards to share data than I've indicated so far in this book. There are XML schema (presentation forms) that represent how various vertical industries would like to present data (such as invoices or other business document) to each other, there are specialized vocabularies that may need to be used, and there is core processing that needs to take place to interpret XML data.
How does XML work? XML is a recommendation about how to structure data—additional work goes into actually formatting that data for use across particular industries or between specific business partners. XML can tell a developer how to pass data—but schema need to be developed to present and share that data in a useful form between cooperating programs. (And at last count, there were about 900 schema that had been developed).
Here are a few examples of organizations that are helping to devise XML schema for their members in vertical industries:
RosettaNet. RosettaNet is a consortium of supply-chain trading partners whose goal is to define the schema necessary to accomplish business trading partner collaborative activities. For instance, a maker of shoes may wish to use XML to share data about shoes with business partners. An XML schema could be developed that would enable that shoe maker to present data in such a way that it can automatically be dropped into a business partner's electronic product catalog with no human intervention necessary. Using a common schema saves time, helps suppliers match inventory to their distribution channels, and eliminates error-prone human intervention.
Open Buying on the Internet (OBI). OBI is a consortium of companies dedicated to developing and deploying standards for Internet-based procurement. Part of OBIs charter is to develop an open vendor, platform neutral purchasing architecture that fosters interoperability among suppliers. To help do this, OBI has a special XML track in place to help define procurement procedures using XML language.
Organization for the Advancement of Structured Information Standards (OASIS). OASIS is an international consortium focused on fostering the adoption of product-independent formats. XML is one such product-independent format. OASIS runs one of the industry's most valuable portals of information on XML (XML.Org) where visitors can obtain information on XML specifications such as vocabularies, schemas, and namespaces. Further, OASIS is helping to drive the Electronic Business XML (ebXML) initiative (a particular set of XML schema designed to create common forms for conducting electronic business).
All of these organizations (and several other independents as well as standards organizations) are helping to create XML-based forms that facilitate information transfer for their respective members.
XML: Even More Technical Detail
For those who still desire more information about how XML works with UDDI, WSDL, and SOAP, consider the following block diagram (courtesy of Bill Smith, director of Sun Microsystems' XML Technology Center).
Bill Smith's Commentary on Figure 3-1
Figure 3-1. XML Is Far More Complex Than Just Content/Format.
“The XML stack,” as Smith put it, is comprised of six layers. The base layer, the Web framework, is comprised of basic Internet protocols such as TCP/IP, HTTP, and DNS. On top of that is the next horizontal layer, called XML core processing, which would be XML itself, including XSLT and schemas. The third layer is basic XML functions. The fourth layer, horizontal XML vocabularies, includes things like ebXML and Scalable Vector Graphics. This layer meets a horizontal dotted line. Above the dotted line live the horizontal Web services functions such as SOAP, UDDI, WSDL. The top layer is comprised of many smaller vertical language modules. Vertical industries such as OTA, RosettaNet, and eDub will define this layer (i.e., how to use the technology for business transactions).