11.2 Web Services Standards
The work of establishing basic standards for Web
Services isn't complete. Specifications exist for
discovery, description, transport, and encoding. Some of these
specifications have been submitted to the W3C to become standards
(recommendations).
11.2.1 Extensible Markup Language
Both
encoding
schemes, XML-RPC and
SOAP, are XML 1.0 applications.
XML-RPC is a fairly simple XML application, so it uses only basic XML
syntax. SOAP is a more complex application that makes extensive use
of namespaces and XML Schemas.
11.2.2 XML-RPC
XML-RPC
is a Web Service specification that uses a small XML vocabulary to
encode its request and result messages and HTTP as the transport
protocol. XML-RPC is a lightweight Web Service implementation that
has limited datatype support. Regardless, it is effective and has
implementations for most programming languages and operating systems.Oracle Application Server doesn't provide direct
support for XML-RPC; however, that doesn't mean you
can't use it with Oracle Application Server. Because
XML-RPC has implementations in C, C++, Perl, and Java, you can deploy
any of these implementations on Oracle Application Server.You can find the specifications and a list of implementations for
XML-RPC at http://www.xmlrpc.com.
11.2.3 SOAP
SOAP
1.1, originally called Simple Object Access Protocol when IBM and
Microsoft, among others, submitted it to the W3C in April of 2000, is
now an acronym without a name. SOAP 1.2 was released as an official
recommendation in June of 2003. The working group decided that the
name did not correctly describe the standard, so they dropped the
name but kept the acronym.Oracle Application Server currently supports SOAP 1.1 with two
implementations:
OracleAS SOAP
An enhanced version of the Apache organization's SOAP
OC4J Web Services
Oracle's own highly performant implementation, which
supports JavaBeans, EJBs, database stored procedures, and the JMS.
Of course, as with XML-RPC, you can also deploy on Oracle Application
Server any third-party SOAP implementation, or
agent
as the W3C calls it, that is written in C, C++, Perl, or Java.You can find specifications for SOAP at http://www.w3.org/2002/ws/.
11.2.4 Web Services Description Language
Web Services Description
Language, an XML application, describes a Web Service specification
in a computer-readable format. A WSDL document describes:The service methods availableThe datatypes used for requests and results for each service methodThe transport protocol to be usedThe location of a Web Service
The WSDL 1.1 specification submitted by IBM, Microsoft, and Oracle,
among many others, to the W3C in March 2001, has been in
working draft status for a Version 2.0 since November 2003.At the time this book is being written, Oracle Application Server
tools currently support WSDL 1.1. Oracle Application Server Web
Services deployments expose a service's WSDL
document at the service's endpoint.You can find the specification for WSDL at http://www.w3.org/2002/ws/.
11.2.5 Universal Description, Discovery, and Integration
Universal
Description, Discovery, and Integration is a specification for a
network-accessible directory of available Web Services. UDDI contains
information about several entities in its XML Schema:businessEntity
Contains information about organizations
businessService
Contains information about the Web Services these organizations
provide
bindingTemplate
Contains information about the location of a Web Service
tModel
Contains information about where to find the Web
Service's technical specifications
This information is usually found in the form of a WSDL document. The
additional entity, publisherAssertion, defines
relations between two business entities. The relationship between
these entities is outlined in Figure 11-3. As of
this writing, the UDDI specification has not been submitted to the
W3C.
Figure 11-3. A UDDI data model

Application Server provides a UDDI directory that can be used to
publish Web Services on your corporate intranet or be synchronized
with UDDI directories on the Internet. The Oracle Application Server
UDDI agent is managed through Application Server Control.You can find the specification for UDDI at http://www.uddi.org/specificationl.