So what is a web service platform? The basic platform is the XML plus HTTP. HTTP is the
ubiquitous protocol, which is running practically everywhere on a Internet.
A D V E R T I S E M E N T
The XML
provides the metalanguage in which you can write the specialized languages to express the
complex interactions between the clients and the services or between the components of
a composite service. Behind facade of the web server, an XML message gets converted to
the middleware request and results converted back to the XML.
A Web needs to be augmented with few other platform services, which can maintain the
ubiquity and the simplicity of Web, to constitute more functional platform. A
full-function web services platform can be thought of as the XML plus HTTP plus
SOAP plus WSDL plus the UDDI. At the higher levels, one may also add the technologies
such as the XAML, XLANG, XKMS, and the XFS -- services which are not universally been
accepted as the mandatory.
The Platform Elements
Below is the brief description of platform elements. It should be noted that while
the vendors try to present a emergent web services platform as coherent, it is really
the series of an in-development technologies. Often at higher levels there are, and
may also remain, multiple approaches to same problem.
SOAP (a remote invocation)
UDDI (a trader, directory service)
WSDL (the expression of service characteristics)
XLANG/XAML (transactional support for complex web transactions involving multiple web
services)
XKMS (XML Key Management Specification) - ongoing work by Microsoft and Verisign to
support authentication and registration
The SOAP
SOAP is the protocol specification that defines the uniform way of passing the XML-encoded
data. It also defines the way to perform the remote procedure calls (RPCs) using the
HTTP as a underlying communication protocol.
SOAP arises from a realization that no matter how nifty a current middleware offerings
are, they need the WAN wrapper. Architecturally, sending the messages as a plain XML has
advantages in terms of ensuring the interoperability (and debugging, as I can do well attest).
A middleware players seem willing to put up with costs of parsing and serializing the XML
in order to scale their approach to wider the networks.
The UDDI (Universal Description, Discovery and the Integration Service)
The UDDI do provides the mechanism for clients to dynamically find the other web services.
Using the UDDI interface, a businesses can dynamically connect to the services provided
by the external business partners. The UDDI registry is similar to the CORBA trader, or
it can be thought of as the DNS service for the business applications. The UDDI registry
has two kinds of the clients: businesses which want to publish the service (and the usage
interfaces), and the clients who want to obtain the services of certain kind and bind
programmatically to them. The table below is the overview of what an UDDI provides. The
UDDI is layered over the SOAP and do assumes that the requests and the responses are
UDDI objects sent around as the SOAP messages. A sample query is been included below.
Query: The following query, when placed inside the body of the SOAP envelope,
returns details on Microsoft.
<find_business generic="1.0" xmlns="urn:uddi-org:api">
</find_business>
Result: detailed listing of <businessInfo> elements currently registered for
Microsoft, which includes information about the UDDI service itself.
The WSDL (Web Services Definition Language)
WSDL defines the services as the collection of the network endpoints or the ports. In
a WSDL the abstract definition of the endpoints and the messages is separated from
their concrete network deployment or the data format bindings. This allows reuse of the
abstract definitions of the messages, which are the abstract descriptions of a data being
exchanged, and the port types, which are the abstract collections of the operations. The
concrete protocol and the data format specifications for the particular port type
constitute the reusable binding. The port is defined by associating the network address
with the reusable binding; the collection of ports define the service. And, thus, the
WSDL document do use the following elements in a definition of the network services:
Types -- the container for data type definitions using some type system (such as XSD).
Message -- the abstract, typed definition of the data being communicated.
Operation -- the abstract description of the action supported by a service.
Port Type -- the abstract set of the operations supported by the one or more endpoints.
Binding -- the concrete protocol and the data format specification for particular
port type.
Port -- the single endpoint defined as the combination of binding and the network
address.
Service -- the collection of related endpoints.
So, in plain English, WSDL is the template for how the services should be described and
bound by the clients.
The XLANG
A traditional notion of the database transaction is atomic, that is a, all-or-none
action; either an entire action happens or it does not. Providing this kind of guarantee
in the distributed infrastructure involves the expensive process called a two-phase commit.
An alternative optimistic model has been proposed in a database research (originally
called as sagas and proposed by the Hector Garcia-Molina), where the actions have the
explicit compensatory actions which negate effect of the action. In a real world of
the actions, the existence of the compensatory actions is quite common. For an instance
if I debit the credit card $52, a compensatory action is to credit a credit card $52. If
I sent out the e-mail saying you will get the product you hav ordered in seven days",
compensatory action is to send the e-mail saying, "oops, it is going to take longer".
XLang is the notation for expressing an compensatory actions for any request that do
need to be undone. An web services infrastructure can leverage the XLang specifications
to perform a complex undo operations.
The XKMS (The XML Key Management Specification)
An XKMS is the effort by Microsoft and the Verisign to integrate the PKI and the digital
certificates (which are used for securing the Internet transactions) with an XML
applications. The key idea is to delegate a signature processing to the trust server on
Web, so that the thin or a mobile clients do not have to carry around smarts to do all
this themselves. An XKMS relies on a XML Signature specification which is already being
worked on by W3C and on the anticipated work at the W3C on the XML encryption
specification.
No Web Services Articles could be found as of now.
Share And Enjoy:These icons link to social bookmarking sites where readers can share and discover new web pages.
Keywords: web services xml, web services technology, web services example, web services ibm,
web services net, web services framework, web services implementation,
web services interface, web services technologies, web services interoperability,
web services wsdl, web services api, web services sun, web services oracle,
oracle platform, web services jboss, web services c#, web development platform,
web services proxy, web services application, web services server, web services sample,
web services business, web services client, web services call, web services development,
web services ejb, web services code, application platform, server platform, platform tutorial