blob: f49a95fde628898e0b4e3c3e162f3a311e44b3db [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<!--Arbortext, Inc., 1988-2005, v.4002-->
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN"
"concept.dtd">
<concept id="webservicesstandards" xml:lang="en-us">
<title>Web services standards</title>
<shortdesc>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.</shortdesc>
<prolog><metadata>
<keywords><indexterm>Web services<indexterm>standards</indexterm></indexterm>
</keywords>
</metadata></prolog>
<conbody>
<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 <xref format="html" href="http://www.uddi.org"
scope="external">www.uddi.org</xref></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.&nbsp; A WSIL document defines the locations on a Web
site where you can look for Web service descriptions.&nbsp;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.&nbsp;A separate topic in this
documentation discusses the <xref href="cwsilud.dita">Relationship between
UDDI and WSIL</xref>.&nbsp; For more information on WSIL, refer to <xref
href="http://www-106.ibm.com/developerworks/webservices/library/ws-wsilspec.html"
scope="external"> www.ibm.com/developerworks/webservices/library/ws-wsilspec.html</xref></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 <xref format="html"
href="http://www.w3.org/TR/wsdl" scope="external">www.w3.org/TR/wsdl</xref></p>
<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 1.1 (SOAP 1.2 is not supported by the
Web services tools), refer to <xref format="html" href="http://www.w3.org/TR/SOAP"
scope="external">www.w3.org/TR/SOAP</xref></p>
<p>Figure 2. Relationships between SOAP, UDDI, WSIL and WSDL.</p>
<p> <image alt="Figure 2 illustrates the relationships between SOAP, UDDI, WSIL, and WSDL."
href="../images/soapudws.gif"></image> </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
<uicontrol>Resources</uicontrol> select <uicontrol>Documentation</uicontrol>: <xref
href="http://www.ws-i.org" scope="external">http://www.ws-i.org</xref></p>
<p>Several new Web services standards are also supported by this development
environment. These include:<dl><dlentry>
<dt>JAX-RPC</dt>
<dd>JAX-RPC stands for <tm tmclass="special" tmowner="Sun Microsystems, Inc."
tmtype="tm" trademark="Java">Java</tm> API for XML-based RPC, also known as
JSR 101. It is a specification that describes <tm tmclass="special" tmowner="Sun Microsystems, Inc."
tmtype="tm" trademark="Java">Java</tm> 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 <tm tmclass="special"
tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="Java">Java</tm> to
WSDL and WSDL to <tm tmclass="special" tmowner="Sun Microsystems, Inc." tmtype="tm"
trademark="Java">Java</tm> mappings, and provides the core APIs for developing
and deploying Web services and Web service clients on the <tm tmclass="special"
tmowner="Sun Microsystems, Inc." tmtype="tm" trademark="Java">Java</tm> platform.
For more information refer to the <xref href="http://www.jcp.org/en/jsr/detail?id=101"
scope="external">official specifications</xref>.</dd>
</dlentry><dlentry>
<dt>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><xref href="http://www.jcp.org/en/jsr/detail?id=109" scope="external"
type="html">JSR-109</xref></li>
<li><xref href="http://www.jcp.org/en/jsr/detail?id=921" scope="external"
type="html">JSR-921</xref></li>
</ul></dd>
</dlentry><dlentry>
<dt>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><xref href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf"
scope="external" type="html">Web Services Security: SOAP Message Security
V1.0</xref> </li>
<li> <xref href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0.pdf"
scope="external" type="html">Web Services Security: Username Token Profile
V1.0</xref></li>
<li> <xref href="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0.pdf"
scope="external" type="html">Web Services Security: X.509 Token Profile V1.0</xref></li>
</ul></dd>
</dlentry></dl></p>
<p>Web services tooling supports the following specifications:</p>
<table>
<tgroup cols="2"><colspec colname="col1" colwidth="95*"/><colspec colname="col2"
colwidth="104*"/>
<thead>
<row>
<entry colname="col1" valign="top">Technology or specification</entry>
<entry colname="col2" valign="top">Version or level supported</entry>
</row>
</thead>
<tbody>
<row>
<entry nameend="col2" namest="col1"><b>Transports</b></entry>
</row>
<row>
<entry colname="col1">HTTP/HTTPS</entry>
<entry colname="col2">v1.0 and v1.1</entry>
</row>
<row>
<entry colname="col1">JMS</entry>
<entry colname="col2"></entry>
</row>
<row>
<entry nameend="col2" namest="col1"><b>Messaging</b></entry>
</row>
<row>
<entry colname="col1">SOAP specification</entry>
<entry colname="col2">v1.1</entry>
</row>
<row>
<entry colname="col1">SOAP Attachements</entry>
<entry colname="col2"></entry>
</row>
<row>
<entry nameend="col2" namest="col1"><b>Description</b></entry>
</row>
<row>
<entry colname="col1">UDDI</entry>
<entry colname="col2">v2.0</entry>
</row>
<row>
<entry colname="col1">WSDL</entry>
<entry colname="col2">v1.1</entry>
</row>
<row>
<entry colname="col1">WSIL</entry>
<entry colname="col2">v1.0</entry>
</row>
<row>
<entry nameend="col2" namest="col1"><b>Security</b></entry>
</row>
<row>
<entry colname="col1">WS-Security</entry>
<entry colname="col2">OASIS Standard 1.0</entry>
</row>
<row>
<entry nameend="col2" namest="col1"><b>Ineroperability</b></entry>
</row>
<row>
<entry colname="col1">WS-I Basic Profile</entry>
<entry colname="col2">1.1.2</entry>
</row>
<row>
<entry colname="col1">WS-I Simple SOAP Binding Profile</entry>
<entry colname="col2">1.0.3</entry>
</row>
<row>
<entry colname="col1">WS-I Attachments Profile</entry>
<entry colname="col2">1.0</entry>
</row>
<row>
<entry colname="col1"><b>Other Standards</b></entry>
<entry colname="col2"></entry>
</row>
<row>
<entry colname="col1">JAX-RPC</entry>
<entry colname="col2">v1.0 for J2EE 1.3, v1.1 for J2EE 1.4</entry>
</row>
<row>
<entry colname="col1">JSR 109</entry>
<entry colname="col2">J2EE 1.3</entry>
</row>
<row>
<entry colname="col1">JSR 921</entry>
<entry colname="col2">J2EE 1.4</entry>
</row>
</tbody>
</tgroup>
</table>
</conbody>
<related-links>
<linklist><title>Related Concepts</title>
<link href="cws.dita" scope="local"><linktext>Web services overview</linktext>
</link>
<link href="cwsinwsa.dita" scope="local"><linktext>Tools for Web services
development</linktext></link>
<link href="cwsiover.dita" scope="local"><linktext>Web services interoperability
(WS-I)</linktext></link>
</linklist>
<linklist><title>Related Tasks</title>
<link href="../tasks/toverws.dita" scope="local"><linktext> Developing Web
services</linktext></link>
</linklist>
</related-links>
</concept>