<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<meta name="copyright" content="(C) Copyright 2005" />
<meta name="DC.rights.owner" content="(C) Copyright 2005" />
<meta content="public" name="security" />
<meta content="index,follow" name="Robots" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta content="concept" name="DC.Type" />
<meta name="DC.Title" content="Web services standards" />
<meta name="abstract" content="One of the key attributes of Internet standards is that they focus on protocols and not on implementations. The Internet is composed of heterogeneous technologies that successfully interoperate through shared protocols. This prevents individual vendors from imposing a standard on the Internet. Open Source software development plays a crucial role in preserving the interoperability of vendor implementations of standards." />
<meta name="description" content="One of the key attributes of Internet standards is that they focus on protocols and not on implementations. The Internet is composed of heterogeneous technologies that successfully interoperate through shared protocols. This prevents individual vendors from imposing a standard on the Internet. Open Source software development plays a crucial role in preserving the interoperability of vendor implementations of standards." />
<meta scheme="URI" name="DC.Relation" content="../concepts/cws.html" />
<meta scheme="URI" name="DC.Relation" content="../concepts/cwsdl.html" />
<meta scheme="URI" name="DC.Relation" content="../concepts/csoap.html" />
<meta scheme="URI" name="DC.Relation" content="../../org.eclipse.jst.ws.consumption.ui.doc.user/concepts/cuddi.html" />
<meta scheme="URI" name="DC.Relation" content="../concepts/cwsil.html" />
<meta scheme="URI" name="DC.Relation" content="../concepts/cjaxrpc.html" />
<meta scheme="URI" name="DC.Relation" content="../concepts/cjsr109.html" />
<meta scheme="URI" name="DC.Relation" content="cws.html" />
<meta scheme="URI" name="DC.Relation" content="cwsinwsa.html" />
<meta scheme="URI" name="DC.Relation" content="cwsiover.html" />
<meta scheme="URI" name="DC.Relation" content="../tasks/toverws.html" />
<meta content="XHTML" name="DC.Format" />
<meta content="webservicesstandards" name="DC.Identifier" />
<meta content="en-us" name="DC.Language" />
<link href="../../org.eclipse.wst.doc.user/commonltr.css" type="text/css" rel="stylesheet" />
<title>Web services standards</title>
</head>
<body id="webservicesstandards"><a name="webservicesstandards"><!-- --></a>


<h1 class="topictitle1">Web services standards</h1>


<div><p>One of the key attributes of Internet standards is that they focus
on protocols and not on implementations. The Internet is composed of heterogeneous
technologies that successfully interoperate through shared protocols. This
prevents individual vendors from imposing a standard on the Internet. Open
Source software development plays a crucial role in preserving the interoperability
of vendor implementations of standards.</p>

<p>The following standards play key roles in Web services: Universal Description,
Discovery and Integration (UDDI), Web Services Description Language (WSDL),
Web Services Inspection Language (WSIL), SOAP, and Web Services Interoperability
(WS-I). The relationship between these standards is described in Figure 2.</p>

<p>The UDDI specification defines open, platform-independent standards that
enable businesses to share information in a global business registry, discover
services on the registry, and define how they interact over the Internet.
For more information on UDDI, refer to  <a href="http://www.uddi.org" target="_blank">www.uddi.org</a></p>

<p>WSIL is an XML-based open specification that defines a distributed service
discovery method that supplies references to service descriptions at the service
provider's point-of-offering, by specifying how to inspect a Web site for
available Web services.  A WSIL document defines the locations on a Web
site where you can look for Web service descriptions. Since WSIL focuses
on distributed service discovery, the WSIL specification complements UDDI
by facilitating the discovery of services that are available on Web sites
that may not be listed yet in a UDDI registry. A separate topic in this
documentation discusses the  <a href="cwsilud.html">Relationship between UDDI and WSIL</a>.  For more information on WSIL, refer to  <a href="http://www-106.ibm.com/developerworks/webservices/library/ws-wsilspec.html" target="_blank">www.ibm.com/developerworks/webservices/library/ws-wsilspec.html</a></p>

<p>WSDL is an XML-based open specification that describes the interfaces to
and instances of Web services on the network. It is extensible, so endpoints
can be described regardless of the message formats or network protocols that
are used to communicate. Businesses can make the WSDL documents for their
Web services available though UDDI, WSIL, or by broadcasting the URLs to their
WSDL via email or Web sites. WSDL is described as a separate topic in this
documentation. For more information on WSDL, refer to  <a href="http://www.w3.org/TR/wsdl" target="_blank">www.w3.org/TR/wsdl</a></p>

<div class="p">SOAP is an XML-based standard for messaging over HTTP and other Internet
protocols. It is a lightweight protocol for the exchange of information in
a decentralized, distributed environment. It is based on XML and consists
of three parts:<ul>
<li>An envelope that defines a framework for describing what is in a message
and how to process it.</li>

<li>A set of encoding rules for expressing instances of application-defined
data types.</li>

<li>A convention for representing remote procedure calls and responses.</li>

</ul>
SOAP enables the binding and usage of discovered Web services by defining
a message path for routing messages. SOAP may be used to query UDDI for Web
services. For more information on SOAP, refer to  <a href="http://www.w3.org/TR/SOAP" target="_blank">www.w3.org/TR/SOAP</a></div>

<p>Figure 2. Relationships between SOAP, UDDI, WSIL and WSDL.</p>

<p> <img src="../images/soapudws.gif" alt="Figure 2 illustrates the relationships between SOAP, UDDI, WSIL, and WSDL." /> </p>

<p>A service provider hosts a Web service and makes it accessible using protocols
such as SOAP/HTTP or SOAP/JMS. The Web service is described by a WSDL document
that is stored on the provider's server or in a special repository. The WSDL
document may be referenced by the UDDI business registry and WSIL documents.
These contain pointers to the Web service's WSDL files.</p>

<p>The WS-I Simple SOAP Binding Profile and WS-I Attachments Profile are outlines
of requirements to which WSDL and Web service protocol (SOAP/HTTP) traffic
must comply in order to claim WS-I conformance. The Web services WS-I validation
tools currently support WS-I Simple SOAP Binding Profile 1.0 and the Attachment
Profile 1.0. To view the specifications, refer to the WS-I Web site, and under
 <span class="uicontrol">Resources</span> select  <span class="uicontrol">Documentation</span>: <a href="http://www.ws-i.org" target="_blank">http://www.ws-i.org</a></p>

<div class="p">Several new Web services standards are also supported by Rational<sup>®</sup> Developer
products. These include:<dl>
<dt class="dlterm">JAX-RPC</dt>

<dd>JAX-RPC stands for Java™ API for XML-based RPC, also known as
JSR 101. It is a specification that describes Java Application Programming Interfaces
(APIs) and conventions for building Web services and Web service clients that
use remote procedure calls (RPC) and XML. It standardizes the Java to
WSDL and WSDL to Java mappings, and provides the core APIs for developing
and deploying Web services and Web service clients on the Java platform.
For more information refer to the <a href="http://www.jcp.org/en/jsr/detail?id=101" target="_blank">official specifications</a>.</dd>


<dt class="dlterm">JSR-109 and JSR-921</dt>

<dd>JSR-109 and JSR-921 (Implementing Enterprise Web Services) define the
programming model and run-time architecture to deploy and look up Web services
in the J2EE environment; more specifically, in the Web, EJB, and Client Application
containers. One of its main goals is to ensure vendors' implementations interoperate.
For more information, refer to the official specifications: <ul>
<li><a href="http://www.jcp.org/en/jsr/detail?id=109" target="_blank">JSR-109</a></li>

<li><a href="http://www.jcp.org/en/jsr/detail?id=921" target="_blank">JSR-921</a></li>

</ul>
</dd>


<dt class="dlterm">WS-S</dt>

<dd>These tools support the OASIS Web Services Security 1.0 standard. For
more information on the various components of this standard, refer to:<ul>
<li><a href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf" target="_blank">Web Services Security: SOAP Message Security V1.0</a> </li>

<li> <a href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0.pdf" target="_blank">Web Services Security: Username Token Profile V1.0</a></li>

<li> <a href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0.pdf" target="_blank">Web Services Security: X.509 Token Profile V1.0</a></li>

</ul>
</dd>

</dl>
</div>

<p>Web services tooling supports the following specifications:</p>


<div class="tablenoborder"><table summary="" cellspacing="0" cellpadding="4" frame="border" border="1" rules="all">
<thead align="left">
<tr>
<th valign="top" width="47.73869346733669%" id="N101A4">Technology or specification</th>

<th valign="top" width="52.26130653266332%" id="N101AC">Version or level supported</th>

</tr>

</thead>

<tbody>
<tr>
<td colspan="2" valign="top" headers="N101A4 N101AC "><strong>Transports</strong></td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">HTTP/HTTPS</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">v1.0 and v1.1</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">JMS</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">&nbsp;</td>

</tr>

<tr>
<td colspan="2" valign="top" headers="N101A4 N101AC "><strong>Messaging</strong></td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">SOAP specification</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">v1.1</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">SOAP Attachements</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">&nbsp;</td>

</tr>

<tr>
<td colspan="2" valign="top" headers="N101A4 N101AC "><strong>Description</strong></td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">UDDI</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">v2.0</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">WSDL</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">v1.1</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">WSIL</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">v1.0</td>

</tr>

<tr>
<td colspan="2" valign="top" headers="N101A4 N101AC "><strong>Security</strong></td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">WS-Security</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">OASIS Standard 1.0</td>

</tr>

<tr>
<td colspan="2" valign="top" headers="N101A4 N101AC "><strong>Ineroperability</strong></td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">WS-I Basic Profile</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">1.1.2</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">WS-I Simple SOAP Binding Profile</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">1.0.3</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">WS-I Attachments Profile</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">1.0</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 "><strong>Other Standards</strong></td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">&nbsp;</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">JAX-RPC</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">v1.0 for J2EE 1.3, v1.1 for J2EE 1.4</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">JSR 109</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">J2EE 1.3</td>

</tr>

<tr>
<td valign="top" width="47.73869346733669%" headers="N101A4 ">JSR 921</td>

<td valign="top" width="52.26130653266332%" headers="N101AC ">J2EE 1.4</td>

</tr>

</tbody>

</table>
</div>

</div>

<div>
<ul class="ullinks">
<li class="ulchildlink"><strong><a href="../concepts/cwsdl.html">Web Services Description Language (WSDL)</a></strong><br />
Web Services Description Language (WSDL) is a standard specification for describing networked, XML-based services. It provides a simple way for service providers to describe the basic format of requests to their systems regardless of the underlying run-time implementation.</li>
<li class="ulchildlink"><strong><a href="../concepts/csoap.html">SOAP</a></strong><br />
SOAP (formerly known as Simple Object Access Protocol) is a lightweight protocol for the exchange of information in a decentralized, distributed environment. A SOAP message is a transmission of information from a sender to a receiver. SOAP messages can be combined to perform request/response patterns.</li>
<li class="ulchildlink"><strong><a href="../../org.eclipse.jst.ws.consumption.ui.doc.user/concepts/cuddi.html">Universal Description, Discovery, and Integration (UDDI)</a></strong><br />
</li>
<li class="ulchildlink"><strong><a href="../concepts/cwsil.html">Web Services Inspection Language (WSIL)</a></strong><br />
Web Services Inspection Language (WSIL) is a service discovery mechanism that is an alternative to UDDI as well as complementary to UDDI. When you discover Web services with UDDI, you go to a centralized registry.  WSIL is an alternative approach to Web service discovery.  WSIL allows you to go directly to the service provider and ask for the services it provides.</li>
<li class="ulchildlink"><strong><a href="../concepts/cjaxrpc.html">JAX-RPC</a></strong><br />
JAX-RPC stands for Java API for XML-based RPC, also known as JSR 101. It is a specification that describes Java Application Programming Interfaces (APIs) and conventions for building Web services and Web service clients that use remote procedure calls (RPC) and XML. It standardizes the Java to WSDL and WSDL to Java mappings, and provides the core APIs for developing Web services and Web service clients on the Java platform. Often used in a distributed client/server model, an RPC mechanism enables clients to execute procedures on other systems.</li>
<li class="ulchildlink"><strong><a href="../concepts/cjsr109.html">JSR 109 and JSR 921- Implementing Enterprise Web services</a></strong><br />
JSR 109 and JSR 921 (Implementing Enterprise Web Services) define the programming model and run-time architecture to deploy and look up Web services in the J2EE environment; more specifically, in the Web, EJB, and Client Application containers. One of its main goals is to ensure vendors' implementations interoperate.</li>
</ul>

<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="../concepts/cws.html" title="A Web service is a set of related application functions that can be programmatically invoked over the Internet. Businesses can dynamically mix and match Web services to perform complex transactions with minimal programming. Web services allow buyers and sellers all over the world to discover each other, connect dynamically, and execute transactions in real time with minimal human interaction.">Web services overview</a></div>
</div>

<div class="linklist"><strong>Related Concepts</strong><br />

<div><a href="cws.html" title="A Web service is a set of related application functions that can be programmatically invoked over the Internet. Businesses can dynamically mix and match Web services to perform complex transactions with minimal programming. Web services allow buyers and sellers all over the world to discover each other, connect dynamically, and execute transactions in real time with minimal human interaction.">Web services overview</a></div>
<div><a href="cwsinwsa.html" title="">Tools for Web services
development</a></div>
<div><a href="cwsiover.html" title="WS-I is an organization designed to promote Web service interoperability across platforms, operating systems, and programming languages.">Web services interoperability
(WS-I)</a></div></div>

<div class="linklist"><strong>Related Tasks</strong><br />

<div><a href="../tasks/toverws.html" title="Use Web services tools to discover, create, and publish Web services that are created from Java beans, enterprise beans, and WSDL files. You can create of Web services using a top-down approach (which starts with a WSDL file) or a bottom-up approach (which starts with a Java bean or EJB)."> Developing Web
services</a></div></div>
</div>

</body>
</html>