Draft of 2. Introduction to Web Services

All,
This is a draft of text for Section 2 in the new outline.
Text in curly braces is instruction and not to be included.
Andrea

2. Introduction to Web Services

This section contains a "framework" or outline for understanding 
international issues in Web services.

The framework is based on the Web Services Architecture document [WSA], 
which defines a service as follows: "A service is a set of actions that 
form a coherent whole from the point of view of service providers and 
service requesters. A requester entity is a legal entity that wishes to 
make use of a provider entity's Web service. It will use a requester 
agent to exchange messages with the provider entity's provider agent. 
The provider agent has one or more services available to it, that it can 
invoke in behalf of the requester agent."

There are some important standards associated with Web services. Simple 
Object Access Protocol (SOAP) describes the protocol used for 
communication with a Web service.  It is a 2-section document that 
conforms to XML specifications.  The first part of the document is the 
envelope, essentially routing instructions for the body message that 
follows.  The second part is the body message, which contains 
information the Web service requires for processing and/or a remote 
procedure call.  SOAP documents can have attachments with header 
information in MIME format.  The SOAP document, like any XML file, may 
contain a charset tag, which describes the data contained in that 
particular document only.  An attachment can have data in a different 
charset; that charset can be specified in the MIME header Content-type. 
  For language specification, SOAP documents can contain xml:lang tags 
as specified in the XML standard [XML].  A SOAP attachment's language 
can be indicated in the MIME header Content-language.

Web Services Description Language (WSDL) [WSDL-V12] is an XML-conformant 
language used to describe the information necessary for calling and 
using a Web service.

Web services can be found by searching a Universal Description, 
Discovery, and Integration [UDDI] registry.  UDDI entries describe the 
available service and point to the Web Service Description (WSD) via a 
URI.  The Web Service Description is typically written in WSDL, and it 
documents the mechanics of the message exchange between a requester and 
a provider.

These standards work together as shown in the following scenario:

{diagram here, modified version of the old 2.1 Overview diagram}

    1.  The requester agent locates a suitable provider agent, usually 
requiring human intervention. This can be accomplished through UDDI, but 
also can be accomplished through other means. For example, the URL of 
the provider agent may simply have been found in an advertisement somewhere.
    2.  The provider agent makes available a WSD document, which is 
likely written in WSDL.
    3.  Using the information in the WSD, the requester agent can 
formulate a service request. This will be a SOAP message which is then 
sent to the provider agent to be acted upon.
    4.  The provider agent after receiving the request will invoke the 
service and get a response. The response can be the results of the 
service or an indication that a fault occurred. Note that the 
interaction between the provider agent and the service are independent 
of the Web Services framework and the design is left completely to the 
implementors. The primary requirement is that the provider agent in turn 
be able to formulate a response to return to the requester agent. This 
response must satisfy both the requirements and specifications of the 
Web Services Architecture and the description of the WSD.
    5.  If the service request was successfully executed, the provider 
agent will formulate a response message and send it to the requester agent.
    6.  If the service request was erroneous, or the service could not 
be completed for some reason, a fault message will be sent to the 
requester agent.

The internationalization issues in Web services and as illustrated in 
the framework fall into several categories which are common to all Web 
services, regardless of the message exchange pattern used for a specific 
service. In the section that follows it is assumed that the service, 
provider and requester agents, and data structures (semantics) follow 
best practices in internationalization and data structuring. Implicit in 
these descriptions is the expectation that data structures use XML 
Schema types to create locale-neutral data structures.

Some services may be implemented that do not follow these strictures for 
reasons having to do with legacy system implementation or other 
restriction. These cases are dealt with in usage scenarios later in this 
document.

{add text about MEPs and SOAP Features somewhere in this section?}

Received on Friday, 31 October 2003 19:09:11 UTC