Information Technology Reference
In-Depth Information
tocols, although in the Web context SOAP is usually used over HTTP. There
are of course other frequently used and well-defined protocols, for example
email 4 . When a SOAP message is sent over HTTP, basically just an HTTP
header is added to the SOAP envelope. In this way, SOAP can leverage the
infrastructure that is already in place for the underlying protocol. Thus, the
problems with firewalls and Internet routers that occur when using traditional
Remote Procedure Calls are eliminated.
POST: /stockquote.asmx
SOAPAction: ”http://www.webservicex.net/GetQuote”
Content Type: text/xml; charset=UTF 8
Content Length: 3000
[...]
Listing 4.2. An example SOAP HTTP header
Listing 4.2 shows a typical header that is used when a SOAP message is
sent over HTTP. Only the header is dependent on the actual transport proto-
col used; the SOAP messages transferred do not need to change for different
protocols. The header contains standard elements of an HTTP header, such
as POST, Content-Type, and Content-Length. Only the SOAPAction field is
an addition (it is mandatory in SOAP 1.1).
In summary, SOAP is an XML format for message exchange that can
be bound to different underlying transport protocols. It allows one to wrap
XML messages in an envelope, possibly containing additional routing or fault-
handling information. SOAP has become a popular way to transport XML
messages in the current Web service stack.
4.3.2 WSDL
The Web Service Description Language is an XML format to describe inter-
faces of software components. WSDL essentially allows one to describe a set
of operations and their input and output messages. The initial WSDL 1.1
standard was published by the W3C in March 2001 as a Note. The succes-
sor, version 2.0, is (at the time of writing) a candidate recommendation. The
scope, of describing interfaces remains in version 2.0, although some essential
details have changed. 5 The changes include, for example, the removal of the
message construct; the support for operator overloading has been discontin-
ued; and some constructs have been renamed and their usage further clarified.
Figure 4.2 illustrates the structure of both versions of the standard and how
they relate.
Currently there is not yet mature tool support for the WSDL 2.0 spec-
ification, and thus we limit ourselves for the more detailed descriptions to
WSDL 1.1. It is an extensible standard, allowing different typing mechanisms
4 http://www.w3.org/TR/2002/NOTE-soap12-email-20020626 .
5 Initially it was planed to use the version number 1.2, but after the number of
changes was recognized it was decided to use version number 2.0.
Search WWH ::




Custom Search