From the highest level, one can simply define an XML Web service as a unit of code that can be invoked via HTTP requests. Unlike a traditional Web application however, XML Web services are not (necessarily) used to emit HTML back to a browser for display purposes. Rather, an XML Web service exposes the same sort of functionality found in a standard .NET code library, in that it defines computational objects that execute a unit of work for the consumer (such as crunch some numbers, read information from a data source, etc.), return a result (if necessary), and wait for the next request. |
XML Web services provide a way for unrelated platforms, operating systems, and programming languages to exchange information in harmony. One important feature of the XML Web services-based computing model is that a client need not know the language in which XML Web services are implemented. The client just needs to know the location of an XML Web service and the methods that the client can call on the service. The only requirement on the client side is that the client should be able to parse a well-formed XML document and then map the underlying XML elements into platform and/or language specific types. In a nutshell, XML Web services offer a way to let the Web provide information that can be pieced together to build a platform and language-agnostic distributed system. |
XML Web Ser vices Infrastructure |
One of the important features of the XML Web services-based computing model is that both clients and XML Web services are unaware of the implementation details of each other. The XML Web services infrastructure provides several components that enable client applications to locate and consume XML Web services. These components include the following. |
XML Web Services Directories |
These directories provide a central place to store published information about XML Web services. These directories might also be XML Web services that allow you to search for information about other XML Web services programmatically. The Universal Description, Discovery, and Integration (UDDI) specifications define the guidelines for publishing information about XML Web services. The XML schemas associated with UDDI define four types of information that you must publish to make your XML Web service accessible. This information includes business information, service information, binding information, and service specifications. Microsoft provides its own implementation of UDDI specification, which is located at http://uddi.microsoft.com. |
XML Web Services Discovery |
Using this process, clients locate the documents that describe an XML Web service using WSDL. The discovery process enables clients to know about the presence of an XML Web service and about the location of a particular XML Web service. |
XML Web Services Description |
This component provides information that enables you to know which operations to perform on an XML Web service. The XML Web service description is an XML document that specifies the format of messages that an XML Web service can understand. For example, the description document specifies the SOAP message schemas that you use when invoking methods on an XML Web service. |