|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer|
XML Web Services Infrastructure
XML Web services must be agnostic regarding the choice of operating system, object model, and programming language to succeed in the dissimilarity of the Web. Also, for XML Web services to benefit from the same widespread adoption as other Web-based technologies, they must be:
Loosely Coupled: Two systems are considered loosely coupled if the only mandate imposed on both systems is to understand the aforementioned self-describing, text-based messages. Tightly coupled systems, on the other hand, impose a significant amount of customized overhead to enable communication and require a greater understanding between the systems.
Ubiquitous Communication: It is unlikely that anyone builds an operating system now or in the near future that does not incorporate the ability to connect to the Internet, therefore providing a ubiquitous communication channel. As such, the ability to connect almost any system or device to the Internet ensures such systems and devices are universally available to any other system or device connected to the Internet.
Universal Data Format: By adopting existing, open standards over proprietary, closed-loop communication methods, any system that supports the same open standards is capable of understanding XML Web services. Utilizing self-describing, text-based messages that XML Web services and their clients can share without knowing what constitutes each underlying system enables communication between autonomous and different systems. XML Web services achieve this capability using XML.
XML Web services employ an infrastructure that provides the following: a discovery mechanism to locate XML Web services, a service description for defining how to use those services, and standard wire formats with which to communicate. The following illustration shows an example of this infrastructure.
XML Web services infrastructure
XML Web services directories provide a central location to locate XML Web services provided by other organizations. XML Web services directories such as a UDDI registry fulfill this role. XML Web service clients might or might not reference an XML Web service's directory.
XML Web service discovery is the process of locating, or discovering, one or more related documents that describe a particular XML Web service using the Web Services Description Language (WSDL). The DISCO specification defines an algorithm for locating service descriptions. If XML Web service clients know the location of the service description, they can bypass the discovery process.
To understand how to interact with a particular XML Web service, it is necessary to provide a service description that defines what interactions the XML Web service supports. XML Web service clients must know how to interact with an XML Web service before they can use it.
To enable universal communication, XML Web services communicate using open wire formats, which are protocols understandable by any system capable of supporting the most common Web standards. SOAP is the key protocol for XML Web service communication.