You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2158 lines
86 KiB
2158 lines
86 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html lang="en-US" xmlns="http://www.w3.org/1999/xhtml" xml:lang=
|
|
"en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content=
|
|
"text/html; charset=utf-8" />
|
|
<title>Web Services Addressing 1.0 - Metadata</title>
|
|
|
|
<style type="text/css" xml:space="preserve">
|
|
/*<![CDATA[*/
|
|
code { font-family: monospace; }
|
|
|
|
div.constraint,
|
|
div.issue,
|
|
div.note,
|
|
div.notice { margin-left: 2em; }
|
|
|
|
ol.enumar { list-style-type: decimal; }
|
|
ol.enumla { list-style-type: lower-alpha; }
|
|
ol.enumlr { list-style-type: lower-roman; }
|
|
ol.enumua { list-style-type: upper-alpha; }
|
|
ol.enumur { list-style-type: upper-roman; }
|
|
|
|
dt.label { display: run-in; }
|
|
|
|
li, p { margin-top: 0.3em;
|
|
margin-bottom: 0.3em; }
|
|
|
|
.diff-chg { background-color: yellow; }
|
|
.diff-del { background-color: red; text-decoration: line-through;}
|
|
.diff-add { background-color: lime; }
|
|
|
|
table { empty-cells: show; }
|
|
|
|
table caption {
|
|
font-weight: normal;
|
|
font-style: italic;
|
|
text-align: left;
|
|
margin-bottom: .5em;
|
|
}
|
|
|
|
div.issue {
|
|
color: red;
|
|
}
|
|
.rfc2119 {
|
|
font-variant: small-caps;
|
|
}
|
|
|
|
div.exampleInner pre { margin-left: 1em;
|
|
margin-top: 0em; margin-bottom: 0em}
|
|
div.exampleOuter {border: 4px double gray;
|
|
margin: 0em; padding: 0em}
|
|
div.exampleInner { background-color: #d5dee3;
|
|
border-top-width: 4px;
|
|
border-top-style: double;
|
|
border-top-color: #d3d3d3;
|
|
border-bottom-width: 4px;
|
|
border-bottom-style: double;
|
|
border-bottom-color: #d3d3d3;
|
|
padding: 4px; margin: 0em }
|
|
div.exampleWrapper { margin: 4px }
|
|
div.exampleHeader { font-weight: bold;
|
|
margin: 4px}
|
|
/*]]>*/
|
|
</style>
|
|
<link rel="stylesheet" type="text/css" href=
|
|
"http://www.w3.org/StyleSheets/TR/W3C-REC.css" />
|
|
</head>
|
|
<body>
|
|
<div class="head">
|
|
<p><a href="http://www.w3.org/"><img src=
|
|
"http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width=
|
|
"72" /></a></p>
|
|
<h1><a name="title" id="title"></a>Web Services Addressing 1.0 -
|
|
Metadata</h1>
|
|
<h2><a name="w3c-doctype" id="w3c-doctype"></a>W3C Recommendation 4
|
|
September 2007</h2>
|
|
<dl>
|
|
<dt>This version:</dt>
|
|
<dd><a href=
|
|
"http://www.w3.org/TR/2007/REC-ws-addr-metadata-20070904">http://www.w3.org/TR/2007/REC-ws-addr-metadata-20070904</a></dd>
|
|
<dt>Latest version:</dt>
|
|
<dd><a href=
|
|
"http://www.w3.org/TR/ws-addr-metadata">http://www.w3.org/TR/ws-addr-metadata</a></dd>
|
|
<dt>Previous version:</dt>
|
|
<dd><a href=
|
|
"http://www.w3.org/TR/2007/PR-ws-addr-metadata-20070731">http://www.w3.org/TR/2007/PR-ws-addr-metadata-20070731</a></dd>
|
|
<dt>Editors:</dt>
|
|
<dd>Martin Gudgin, Microsoft Corp</dd>
|
|
<dd>Marc Hadley, Sun Microsystems, Inc.</dd>
|
|
<dd>Tony Rogers, CA, Inc.</dd>
|
|
<dd>Ümit Yalçinalp, SAP AG</dd>
|
|
</dl>
|
|
<p>Please refer to the <a href=
|
|
"http://www.w3.org/2006/05/ws-addr-errata.html"><strong>errata</strong></a>
|
|
for this document, which may include some normative
|
|
corrections.</p>
|
|
<p>This document is also available in these non-normative formats:
|
|
<a href="ws-addr-metadata.pdf">PDF</a>, <a href=
|
|
"ws-addr-metadata.ps">PostScript</a>, <a href=
|
|
"ws-addr-metadata.xml">XML</a>, and <a href=
|
|
"ws-addr-metadata.txt">plain text</a>.</p>
|
|
<p>See also <a href=
|
|
"http://www.w3.org/2003/03/Translations/byTechnology?technology=ws-addr-metadata">
|
|
<strong>translations</strong></a>.</p>
|
|
<p class="copyright"><a href=
|
|
"http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2007 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup>
|
|
(<a href="http://www.csail.mit.edu/"><acronym title=
|
|
"Massachusetts Institute of Technology">MIT</acronym></a>, <a href=
|
|
"http://www.ercim.org/"><acronym title=
|
|
"European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
|
|
<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved.
|
|
W3C <a href=
|
|
"http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
|
|
<a href=
|
|
"http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>
|
|
and <a href=
|
|
"http://www.w3.org/Consortium/Legal/copyright-documents">document
|
|
use</a> rules apply.</p>
|
|
</div>
|
|
<hr />
|
|
<div>
|
|
<h2><a name="abstract" id="abstract"></a>Abstract</h2>
|
|
<p>Web Services Addressing provides transport-neutral mechanisms to
|
|
address Web services and messages. Web Services Addressing 1.0 -
|
|
Metadata (this document) defines how the abstract properties
|
|
defined in Web Services Addressing 1.0 - Core are described using
|
|
WSDL, how to include WSDL metadata in endpoint references, and how
|
|
WS-Policy can be used to indicate the support of WS-Addressing by a
|
|
Web service.</p>
|
|
</div>
|
|
<div>
|
|
<h2><a name="status" id="status"></a>Status of this Document</h2>
|
|
<p><em>This section describes the status of this document at the
|
|
time of its publication. Other documents may supersede this
|
|
document. A list of current W3C publications and the latest
|
|
revision of this technical report can be found in the <a href=
|
|
"http://www.w3.org/TR/">W3C technical reports index</a> at
|
|
http://www.w3.org/TR/.</em></p>
|
|
<p>This is the <a href=
|
|
"http://www.w3.org/2005/10/Process-20051014/tr.html#RecsW3C">W3C
|
|
Recommendation</a> of Web Services Addressing 1.0 - Metadata
|
|
specification for review by W3C members and other interested
|
|
parties. It has been produced by the <a href=
|
|
"http://www.w3.org/2002/ws/addr/">Web Services Addressing Working
|
|
Group</a>, which is part of the <a href=
|
|
"http://www.w3.org/2002/ws/Activity">W3C Web Services
|
|
Activity</a>.</p>
|
|
<p>Please send comments on this document to the public <a href=
|
|
"mailto:public-ws-addressing-comments@w3.org">public-ws-addressing-comments@w3.org</a>
|
|
mailing list (<a href=
|
|
"http://lists.w3.org/Archives/Public/public-ws-addressing-comments/">public
|
|
archive</a>).</p>
|
|
<p>The Working Group released a test suite along with an <a href=
|
|
"http://dev.w3.org/2004/ws/addressing/testsuitewsdl/report/Overview.html">
|
|
implementation report</a>. A <a href="diff.html">diff-marked
|
|
version against the previous version of this document</a> is
|
|
available.</p>
|
|
<p>This document has been reviewed by W3C Members, by software
|
|
developers, and by other W3C groups and interested parties, and is
|
|
endorsed by the Director as a W3C Recommendation. It is a stable
|
|
document and may be used as reference material or cited from
|
|
another document. W3C's role in making the Recommendation is to
|
|
draw attention to the specification and to promote its widespread
|
|
deployment. This enhances the functionality and interoperability of
|
|
the Web.</p>
|
|
<p>This document was produced by a group operating under the
|
|
<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5
|
|
February 2004 W3C Patent Policy</a>. W3C maintains a <a href=
|
|
"http://www.w3.org/2004/01/pp-impl/36696/status#specs">public list
|
|
of any patent disclosures</a> made in connection with the
|
|
deliverables of the group; that page also includes instructions for
|
|
disclosing a patent. An individual who has actual knowledge of a
|
|
patent which the individual believes contains <a href=
|
|
"http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">
|
|
Essential Claim(s)</a> must disclose the information in accordance
|
|
with <a href=
|
|
"http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">
|
|
section 6 of the W3C Patent Policy</a>.</p>
|
|
</div>
|
|
<div class="toc">
|
|
<h2><a name="contents" id="contents"></a>Table of Contents</h2>
|
|
<p class="toc">1. <a href="#tocRange">Introduction</a>
|
|
<br />
|
|
    1.1 <a href="#notation">Notational
|
|
Conventions</a>
|
|
<br />
|
|
    1.2 <a href="#namespaces">Namespaces</a>
|
|
<br />
|
|
2. <a href="#metadatinepr">Including WSDL Metadata in EPRs</a>
|
|
<br />
|
|
    2.1 <a href=
|
|
"#refmetadatfromepr">Referencing WSDL Metadata from an EPR</a>
|
|
<br />
|
|
3. <a href="#indicatinguse">Indicating Use of WS-Addressing</a>
|
|
<br />
|
|
    3.1 <a href="#wspolicyassertions">WS-Policy
|
|
Assertions</a>
|
|
<br />
|
|
        3.1.1 <a href=
|
|
"#wspolicyaddressing">Addressing Assertion</a>
|
|
<br />
|
|
        3.1.2 <a href=
|
|
"#wspolicyanonresponses">AnonymousResponses Assertion</a>
|
|
<br />
|
|
        3.1.3 <a href=
|
|
"#wspolicynonanonresponses">NonAnonymousResponses Assertion</a>
|
|
<br />
|
|
        3.1.4 <a href=
|
|
"#policyexamplesincompact">Examples (Compact Form)</a>
|
|
<br />
|
|
        3.1.5 <a href=
|
|
"#policyassertionsinnormal">Examples (Normal Form)</a>
|
|
<br />
|
|
        3.1.6 <a href=
|
|
"#usingintersection">Finding Compatible Policies</a>
|
|
<br />
|
|
4. <a href="#mapvaluesinwsdl">Specifying Message Addressing
|
|
Properties in WSDL</a>
|
|
<br />
|
|
    4.1 <a href="#eprinendpoint">Extending WSDL
|
|
Endpoints with an EPR</a>
|
|
<br />
|
|
        4.1.1 <a href=
|
|
"#id2273678">WSDL 2.0 Component Model Changes</a>
|
|
<br />
|
|
    4.2 <a href="#destinwsdl">Destination</a>
|
|
<br />
|
|
    4.3 <a href="#refpinwsdl">Reference
|
|
Parameters</a>
|
|
<br />
|
|
    4.4 <a href="#actioninwsdl">Action</a>
|
|
<br />
|
|
        4.4.1 <a href=
|
|
"#explicitaction">Explicit Association</a>
|
|
<br />
|
|
        4.4.2 <a href=
|
|
"#defactionwsdl20">Default Action Pattern for WSDL 2.0</a>
|
|
<br />
|
|
        4.4.3 <a href=
|
|
"#id2274552">WSDL 2.0 Component Model Changes</a>
|
|
<br />
|
|
        4.4.4 <a href=
|
|
"#defactionwsdl11">Default Action Pattern for WSDL 1.1</a>
|
|
<br />
|
|
5. <a href="#WSDLMEPS">WS-Addressing and WSDL Message Exchange
|
|
Patterns</a>
|
|
<br />
|
|
    5.1 <a href="#WSDL11MEPS">WSDL 1.1 Message
|
|
Exchange Patterns</a>
|
|
<br />
|
|
        5.1.1 <a href=
|
|
"#wsdl11oneway">One-way</a>
|
|
<br />
|
|
        5.1.2 <a href=
|
|
"#wsdl11requestresponse">Request-Response</a>
|
|
<br />
|
|
        5.1.3 <a href=
|
|
"#wsdl11notification">Notification</a>
|
|
<br />
|
|
        5.1.4 <a href=
|
|
"#wsdl11solicitresponse">Solicit-response</a>
|
|
<br />
|
|
    5.2 <a href="#WSDL20MEPS">WSDL 2.0 Message
|
|
Exchange Patterns</a>
|
|
<br />
|
|
        5.2.1 <a href=
|
|
"#wsdl20inonly">In-only</a>
|
|
<br />
|
|
        5.2.2 <a href=
|
|
"#wsdl20robustinonly">Robust In-only</a>
|
|
<br />
|
|
        5.2.3 <a href=
|
|
"#wsdl20inout">In-out</a>
|
|
<br />
|
|
        5.2.4 <a href=
|
|
"#wsdl20inoptionalout">In-optional-out</a>
|
|
<br />
|
|
        5.2.5 <a href=
|
|
"#wsdl20outonly">Out-only</a>
|
|
<br />
|
|
        5.2.6 <a href=
|
|
"#wsdl20robustoutonly">Robust Out-only</a>
|
|
<br />
|
|
        5.2.7 <a href=
|
|
"#wsdl20outin">Out-in</a>
|
|
<br />
|
|
        5.2.8 <a href=
|
|
"#wsdl20outoptionalin">Out-optional-in</a>
|
|
<br />
|
|
6. <a href="#conformance">Conformance</a>
|
|
<br />
|
|
7. <a href="#references">References</a>
|
|
<br />
|
|
    7.1 <a href="#id2278438">Normative</a>
|
|
<br />
|
|
    7.2 <a href="#id2279332">Informative</a>
|
|
<br /></p>
|
|
<h3><a name="appendices" id="appendices"></a>Appendices</h3>
|
|
<p class="toc">A. <a href="#acknowledgments">Acknowledgements</a>
|
|
(Non-Normative)
|
|
<br />
|
|
B. <a href="#actioncompatibility">Compatibility of [action] with
|
|
previous versions of WS-Addressing</a> (Non-Normative)
|
|
<br /></p>
|
|
</div>
|
|
<hr />
|
|
<div class="body">
|
|
<div class="div1">
|
|
<h2><a name="tocRange" id="tocRange"></a>1. Introduction</h2>
|
|
<p>Web Services Addressing 1.0 - Core [<cite><a href=
|
|
"#WSADDR-CORE">WS-Addressing Core</a></cite>] defines a set of
|
|
abstract properties and an XML Infoset [<cite><a href=
|
|
"#XMLInfoSet">XML Information Set</a></cite>] representation of Web
|
|
service endpoint references (EPRs) and to facilitate end-to-end
|
|
addressing of endpoints in messages. Web Services Addressing 1.0 -
|
|
Metadata (this document) defines how the abstract properties
|
|
defined in Web Services Addressing 1.0 - Core are described using
|
|
WSDL and how WS-Policy can be used to indicate the support of
|
|
WS-Addressing by a Web service. WS-Addressing is designed to be
|
|
able to work with WS-Policy 1.5 [<cite><a href="#WSPolicy">WS
|
|
Policy 1.5</a></cite>], WSDL 2.0 [<cite><a href="#WSDL20">WSDL
|
|
2.0</a></cite>] and also (for backwards compatibility) with WSDL
|
|
1.1 [<cite><a href="#WSDL11">WSDL 1.1</a></cite>] described
|
|
services.</p>
|
|
<div class="div2">
|
|
<h3><a name="notation" id="notation"></a>1.1 Notational
|
|
Conventions</h3>
|
|
<p>The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
|
|
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
|
|
in this document are to be interpreted as described in RFC 2119
|
|
[<cite><a href="#RFC2119">IETF RFC 2119</a></cite>].</p>
|
|
<p>When describing abstract data models, this specification uses
|
|
the notational convention used by the XML Infoset [<cite><a href=
|
|
"#XMLInfoSet">XML Information Set</a></cite>]. Specifically,
|
|
abstract property names always appear in square brackets (e.g.,
|
|
[some property]).</p>
|
|
<p>When describing concrete XML schemas [<cite><a href=
|
|
"#XMLSchemaP1">XML Schema Structures</a></cite>, <cite><a href=
|
|
"#XMLSchemaP2">XML Schema Datatypes</a></cite>], this specification
|
|
uses the notational convention of WS-Security [<cite><a href=
|
|
"#WS-Security">WS-Security</a></cite>]. Specifically, each member
|
|
of an element's [children] or [attributes] property is described
|
|
using an XPath-like notation (e.g.,
|
|
/x:MyHeader/x:SomeProperty/@value1). The use of {any} indicates the
|
|
presence of an element wildcard (<xs:any/>). The use of
|
|
@{any} indicates the presence of an attribute wildcard
|
|
(<xs:anyAttribute/>).</p>
|
|
</div>
|
|
<div class="div2">
|
|
<h3><a name="namespaces" id="namespaces"></a>1.2 Namespaces</h3>
|
|
<p>This specification uses a number of namespace prefixes
|
|
throughout; they are listed in <a href="#nsprefs">Table 1-1</a>.
|
|
Note that the choice of any namespace prefix is arbitrary and not
|
|
semantically significant (see [<cite><a href="#XMLNS">XML
|
|
Namespaces</a></cite>]).</p>
|
|
<a name="nsprefs" id="nsprefs"></a>
|
|
<table summary="Namespace prefixes usage in this specification"
|
|
border="1">
|
|
<caption>Table 1-1. Prefixes and Namespaces used in this
|
|
specification</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Prefix</th>
|
|
<th align="left" rowspan="1" colspan="1">Namespace</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">S</td>
|
|
<td rowspan="1" colspan="1">
|
|
http://www.w3.org/2003/05/soap-envelope</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">S11</td>
|
|
<td rowspan="1" colspan="1">
|
|
http://schemas.xmlsoap.org/soap/envelope</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsa</td>
|
|
<td rowspan="1" colspan="1">
|
|
http://www.w3.org/2005/08/addressing</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsam</td>
|
|
<td rowspan="1" colspan="1">
|
|
http://www.w3.org/2007/05/addressing/metadata</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsoap</td>
|
|
<td rowspan="1" colspan="1">http://www.w3.org/ns/wsdl/soap</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">xs</td>
|
|
<td rowspan="1" colspan="1">http://www.w3.org/2001/XMLSchema</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsdl</td>
|
|
<td rowspan="1" colspan="1">Either http://www.w3.org/ns/wsdl or
|
|
http://schemas.xmlsoap.org/wsdl/ depending on context</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsdl20</td>
|
|
<td rowspan="1" colspan="1">http://www.w3.org/ns/wsdl</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsdl11</td>
|
|
<td rowspan="1" colspan="1">http://schemas.xmlsoap.org/wsdl/</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">soap11</td>
|
|
<td rowspan="1" colspan="1">
|
|
http://schemas.xmlsoap.org/wsdl/soap/</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">wsp</td>
|
|
<td rowspan="1" colspan="1">http://www.w3.org/ns/ws-policy</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br />
|
|
<p>The working group intends to update the value of the Web
|
|
Services Addressing 1.0 - Metadata namespace URI each time a new
|
|
version of this document is published until such time that the
|
|
document reaches Candidate Recommendation status. Once it has
|
|
reached Candidate Recommendation status, the working group intends
|
|
to maintain the value of the Web Services Addressing 1.0 - Metadata
|
|
namespace URI that was assigned in the Candidate Recommendation
|
|
unless significant changes are made that impact the implementation
|
|
of the specification.</p>
|
|
<p>WS-Addressing is defined in terms of the XML Information Set
|
|
[<cite><a href="#XMLInfoSet">XML Information Set</a></cite>].
|
|
WS-Addressing can be used with SOAP [<cite><a href=
|
|
"#SOAP12-PART1">SOAP 1.2</a></cite>, <cite><a href="#SOAP11">SOAP
|
|
1.1</a></cite>] as described in Web Services Addressing 1.0 - SOAP
|
|
Binding [<cite><a href="#WSADDR-SOAP">WS-Addressing SOAP
|
|
Binding</a></cite>]. The examples in this specification use an XML
|
|
1.0 [<cite><a href="#XML10">XML 1.0</a></cite>] representation but
|
|
this is not a requirement.</p>
|
|
<p>All information items defined by this specification are
|
|
identified by the XML namespace URI [<cite><a href="#XMLNS">XML
|
|
Namespaces</a></cite>]
|
|
"http://www.w3.org/2007/05/addressing/metadata". A normative XML
|
|
Schema [<cite><a href="#XMLSchemaP1">XML Schema
|
|
Structures</a></cite>, <cite><a href="#XMLSchemaP2">XML Schema
|
|
Datatypes</a></cite>] document can be obtained by dereferencing the
|
|
XML namespace URI.</p>
|
|
</div>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="metadatinepr" id="metadatinepr"></a>2. Including WSDL
|
|
Metadata in EPRs</h2>
|
|
<p>An EPR's metadata section can contain a reference to WSDL
|
|
metadata, can include embedded WSDL metadata, or both.</p>
|
|
<div class="div2">
|
|
<h3><a name="refmetadatfromepr" id="refmetadatfromepr"></a>2.1
|
|
Referencing WSDL Metadata from an EPR</h3>
|
|
<p>The WSDL binding of Web Services Addressing introduces the
|
|
following element and attribute information items for referencing
|
|
WSDL metadata from an EPR's metadata section:</p>
|
|
<dl>
|
|
<dt class="label">wsam:InterfaceName (0..1)</dt>
|
|
<dd>
|
|
<p>A QName identifying a description of the sequences of messages
|
|
that a service sends and/or receives. This corresponds to a WSDL
|
|
2.0 interface or, for backwards compatibility, a WSDL 1.1 port
|
|
type. When this element is included in an EPR, the EPR is
|
|
considered to be specific to the interface or port type it
|
|
identifies.</p>
|
|
</dd>
|
|
<dt class="label">wsam:ServiceName (0..1)</dt>
|
|
<dd>
|
|
<p>A QName that identifies the set of endpoints at which a
|
|
particular Web service is deployed. The set of endpoints is
|
|
represented by a service in WSDL 2.0 or, for backwards
|
|
compatibility, a WSDL 1.1 service.</p>
|
|
</dd>
|
|
<dt class="label">wsam:ServiceName/@EndpointName (0..1)</dt>
|
|
<dd>
|
|
<p>An NCName that identifies one endpoint amongst the set
|
|
identified by the service name above. An endpoint is represented by
|
|
an endpoint in WSDL 2.0 or, for backwards compatibility, a port in
|
|
WSDL 1.1. When this attribute is specified, the EPR is considered
|
|
to be specific to the endpoint or port it identifies.</p>
|
|
</dd>
|
|
</dl>
|
|
<p>The element information items defined above are used in an EPR's
|
|
metadata section. The following shows an example endpoint
|
|
reference. This references the interface named
|
|
"ghns:reservationInterface" at the endpoint IRI
|
|
"http://greath.example.com/2004/reservation". Note the use of the
|
|
WSDL[<cite><a href="#WSDL20">WSDL 2.0</a></cite>] wsdlLocation
|
|
attribute.</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
2-1.</span> Example endpoint reference.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsa:EndpointReference
|
|
xmlns:wsa="http://www.w3.org/2005/08/addressing"
|
|
xmlns:ghns="http://greath.example.com/2004/wsdl/resSvc">
|
|
<wsa:Address>http://greath.example.com/2004/reservation</wsa:Address>
|
|
<wsa:Metadata
|
|
xmlns:wsdli="http://www.w3.org/ns/wsdl-instance"
|
|
wsdli:wsdlLocation="http://greath.example.com/2004/wsdl/resSvc http://greath.example.com/2004/reservation.wsdl">
|
|
<wsam:InterfaceName>ghns:reservationInterface</wsam:InterfaceName>
|
|
</wsa:Metadata>
|
|
</wsa:EndpointReference>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="indicatinguse" id="indicatinguse"></a>3. Indicating
|
|
Use of WS-Addressing</h2>
|
|
<p>This specification supports a mechanism for indicating, in a
|
|
WSDL description, that the endpoint conforms to the WS-Addressing
|
|
specification. That mechanism uses WS-Policy Framework
|
|
[<cite><a href="#WSPolicy">WS Policy 1.5</a></cite>].</p>
|
|
<div class="div2">
|
|
<h3><a name="wspolicyassertions" id="wspolicyassertions"></a>3.1
|
|
WS-Policy Assertions</h3>
|
|
<p>The mechanism for indicating that a binding or endpoint conforms
|
|
to the WS-Addressing specification is through the use of the Web
|
|
Services Policy - Framework [<cite><a href="#WSPolicy">WS Policy
|
|
1.5</a></cite>] and Web Services Policy - Attachment
|
|
[<cite><a href="#WSPolicyAttachment">WS Policy 1.5 -
|
|
Attachment</a></cite>] specifications. This specification defines
|
|
three policy assertions.</p>
|
|
<p>The <code>wsam:Addressing</code> policy assertion applies to the
|
|
endpoint policy subject.</p>
|
|
<p>For WSDL 1.1, these assertions may be attached to
|
|
<code>wsdl11:port</code> or <code>wsdl11:binding</code>. For WSDL
|
|
2.0, they may be attached to <code>wsdl20:endpoint</code> or
|
|
<code>wsdl20:binding</code>. A policy expression containing the
|
|
wsam:Addressing policy assertion MUST NOT be attached to a
|
|
<code>wsdl:portType</code> or <code>wsdl20:interface</code>. The
|
|
<code>wsam:Addressing</code> policy assertion specifies a concrete
|
|
behavior whereas the <code>wsdl:portType</code> or
|
|
<code>wsdl20:interface</code> is an abstract construct.</p>
|
|
<div class="div3">
|
|
<h4><a name="wspolicyaddressing" id="wspolicyaddressing"></a>3.1.1
|
|
Addressing Assertion</h4>
|
|
<p>The <code>wsam:Addressing</code> policy assertion is a nested
|
|
policy container assertion. The meaning of this assertion, when
|
|
present in a policy alternative, is that WS-Addressing is required
|
|
to communicate with the subject. The <code>wsam:Addressing</code>
|
|
assertion indicates that there are no restrictions on the use of
|
|
WS-Addressing unless otherwise qualified by assertions in its
|
|
nested policy expression. In order to indicate that the subject
|
|
supports WS-Addressing but does not require its use, an additional
|
|
policy alternative should be provided which does not contain this
|
|
assertion; the compact authoring style for an optional policy
|
|
assertion provided by WS-Policy V1.5 [<cite><a href="#WSPolicy">WS
|
|
Policy 1.5</a></cite>] may be used. The <code>wsp:Optional</code>
|
|
attribute, as a syntactic shortcut, can be used with the
|
|
<code>wsam:Addressing</code> assertion. This indicates two policy
|
|
alternatives, one which contains the policy assertion, and another
|
|
which does not.</p>
|
|
<p>The inclusion of this assertion implies support for the Web
|
|
Services Addressing 1.0 - Core [<cite><a href=
|
|
"#WSADDR-CORE">WS-Addressing Core</a></cite>] and Web Services
|
|
Addressing 1.0 - SOAP Binding [<cite><a href=
|
|
"#WSADDR-SOAP">WS-Addressing SOAP Binding</a></cite>].</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wspolicyanonresponses" id=
|
|
"wspolicyanonresponses"></a>3.1.2 AnonymousResponses Assertion</h4>
|
|
<p>The <code>wsam:AnonymousResponses</code> element MAY be used as
|
|
a policy assertion nested within the <code>wsam:Addressing</code>
|
|
assertion in accordance with the rules laid down by <a href=
|
|
"http://www.w3.org/TR/2007/CR-ws-policy-20070330/#Policy_Assertion_Nesting">
|
|
policy assertion nesting</a> ([<cite><a href="#WSPolicy">WS Policy
|
|
1.5</a></cite>], section 4.3.2).</p>
|
|
<p>The appearance of this element within the
|
|
<code>wsam:Addressing</code> policy assertion indicates that the
|
|
endpoint requires request messages to use response endpoint EPRs
|
|
that contain the anonymous URI
|
|
("<code>http://www.w3.org/2005/08/addressing/anonymous</code>") as
|
|
the value of [address]. In other words, the endpoint requires the
|
|
use of anonymous responses.</p>
|
|
<p>The None URI
|
|
("<code>http://www.w3.org/2005/08/addressing/none</code>") may
|
|
appear as the value of [address] in place of the anonymous URI;
|
|
this value MUST be accepted.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wspolicynonanonresponses" id=
|
|
"wspolicynonanonresponses"></a>3.1.3 NonAnonymousResponses
|
|
Assertion</h4>
|
|
<p>The <code>wsam:NonAnonymousResponses</code> element MAY be used
|
|
as a policy assertion nested within the Addressing assertion in
|
|
accordance with the rules laid down by <a href=
|
|
"http://www.w3.org/TR/2007/CR-ws-policy-20070330/#Policy_Assertion_Nesting">
|
|
policy assertion nesting</a> ([<cite><a href="#WSPolicy">WS Policy
|
|
1.5</a></cite>], section 4.3.2). The
|
|
<code>wsam:NonAnonymousResponses</code> policy assertion MUST NOT
|
|
be used in the same policy alternative as the
|
|
<code>wsam:AnonymousResponses</code> policy assertion.</p>
|
|
<p>The appearance of this element within the
|
|
<code>wsam:Addressing</code> assertion indicates that the endpoint
|
|
expresses requires request messages to use response endpoint EPRs
|
|
that contain something other than the anonymous URI as the value of
|
|
[address]. In other words, the endpoint requires the use of
|
|
non-anonymous responses. This assertion is deliberately vague; its
|
|
presence indicates that some non-anonymous addresses will be
|
|
accepted but doesn't constrain what such an address might look
|
|
like. A receiver can still reject a request that contains an
|
|
address that it doesn't understand or that requires a binding it
|
|
doesn't support.</p>
|
|
<p>The None URI
|
|
("<code>http://www.w3.org/2005/08/addressing/none</code>") may
|
|
appear as the value of [address] in place of a non-anonymous
|
|
address; this value MUST be accepted.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="policyexamplesincompact" id=
|
|
"policyexamplesincompact"></a>3.1.4 Examples (Compact Form)</h4>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-1.</span> Subject supports WS-Addressing</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsam:Addressing wsp:Optional="true">
|
|
<wsp:Policy/>
|
|
</wsam:Addressing>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-2.</span> Subject requires WS-Addressing</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsam:Addressing>
|
|
<wsp:Policy/>
|
|
</wsam:Addressing>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-3.</span> Subject requires WS-Addressing and requires the use of
|
|
non-anonymous response EPRs</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsam:Addressing>
|
|
<wsp:Policy>
|
|
<wsam:NonAnonymousResponses/>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="policyassertionsinnormal" id=
|
|
"policyassertionsinnormal"></a>3.1.5 Examples (Normal Form)</h4>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-4.</span> Subject supports WS-Addressing</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All/>
|
|
<wsp:All>
|
|
<wsam:Addressing>
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All/>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-5.</span> Subject requires WS-Addressing</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<wsam:Addressing>
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All/>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-6.</span> Subject requires WS-Addressing and requires the use of
|
|
non-anonymous response EPRs</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<wsam:Addressing>
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<wsam:NonAnonymousResponses/>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="usingintersection" id="usingintersection"></a>3.1.6
|
|
Finding Compatible Policies</h4>
|
|
<p>When a client is looking for an endpoint with compatible policy,
|
|
one common method used is to take the policy intersection between
|
|
the policy which the client is looking for, and the policy asserted
|
|
in the WSDL document; a non-empty intersection is sought. The
|
|
policy used by the client must be written carefully to avoid
|
|
unexpected results. This is most obvious when the client is not
|
|
looking for explicit support of a particular kind of response;
|
|
failing to take care could mean missing a compatible policy.</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-7.</span> Client looking for an endpoint which supports
|
|
Addressing, and which supports anonymous responses</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<wsam:Addressing>
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<AnonymousResponses Optional=”true”/>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
3-8.</span> Client looking for an endpoint which supports
|
|
Addressing, and does not require support for responses (will
|
|
intersect with anything)</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<wsam:Addressing> <-- supports all response types -->
|
|
<wsp:Policy>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
<wsp:All>
|
|
<wsam:Addressing> <-- requires Anonymous responses -->
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<AnonymousResponses />
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
<wsp:All>
|
|
<wsam:Addressing> <- requires nonAnonymous responses -->
|
|
<wsp:Policy>
|
|
<wsp:ExactlyOne>
|
|
<wsp:All>
|
|
<NonAnonymousResponses />
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</wsam:Addressing>
|
|
</wsp:All>
|
|
</wsp:ExactlyOne>
|
|
</wsp:Policy>
|
|
</pre></div>
|
|
</div>
|
|
<p>For more detailed descriptions of the use of wsp:Optional,
|
|
wsp:Ignorable, and strict and lax intersection, please refer to the
|
|
WS-Policy Primer [<cite><a href="#WSPolicyPrimer">WS Policy 1.5 -
|
|
Primer</a></cite>].</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="mapvaluesinwsdl" id="mapvaluesinwsdl"></a>4.
|
|
Specifying Message Addressing Properties in WSDL</h2>
|
|
<p>This section describes how the values of certain message
|
|
addressing properties can be specified in WSDL. In some cases the
|
|
values of message addressing properties are specified using
|
|
existing WSDL constructs, in other cases new WSDL extensions are
|
|
defined for that purpose.</p>
|
|
<div class="div2">
|
|
<h3><a name="eprinendpoint" id="eprinendpoint"></a>4.1 Extending
|
|
WSDL Endpoints with an EPR</h3>
|
|
<p>A wsdl20:endpoint or wsdl11:port element MAY be extended using a
|
|
child wsa:EndpointReference element. When extended this way, the
|
|
[address] property of the child EPR MUST match the {address}
|
|
property of the endpoint component (WSDL 2.0) or the address value
|
|
provided by the relevant port extension (WSDL 1.1). For example, in
|
|
a SOAP 1.1 port described using WSDL 1.1, the location attribute of
|
|
a soap11:address element (if present) would have the same value as
|
|
the wsa:Address child element of the wsa:EndpointReference
|
|
element.</p>
|
|
<div class="div3">
|
|
<h4><a name="id2273678" id="id2273678"></a>4.1.1 WSDL 2.0 Component
|
|
Model Changes</h4>
|
|
<p>Use of WS-Addressing adds the following OPTIONAL properties to
|
|
the WSDL 2.0 component model:</p>
|
|
<ul>
|
|
<li>
|
|
<p>A property of the Endpoint component, named {endpoint
|
|
reference}. This property is of type wsa:EndpointReference, with a
|
|
cardinality of 1. The property has the value of the
|
|
wsa:EndpointReference element used as a child of wsdl20:endpoint,
|
|
if any. If no such extension exists, this property is absent.</p>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="div2">
|
|
<h3><a name="destinwsdl" id="destinwsdl"></a>4.2 Destination</h3>
|
|
<p>The value of the [destination] message addressing property for a
|
|
message sent to an endpoint typically matches the value of the
|
|
{address} property of the endpoint component (WSDL 2.0) or the
|
|
address value (if any) provided by the relevant port extension
|
|
(WSDL 1.1). For a SOAP 1.1 port described using WSDL 1.1, the value
|
|
is provided by the location attribute of the soap11:address
|
|
extension element. For an endpoint or port extended with an EPR
|
|
(see <a href="#eprinendpoint"><strong>4.1 Extending WSDL Endpoints
|
|
with an EPR</strong></a>), the value is provided by the [address]
|
|
property of the EPR.</p>
|
|
<p>Additional runtime information could override the value of the
|
|
[destination] message addressing property for messages sent to an
|
|
endpoint, e.g. a runtime exchange might result in a redirection to
|
|
a different EPR. Note that WS-Addressing does not define any
|
|
normative mechanism for such redirection.</p>
|
|
</div>
|
|
<div class="div2">
|
|
<h3><a name="refpinwsdl" id="refpinwsdl"></a>4.3 Reference
|
|
Parameters</h3>
|
|
<p>When a wsa:EndpointReference element is present in a
|
|
wsdl20:endpoint or a wsdl11:port element (see <a href=
|
|
"#eprinendpoint"><strong>4.1 Extending WSDL Endpoints with an
|
|
EPR</strong></a>), the value of the [reference parameters] message
|
|
addressing property for a message sent to an endpoint MUST include
|
|
the contents of the wsa:ReferenceParameters element, if one exists
|
|
within that EPR.</p>
|
|
</div>
|
|
<div class="div2">
|
|
<h3><a name="actioninwsdl" id="actioninwsdl"></a>4.4 Action</h3>
|
|
<p>WS-Addressing defines two mechanisms to associate a value of the
|
|
[action] property with input, output and fault elements within a
|
|
WSDL description: explicit and defaulting. Explicit association is
|
|
described in section <a href="#explicitaction"><strong>4.4.1
|
|
Explicit Association</strong></a>; action defaulting (where a
|
|
unique value for the [action] property is automatically generated)
|
|
is described in section <a href="#defactionwsdl11"><strong>4.4.4
|
|
Default Action Pattern for WSDL 1.1</strong></a> for WSDL 1.1 and
|
|
section <a href="#defactionwsdl20"><strong>4.4.2 Default Action
|
|
Pattern for WSDL 2.0</strong></a> for WSDL 2.0.</p>
|
|
<p>Ensuring that there is sufficient information within a message
|
|
to distinguish which WSDL operation it is associated with is
|
|
specified as a best practice in WSDL 2.0<cite><a href=
|
|
"#WSDL20">WSDL 2.0</a></cite>. The [action] property provides a
|
|
mechanism to fulfill that best practice.</p>
|
|
<div class="div3">
|
|
<h4><a name="explicitaction" id="explicitaction"></a>4.4.1 Explicit
|
|
Association</h4>
|
|
<p>WS-Addressing defines a global attribute, wsam:Action, that can
|
|
be used to explicitly define the value of the [action] property for
|
|
messages in a WSDL description. The type of the attribute is
|
|
xs:anyURI and it is used as an extension on the WSDL input, output
|
|
and fault elements. A SOAP binding can specify SOAPAction values
|
|
for the input messages of operations. In the absence of a
|
|
wsam:Action attribute on a WSDL input element where a non-empty
|
|
SOAPAction value is specified, the value of the [action] property
|
|
for the input message is the value of the SOAPAction specified. If
|
|
the wsam:Action attribute is absent, and SOAPAction is not
|
|
specified, or is empty, then the default pattern is used. Note that
|
|
the SOAPAction value is not required to be an absolute IRI, but the
|
|
[action] property is required to be an absolute IRI; if
|
|
WS-Addressing is required (the wsam:Addressing assertion is
|
|
present), wsam:Action is not specified, and the SOAPAction value is
|
|
not empty or an absolute IRI, then the document MUST be considered
|
|
invalid. Web Services Addressing 1.0 - SOAP Binding[<cite><a href=
|
|
"#WSADDR-SOAP">WS-Addressing SOAP Binding</a></cite>] specifies
|
|
restrictions on the relationship between the values of [action] and
|
|
SOAPAction for SOAP 1.1 and SOAP 1.2.</p>
|
|
<p>The inclusion of wsam:Action without the inclusion of the
|
|
wsam:Addressing assertion has no normative intent and is only
|
|
informational. In other words, the inclusion of wsam:Action
|
|
attributes in WSDL alone does not imply a requirement on clients to
|
|
use Message Addressing Properties in messages it sends to the
|
|
service. A client, however, MAY include Message Addressing
|
|
Properties in the messages it sends, either on its own initiative
|
|
or as described by other elements of the service contract,
|
|
regardless of the presence or absence of the wsam:Addressing
|
|
assertion. Other specifications defining the value of [action] are
|
|
under no constraint to be consistent with wsam:Action.</p>
|
|
<p>For example consider the following WSDL excerpt:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-1.</span> Explicit specification of wsa:Action value in a WSDL
|
|
2.0 description.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<description targetNamespace="http://greath.example.com/2004/schemas/resSvc" ...>
|
|
...
|
|
<interface name="reservationInterface">
|
|
<operation name="opCheckAvailability" pattern="http://www.w3.org/ns/wsdl/in-out">
|
|
<input element="tns:checkAvailability" messageLabel="In"
|
|
wsam:Action="http://greath.example.com/2004/wsdl/resSvc/opCheckAvailability"/>
|
|
<output element="tns:checkAvailabilityResponse" messageLabel="Out"
|
|
wsam:Action="http://greath.example.com/2004/wsdl/resSvc/opCheckAvailabilityResponse"/>
|
|
</operation>
|
|
</interface>
|
|
...
|
|
</description>
|
|
</pre></div>
|
|
</div>
|
|
<p>The action for the input of the opCheckAvailability operation
|
|
within the reservationInterface is explicitly defined to be
|
|
http://greath.example.com/2004/wsdl/resSvc/opCheckAvailability. The
|
|
action for the output of this same operation is
|
|
http://greath.example.com/2004/wsdl/resSvc/opCheckAvailabilityResponse.</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-2.</span> Explicit specification of wsa:Action value in a WSDL
|
|
1.1 description.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<definitions targetNamespace="http://greath.example.com/2004/schemas/resSvc" ...>
|
|
...
|
|
<portType name="reservationInterface">
|
|
<operation name="opCheckAvailability">
|
|
<input message="tns:checkAvailability"
|
|
wsam:Action="http://greath.example.com/2004/wsdl/resSvc/opCheckAvailability"/>
|
|
<output message="tns:checkAvailabilityResponse"
|
|
wsam:Action="http://greath.example.com/2004/wsdl/resSvc/opCheckAvailabilityResponse"/>
|
|
</operation>
|
|
</portType>
|
|
...
|
|
</definitions>
|
|
|
|
</pre></div>
|
|
</div>
|
|
<p>The action for the input of the opCheckAvailability operation
|
|
within the reservationInterface port type is explicitly defined to
|
|
be http://greath.example.com/2004/wsdl/resSvc/opCheckAvailability.
|
|
The action for the output of this same operation is
|
|
http://greath.example.com/2004/wsdl/resSvc/opCheckAvailabilityResponse.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="defactionwsdl20" id="defactionwsdl20"></a>4.4.2
|
|
Default Action Pattern for WSDL 2.0</h4>
|
|
<p>In the absence of an explicitly specified value for the [action]
|
|
property (see section <a href="#explicitaction"><strong>4.4.1
|
|
Explicit Association</strong></a>), the following pattern is used
|
|
in WSDL 2.0 documents to construct a default action for inputs and
|
|
outputs. The general form of an action URI is as follows:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-3.</span> Structure of defaulted wsa:Action IRI in WSDL
|
|
2.0.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
[target namespace][delimiter][interface name][delimiter][operation name][direction token]
|
|
</pre></div>
|
|
</div>
|
|
<p>For fault messages, the general form of an action IRI is as
|
|
follows:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-4.</span> Structure of default wsa:Action IRI for faults</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
[target namespace][delimiter][interface name][delimiter][operation name][direction token][delimiter][fault name]
|
|
</pre></div>
|
|
</div>
|
|
<p>Where:</p>
|
|
<dl>
|
|
<dt class="label">[delimiter]</dt>
|
|
<dd>
|
|
<p>is ":" when the [target namespace] is a URN, otherwise "/". Note
|
|
that for IRI schemes other than URNs which aren't path-based (i.e.
|
|
those that outlaw the "/" character), the default action value
|
|
might not conform to the rules of the IRI scheme. Authors are
|
|
advised to specify explicit values in the WSDL in this case.</p>
|
|
</dd>
|
|
<dt class="label">[target namespace]</dt>
|
|
<dd>
|
|
<p>is the {target namespace} of the interface. If [target
|
|
namespace] ends with a "/" an additional "/" is not added.</p>
|
|
</dd>
|
|
<dt class="label">[interface name]</dt>
|
|
<dd>
|
|
<p>is the {name} of the interface.</p>
|
|
</dd>
|
|
<dt class="label">[operation name]</dt>
|
|
<dd>
|
|
<p>is the {name} of the operation.</p>
|
|
</dd>
|
|
<dt class="label">[fault name]</dt>
|
|
<dd>
|
|
<p>is the {name} of the fault.</p>
|
|
</dd>
|
|
<dt class="label">[direction token]</dt>
|
|
<dd>
|
|
<ul>
|
|
<li>
|
|
<p>Empty ("") where the operation's {message exchange pattern} is
|
|
"http://www.w3.org/ns/wsdl/in-only",
|
|
"http://www.w3.org/ns/wsdl/robust-in-only",
|
|
"http://www.w3.org/ns/wsdl/out-only", or
|
|
"http://www.w3.org/ns/wsdl/robust-out-only".</p>
|
|
</li>
|
|
<li>
|
|
<p>"Request" where the operation's {message exchange pattern} is
|
|
"http://www.w3.org/ns/wsdl/in-out" or
|
|
"http://www.w3.org/ns/wsdl/in-opt-out" and the message reference's
|
|
{message label} = 'In'.</p>
|
|
</li>
|
|
<li>
|
|
<p>"Solicit" where the operation's {message exchange pattern} is
|
|
"http://www.w3.org/ns/wsdl/out-in" or
|
|
"http://www.w3.org/ns/wsdl/out-opt-in" and the message reference's
|
|
{message label} = 'Out'.</p>
|
|
</li>
|
|
<li>
|
|
<p>"Response" where the operation's {message exchange pattern} is
|
|
"http://www.w3.org/ns/wsdl/in-out" or
|
|
"http://www.w3.org/ns/wsdl/in-opt-out" and the message reference's
|
|
{message label} = 'Out'.</p>
|
|
</li>
|
|
<li>
|
|
<p>"Response" where the operation's {message exchange pattern} is
|
|
"http://www.w3.org/ns/wsdl/out-in", or
|
|
"http://www.w3.org/ns/wsdl/out-opt-in" and the message reference's
|
|
{message label} = 'In'.</p>
|
|
</li>
|
|
<li>
|
|
<p>{message label} where the {message exchange pattern} is not one
|
|
of the MEP IRIs defined in WSDL 2.0 Part 2.</p>
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<p>For example consider the following WSDL excerpt:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-5.</span> Example WSDL without explicit wsa:Action
|
|
values.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<description targetNamespace="http://greath.example.com/2004/wsdl/resSvc" ...>
|
|
...
|
|
<interface name="reservationInterface">
|
|
<operation name="opCheckAvailability" pattern="http://www.w3.org/ns/wsdl/in-out">
|
|
<input element="tns:checkAvailability" messageLabel="In"/>
|
|
<output element="tns:checkAvailabilityResponse" messageLabel="Out"/>
|
|
</operation>
|
|
</interface>
|
|
...
|
|
</definitions>
|
|
|
|
</pre></div>
|
|
<p>[targetNamespace] =
|
|
http://greath.example.com/2004/wsdl/resSvc</p>
|
|
<p>[interface name] = reservationInterface</p>
|
|
<p>[operation name] = opCheckAvailability</p>
|
|
<p>[direction token] for input is Request</p>
|
|
<p>[direction token] for output is Response</p>
|
|
<p>Applying the patterns above with these values we have:</p>
|
|
<p>input action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/opCheckAvailabilityRequest</p>
|
|
<p>output action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/opCheckAvailabilityResponse</p>
|
|
<p>fault action for a fault named AvailabilityNotAvailableFault =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/opCheckAvailabilityResponse/AvailabilityNotAvailableFault</p>
|
|
</div>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="id2274552" id="id2274552"></a>4.4.3 WSDL 2.0 Component
|
|
Model Changes</h4>
|
|
<p>Use of WS-Addressing adds the following REQUIRED properties to
|
|
the WSDL 2.0 component model:</p>
|
|
<ul>
|
|
<li>
|
|
<p>A property of the Interface Message Reference and Interface
|
|
Operation InFault/OutFault components named {action}. The property
|
|
is of type xs:anyURI. The property value is either explicitly
|
|
specified, as described in section <a href=
|
|
"#explicitaction"><strong>4.4.1 Explicit Association</strong></a>,
|
|
or the default value computed following the rules from section
|
|
<a href="#defactionwsdl20"><strong>4.4.2 Default Action Pattern for
|
|
WSDL 2.0</strong></a>.</p>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="defactionwsdl11" id="defactionwsdl11"></a>4.4.4
|
|
Default Action Pattern for WSDL 1.1</h4>
|
|
<p>A default pattern is also defined for backwards compatibility
|
|
with WSDL 1.1. In the absence of an explicitly specified value for
|
|
the [action] property (see section <a href=
|
|
"#explicitaction"><strong>4.4.1 Explicit Association</strong></a>),
|
|
the following pattern is used to construct a default action for
|
|
inputs and outputs. The general form of an action IRI is as
|
|
follows:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-6.</span> Structure of defaulted wsa:Action IRI.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
[target namespace][delimiter][port type name][delimiter][input|output name]
|
|
</pre></div>
|
|
</div>
|
|
<p>For fault messages, the general form of an action IRI is as
|
|
follows:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-7.</span> Structure of default wsa:Action IRI for faults</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
[target namespace][delimiter][port type name][delimiter][operation name][delimiter]Fault[delimiter][fault name]
|
|
</pre></div>
|
|
</div>
|
|
<p>Where:</p>
|
|
<dl>
|
|
<dt class="label">[delimiter]</dt>
|
|
<dd>
|
|
<p>is ":" when the [target namespace] is a URN, otherwise "/". Note
|
|
that for IRI schemes other than URNs which aren't path-based (i.e.
|
|
those that outlaw the "/" character), the default action value
|
|
might not conform to the rules of the IRI scheme. Authors are
|
|
advised to specify explicit values in the WSDL in this case.</p>
|
|
</dd>
|
|
<dt class="label">"Fault"</dt>
|
|
<dd>
|
|
<p>is a literal character string to be included in the action.</p>
|
|
</dd>
|
|
<dt class="label">[target namespace]</dt>
|
|
<dd>
|
|
<p>is the target namespace (/definition/@targetNamespace). If
|
|
[target namespace] ends with a "/" an additional "/" is not
|
|
added.</p>
|
|
</dd>
|
|
<dt class="label">[port type name]</dt>
|
|
<dd>
|
|
<p>is the name of the port type (/definition/portType/@name).</p>
|
|
</dd>
|
|
<dt class="label">[operation name]</dt>
|
|
<dd>
|
|
<p>is the {name} of the operation.</p>
|
|
</dd>
|
|
<dt class="label">[input|output name]</dt>
|
|
<dd>
|
|
<p>is the name of the element as defined in <a href=
|
|
"http://www.w3.org/TR/wsdl#_names">Section 2.4.5</a> of WSDL
|
|
1.1.</p>
|
|
</dd>
|
|
<dt class="label">[fault name]</dt>
|
|
<dd>
|
|
<p>is the name of the fault
|
|
(/definition/porttype/operation/fault/@name).</p>
|
|
</dd>
|
|
</dl>
|
|
<p>For example consider the following WSDL excerpt:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-8.</span> Example WSDL without explicit wsa:Action values with
|
|
explicit message names.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<definitions targetNamespace="http://greath.example.com/2004/wsdl/resSvc" ...>
|
|
...
|
|
<portType name="reservationInterface">
|
|
<operation name="opCheckAvailability">
|
|
<input message="tns:checkAvailability" name="CheckAvailability"/>
|
|
<output message="tns:checkAvailabilityResponse" name="Availability"/>
|
|
<fault message="tns:InvalidDate" name="InvalidDate"/>
|
|
</operation>
|
|
</portType>
|
|
...
|
|
</definitions>
|
|
|
|
</pre></div>
|
|
<p>[targetNamespace] =
|
|
http://greath.example.com/2004/wsdl/resSvc</p>
|
|
<p>[port type name] = reservationInterface</p>
|
|
<p>[input name] = CheckAvailability</p>
|
|
<p>[output name] = CheckAvailabilityResponse</p>
|
|
<p>[fault name] = InvalidDate</p>
|
|
<p>Applying the pattern above with these values we have:</p>
|
|
<p>input action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/CheckAvailability</p>
|
|
<p>output action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/Availability</p>
|
|
<p>fault action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/opCheckAvailability/Fault/InvalidDate</p>
|
|
</div>
|
|
<p>WSDL defines rules for a default input or output name if the
|
|
name attribute is not present. Consider the following example:</p>
|
|
<div class="exampleOuter">
|
|
<p style="text-align: left" class="exampleHead"><em><span>Example
|
|
4-9.</span> Example WSDL without explicit wsa:Action values or
|
|
explicit message names.</em></p>
|
|
<div class="exampleInner">
|
|
<pre xml:space="preserve">
|
|
<definitions targetNamespace="http://greath.example.com/2004/wsdl/resSvc" ...>
|
|
...
|
|
<portType name="reservationInterface">
|
|
<operation name="opCheckAvailability">
|
|
<input message="tns:checkAvailability"/>
|
|
<output message="tns:checkAvailabilityResponse"/>
|
|
</operation>
|
|
</portType>
|
|
...
|
|
</definitions>
|
|
|
|
</pre></div>
|
|
<p>[targetNamespace] =
|
|
http://greath.example.com/2004/wsdl/resSvc</p>
|
|
<p>[port type name] = reservationInterface</p>
|
|
<p>According to the rules defined in <a href=
|
|
"http://www.w3.org/TR/wsdl#_names">Section 2.4.5</a> of WSDL 1.1,
|
|
if the name attribute is absent for the input of a request response
|
|
operation the default value is the name of the operation with
|
|
"Request" appended.</p>
|
|
<p>[input name] = opCheckAvailabilityRequest</p>
|
|
<p>Likewise, the output defaults to the operation name with
|
|
"Response" appended.</p>
|
|
<p>[output name] = opCheckAvailabilityResponse</p>
|
|
<p>Applying the pattern above with these values we have:</p>
|
|
<p>input action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/opCheckAvailabilityRequest</p>
|
|
<p>output action =
|
|
http://greath.example.com/2004/wsdl/resSvc/reservationInterface/opCheckAvailabilityResponse</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="WSDLMEPS" id="WSDLMEPS"></a>5. WS-Addressing and WSDL
|
|
Message Exchange Patterns</h2>
|
|
<p>This section describes which of the core message properties are
|
|
mandatory for messages in the various MEPs defined by WSDL.</p>
|
|
<div class="div2">
|
|
<h3><a name="WSDL11MEPS" id="WSDL11MEPS"></a>5.1 WSDL 1.1 Message
|
|
Exchange Patterns</h3>
|
|
<p>For backwards compatibility, this section describes which of the
|
|
core message properties are mandatory for messages in the various
|
|
MEPs defined by WSDL 1.1.</p>
|
|
<div class="div3">
|
|
<h4><a name="wsdl11oneway" id="wsdl11oneway"></a>5.1.1 One-way</h4>
|
|
<p>This is a straightforward one-way message. No responses are
|
|
expected but related messages could be sent as part of other
|
|
message exchanges.</p>
|
|
<table border="1">
|
|
<caption>Table 5-1. Message addressing properties for one way
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for replies to this
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. Unused in this MEP, but could be included to
|
|
facilitate longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Unused in this MEP, but may be included to facilitate longer
|
|
running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Indicates relationship to a prior
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br /></div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl11requestresponse" id=
|
|
"wsdl11requestresponse"></a>5.1.2 Request-Response</h4>
|
|
<p>This is request-response. A reply is expected hence mandating
|
|
[reply endpoint] in the request message. The response message might
|
|
be a fault.</p>
|
|
<table border="1">
|
|
<caption>Table 5-2. Message addressing properties for request
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for the reply to this
|
|
message.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. May be included to direct fault messages to a
|
|
different endpoint than [reply endpoint].</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Used in the [relationship] property of the reply message.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Indicates relationship to a prior
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br />
|
|
<table border="1">
|
|
<caption>Table 5-3. Message addressing properties for response
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for replies to this
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. Unused in this MEP, but could be included to
|
|
facilitate longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Unused in this MEP, but may be included to facilitate longer
|
|
running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Indicates that this message is a reply
|
|
to the request message using the request message [message id] value
|
|
and the predefined
|
|
<code>http://www.w3.org/2005/08/addressing/reply</code> IRI.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br /></div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl11notification" id="wsdl11notification"></a>5.1.3
|
|
Notification</h4>
|
|
<p>From the WS-Addressing perspective this MEP is the same as
|
|
One-way. The properties defined in <a href=
|
|
"#wsdl11oneway"><strong>5.1.1 One-way</strong></a> apply to this
|
|
MEP also.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl11solicitresponse" id=
|
|
"wsdl11solicitresponse"></a>5.1.4 Solicit-response</h4>
|
|
<p>From the WS-Addressing perspective this MEP is the same as
|
|
Request-response. The properties defined in <a href=
|
|
"#wsdl11requestresponse"><strong>5.1.2
|
|
Request-Response</strong></a> apply to this MEP also.</p>
|
|
</div>
|
|
</div>
|
|
<div class="div2">
|
|
<h3><a name="WSDL20MEPS" id="WSDL20MEPS"></a>5.2 WSDL 2.0 Message
|
|
Exchange Patterns</h3>
|
|
<p>This section describes which of the core message properties are
|
|
mandatory for messages in the various MEPs defined by WSDL 2.0
|
|
[<cite><a href="#WSDL20Adj">WSDL 2.0 Adjuncts</a></cite>].</p>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20inonly" id="wsdl20inonly"></a>5.2.1 In-only</h4>
|
|
<p>This is a straightforward one-way message. No responses are
|
|
expected but related messages could be sent as part of other
|
|
message exchanges.</p>
|
|
<table border="1">
|
|
<caption>Table 5-4. Message addressing properties for in
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for replies to this
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. Unused in this MEP, but could be included to
|
|
facilitate longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Unused in this MEP, but may be included to facilitate longer
|
|
running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Indicates relationship to a prior
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br /></div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20robustinonly" id="wsdl20robustinonly"></a>5.2.2
|
|
Robust In-only</h4>
|
|
<p>This one-way MEP allows fault messages. The [message id]
|
|
property is needed in the initial message in order to be able to
|
|
correlate any fault with that message.</p>
|
|
<table border="1">
|
|
<caption>Table 5-5. Message addressing properties for in
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N*</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for replies to this
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N*</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Used in the [relationship] property of any resulting fault
|
|
message.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Indicates relationship to a prior
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br />
|
|
<p>* Note that at least one of [fault endpoint] or [reply endpoint]
|
|
is required for this MEP, so that a fault can be sent if
|
|
necessary.</p>
|
|
<table border="1">
|
|
<caption>Table 5-6. Message addressing properties for fault
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for replies to this
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. Unused in this MEP, but could be included to
|
|
facilitate longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Unused in this MEP, but may be included to facilitate longer
|
|
running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Indicates that this message is a
|
|
response to the in message using the in message [message id] value
|
|
and the predefined
|
|
<code>http://www.w3.org/2005/08/addressing/reply</code> IRI.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br /></div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20inout" id="wsdl20inout"></a>5.2.3 In-out</h4>
|
|
<p>This is a two-way MEP. A reply is expected hence mandating
|
|
[reply endpoint] in the request message. The response message might
|
|
be a fault.</p>
|
|
<table border="1">
|
|
<caption>Table 5-7. Message addressing properties for in
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for the reply to this
|
|
message.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. May be included to direct fault messages to a
|
|
different endpoint than [reply endpoint].</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Used in the [relationship] property of the out message.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Indicates relationship to a prior
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br />
|
|
<table border="1">
|
|
<caption>Table 5-8. Message addressing properties for out
|
|
message.</caption>
|
|
<tbody>
|
|
<tr>
|
|
<th align="left" rowspan="1" colspan="1">Property</th>
|
|
<th align="center" rowspan="1" colspan="1">Mandatory</th>
|
|
<th align="left" rowspan="1" colspan="1">Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[destination]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Provides the address of the intended
|
|
receiver of this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[action]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Identifies the semantics implied by
|
|
this message</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[source endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Message origin. Unused in this MEP, but
|
|
could be included to facilitate longer running message
|
|
exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[reply endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for replies to this
|
|
message. Unused in this MEP, but could be included to facilitate
|
|
longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[fault endpoint]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Intended receiver for faults related to
|
|
this message. Unused in this MEP, but could be included to
|
|
facilitate longer running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[message id]</td>
|
|
<td align="center" rowspan="1" colspan="1">N</td>
|
|
<td rowspan="1" colspan="1">Unique identifier for this message.
|
|
Unused in this MEP, but may be included to facilitate longer
|
|
running message exchanges.</td>
|
|
</tr>
|
|
<tr>
|
|
<td rowspan="1" colspan="1">[relationship]</td>
|
|
<td align="center" rowspan="1" colspan="1">Y</td>
|
|
<td rowspan="1" colspan="1">Indicates that this message is a
|
|
response to the in message using the in message [message id] value
|
|
and the predefined
|
|
<code>http://www.w3.org/2005/08/addressing/reply</code> IRI.</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<br /></div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20inoptionalout" id=
|
|
"wsdl20inoptionalout"></a>5.2.4 In-optional-out</h4>
|
|
<p>This MEP differs from the In-out MEP in that the subsequent
|
|
message is optional. This difference doesn't affect the message
|
|
properties so the properties defined in <a href=
|
|
"#wsdl20inout"><strong>5.2.3 In-out</strong></a> apply to this MEP
|
|
also</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20outonly" id="wsdl20outonly"></a>5.2.5
|
|
Out-only</h4>
|
|
<p>From the WS-Addressing perspective this MEP is the same as
|
|
In-only. The properties defined in <a href=
|
|
"#wsdl20inonly"><strong>5.2.1 In-only</strong></a> apply to this
|
|
MEP also.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20robustoutonly" id=
|
|
"wsdl20robustoutonly"></a>5.2.6 Robust Out-only</h4>
|
|
<p>From the WS-Addressing perspective this MEP is the same as
|
|
Robust In-only. The properties defined in <a href=
|
|
"#wsdl20robustinonly"><strong>5.2.2 Robust In-only</strong></a>
|
|
apply to this MEP also.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20outin" id="wsdl20outin"></a>5.2.7 Out-in</h4>
|
|
<p>From the WS-Addressing perspective this MEP is the same as
|
|
In-out. The properties defined in <a href=
|
|
"#wsdl20inout"><strong>5.2.3 In-out</strong></a> apply to this MEP
|
|
also.</p>
|
|
</div>
|
|
<div class="div3">
|
|
<h4><a name="wsdl20outoptionalin" id=
|
|
"wsdl20outoptionalin"></a>5.2.8 Out-optional-in</h4>
|
|
<p>This MEP differs from the Out-in MEP in that the subsequent
|
|
message is optional. This difference doesn't affect the message
|
|
properties so the properties defined in <a href=
|
|
"#wsdl20inout"><strong>5.2.3 In-out</strong></a> apply to this MEP
|
|
also</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="conformance" id="conformance"></a>6. Conformance</h2>
|
|
<p>An endpoint reference whose wsa:Metadata element has among its
|
|
children the elements defined in <a href=
|
|
"#refmetadatfromepr"><strong>2.1 Referencing WSDL Metadata from an
|
|
EPR</strong></a> conforms to this specification if it obeys the
|
|
structural constraints defined in that section.</p>
|
|
<p>A WSDL description conforms to this specification when it
|
|
incorporates directly or indirectly the <a href=
|
|
"#wspolicyassertions"><strong>3.1 WS-Policy Assertions</strong></a>
|
|
marker, and obeys the structural constraints defined in section
|
|
<a href="#indicatinguse"><strong>3. Indicating Use of
|
|
WS-Addressing</strong></a> appropriate to that marker, and those
|
|
defined in section <a href="#actioninwsdl"><strong>4.4
|
|
Action</strong></a>.</p>
|
|
<p>An endpoint conforms to this specification if it has a
|
|
conformant WSDL description associated with it, and receives and
|
|
emits messages in accordance with the constraints defined in
|
|
sections <a href="#mapvaluesinwsdl"><strong>4. Specifying Message
|
|
Addressing Properties in WSDL</strong></a> and <a href=
|
|
"#WSDLMEPS"><strong>5. WS-Addressing and WSDL Message Exchange
|
|
Patterns</strong></a>.</p>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="references" id="references"></a>7. References</h2>
|
|
<div class="div2">
|
|
<h3><a name="id2278438" id="id2278438"></a>7.1 Normative</h3>
|
|
<dl>
|
|
<dt class="label"><a name="RFC2119" id="RFC2119"></a>[IETF RFC
|
|
2119]</dt>
|
|
<dd><cite><a href="http://www.ietf.org/rfc/rfc2119.txt">Key words
|
|
for use in RFCs to Indicate Requirement Levels</a></cite>, S.
|
|
Bradner, Author. Internet Engineering Task Force, March 1997.
|
|
Available at http://www.ietf.org/rfc/rfc2119.txt</dd>
|
|
<dt class="label"><a name="RFC3987" id="RFC3987"></a>[IETF RFC
|
|
3987]</dt>
|
|
<dd>M. Duerst, M. Suignard, "Internationalized Resource Identifiers
|
|
(IRIs)", January 2005. (See <cite><a href=
|
|
"http://www.ietf.org/rfc/rfc3987.txt">http://www.ietf.org/rfc/rfc3987.txt</a></cite>.)</dd>
|
|
<dt class="label"><a name="SOAP11" id="SOAP11"></a>[SOAP 1.1]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2000/NOTE-SOAP-20000508/">Simple Object
|
|
Access Protocol (SOAP) 1.1</a></cite>, D. Box, D. Ehnebuske, G.
|
|
Kakivaya, A. Layman, N. Mendelsohn, H Frystyk Nielsen, S. Thatte,
|
|
D. Winer, Editors. W3C Member Submission, 8 May 2000.</dd>
|
|
<dt class="label"><a name="SOAP12-PART1" id=
|
|
"SOAP12-PART1"></a>[SOAP 1.2]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2007/REC-soap12-part1-20070427/">SOAP Version
|
|
1.2 Part 1: Messaging Framework (Second Edition)</a></cite>, M.
|
|
Gudgin, et al., Editors. World Wide Web Consortium, 24 June 2003,
|
|
revised 27 April 2007. This version of the "SOAP Version 1.2 Part
|
|
1: Messaging Framework" Recommendation is
|
|
http://www.w3.org/TR/2007/REC-soap12-part1-20070427/. The <a href=
|
|
"http://www.w3.org/TR/soap12-part1/">latest version of "SOAP
|
|
Version 1.2 Part 1: Messaging Framework"</a> is available at
|
|
http://www.w3.org/TR/soap12-part1/.</dd>
|
|
<dt class="label"><a name="WSADDR-CORE" id=
|
|
"WSADDR-CORE"></a>[WS-Addressing Core]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2006/REC-ws-addr-core-20060509">Web Services
|
|
Addressing 1.0 - Core</a></cite>, M. Gudgin, M. Hadley, and T.
|
|
Rogers, Editors. World Wide Web Consortium, 9 May 2006. This
|
|
version of the WS-Addressing Core Recommendation is
|
|
http://www.w3.org/TR/2006/REC-ws-addr-core-20060509. The <a href=
|
|
"http://www.w3.org/TR/ws-addr-core">latest version of WS-Addressing
|
|
Core</a> is available at http://www.w3.org/TR/ws-addr-core.</dd>
|
|
<dt class="label"><a name="WSADDR-SOAP" id=
|
|
"WSADDR-SOAP"></a>[WS-Addressing SOAP Binding]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2006/REC-ws-addr-soap-20060509">Web Services
|
|
Addressing 1.0 - SOAP Binding</a></cite>, M. Gudgin, M. Hadley, and
|
|
T. Rogers, Editors. World Wide Web Consortium, 9 May 2006. This
|
|
version of the WS-Addressing Core Recommendation is
|
|
http://www.w3.org/TR/2006/REC-ws-addr-soap-20060509. The <a href=
|
|
"http://www.w3.org/TR/ws-addr-soap">latest version of WS-Addressing
|
|
SOAP Binding</a> is available at
|
|
http://www.w3.org/TR/ws-addr-soap.</dd>
|
|
<dt class="label"><a name="WSDL11" id="WSDL11"></a>[WSDL 1.1]</dt>
|
|
<dd>E. Christensen, et al, <cite><a href=
|
|
"http://www.w3.org/TR/2001/NOTE-wsdl-20010315">Web Services
|
|
Description Language (WSDL) 1.1</a></cite>, March 2001.</dd>
|
|
<dt class="label"><a name="WSDL20" id="WSDL20"></a>[WSDL 2.0]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2007/REC-wsdl20-20070626">Web Services
|
|
Description Language (WSDL) Version 2.0 Part 1: Core
|
|
Language</a></cite>, R. Chinnici, J-J. Moreau, A. Ryman, S.
|
|
Weerawarana, Editors. World Wide Web Consortium, 26 June 2007. This
|
|
version of the "Web Services Description Language (WSDL) Version
|
|
2.0 Part 1: Core Language" Recommendation is available is available
|
|
at http://www.w3.org/TR/2007/REC-wsdl20-20070626. The <a href=
|
|
"http://www.w3.org/TR/wsdl20">latest version of "Web Services
|
|
Description Language (WSDL) Version 2.0 Part 1: Core Language"</a>
|
|
is available at http://www.w3.org/TR/wsdl20.</dd>
|
|
<dt class="label"><a name="WSDL20Adj" id="WSDL20Adj"></a>[WSDL 2.0
|
|
Adjuncts]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2007/REC-wsdl20-adjuncts-20070626">Web
|
|
Services Description Language (WSDL) Version 2.0 Part 2:
|
|
Adjuncts</a></cite>, R. Chinnici, H. Haas, A. Lewis, J-J. Moreau,
|
|
D. Orchard, S. Weerawarana, Editors. World Wide Web Consortium, 26
|
|
June 2007. This version of the "Web Services Description Language
|
|
(WSDL) Version 2.0 Part 2: Adjuncts" Recommendation is available at
|
|
http://www.w3.org/TR/2007/REC-wsdl20-adjuncts-20070626. The
|
|
<a href="http://www.w3.org/TR/wsdl20-adjuncts">latest version of
|
|
"Web Services Description Language (WSDL) Version 2.0 Part 2:
|
|
Adjuncts"</a> is available at
|
|
http://www.w3.org/TR/wsdl20-adjuncts.</dd>
|
|
<dt class="label"><a name="WSPolicy" id="WSPolicy"></a>[WS Policy
|
|
1.5]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2007/REC-ws-policy-20070904">Web Services
|
|
Policy 1.5 - Framework</a></cite>, Asir S Vedamuthu, et al.,
|
|
Editors. World Wide Web Consortium, 4 September 2007. This version
|
|
of the WS-Policy Framework is
|
|
http://www.w3.org/TR/2007/REC-ws-policy-20070904. The <a href=
|
|
"http://www.w3.org/TR/ws-policy">latest version of WS Policy
|
|
Framework</a> is available at http://www.w3.org/TR/ws-policy</dd>
|
|
<dt class="label"><a name="WSPolicyAttachment" id=
|
|
"WSPolicyAttachment"></a>[WS Policy 1.5 - Attachment]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2007/REC-ws-policy-attach-20070904">Web
|
|
Services Policy 1.5 - Attachment</a></cite>, Asir S Vedamuthu, et
|
|
al., Editors. World Wide Web Consortium, 4 September 2007. This
|
|
version of the WS-Policy Attachment is
|
|
http://www.w3.org/TR/2007/REC-ws-policy-attach-20070904. The
|
|
<a href="http://www.w3.org/TR/ws-policy-attach">latest version of
|
|
WS Policy Attachment</a> is available at
|
|
http://www.w3.org/TR/ws-policy-attach</dd>
|
|
<dt class="label"><a name="XML10" id="XML10"></a>[XML 1.0]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2006/REC-xml-20060816">Extensible Markup
|
|
Language (XML) 1.0 (Fourth Edition)</a></cite>, T. Bray, J. Paoli,
|
|
C. M. Sperberg-McQueen, and E. Maler, Editors. World Wide Web
|
|
Consortium, 10 February 1998, revised 16 August 2006. This version
|
|
of the XML 1.0 Recommendation is
|
|
http://www.w3.org/TR/2006/REC-xml-20060816. The <a href=
|
|
"http://www.w3.org/TR/xml">latest version of XML 1.0</a> is
|
|
available at http://www.w3.org/TR/xml.</dd>
|
|
<dt class="label"><a name="XMLNS" id="XMLNS"></a>[XML
|
|
Namespaces]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2006/REC-xml-names-20060816/">Namespaces in
|
|
XML 1.0 (Second Edition)</a></cite>, T. Bray, D. Hollander, A.
|
|
Layman, and R. Tobin, Editors. World Wide Web Consortium, 14
|
|
January 1999, revised 16 August 2006. This version of Namespaces in
|
|
XML 1.0 Recommendation is
|
|
http://www.w3.org/TR/2006/REC-xml-names-20060816/. The <a href=
|
|
"http://www.w3.org/TR/xml-names">latest version of Namespaces in
|
|
XML</a> is available at http://www.w3.org/TR/xml-names.</dd>
|
|
<dt class="label"><a name="XMLInfoSet" id="XMLInfoSet"></a>[XML
|
|
Information Set]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">XML
|
|
Information Set (Second Edition)</a></cite>, J. Cowan and R. Tobin,
|
|
Editors. World Wide Web Consortium, 24 October 2001, revised 4
|
|
February 2004. This version of the XML Information Set
|
|
Recommendation is
|
|
http://www.w3.org/TR/2004/REC-xml-infoset-20040204/. The <a href=
|
|
"http://www.w3.org/TR/xml-infoset">latest version of XML
|
|
Information Set</a> is available at
|
|
http://www.w3.org/TR/xml-infoset.</dd>
|
|
<dt class="label"><a name="XMLSchemaP1" id="XMLSchemaP1"></a>[XML
|
|
Schema Structures]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/">XML Schema
|
|
Part 1: Structures Second Edition</a></cite>, H. Thompson, D.
|
|
Beech, M. Maloney, and N. Mendelsohn, Editors. World Wide Web
|
|
Consortium, 2 May 2001, revised 28 October 2004. This version of
|
|
the XML Schema Part 1 Recommendation is
|
|
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028. The <a href=
|
|
"http://www.w3.org/TR/xmlschema-1/">latest version of XML Schema
|
|
Part 1</a> is available at http://www.w3.org/TR/xmlschema-1.</dd>
|
|
<dt class="label"><a name="XMLSchemaP2" id="XMLSchemaP2"></a>[XML
|
|
Schema Datatypes]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/">XML Schema
|
|
Part 2: Datatypes Second Edition</a></cite>, P. Byron and A.
|
|
Malhotra, Editors. World Wide Web Consortium, 2 May 2001, revised
|
|
28 October 2004. This version of the XML Schema Part 2
|
|
Recommendation is
|
|
http://www.w3.org/TR/2004/REC-xmlschema-2-20041028. The <a href=
|
|
"http://www.w3.org/TR/xmlschema-2/">latest version of XML Schema
|
|
Part 2</a> is available at http://www.w3.org/TR/xmlschema-2.</dd>
|
|
</dl>
|
|
</div>
|
|
<div class="div2">
|
|
<h3><a name="id2279332" id="id2279332"></a>7.2 Informative</h3>
|
|
<dl>
|
|
<dt class="label"><a name="WSPolicyPrimer" id=
|
|
"WSPolicyPrimer"></a>[WS Policy 1.5 - Primer]</dt>
|
|
<dd><cite><a href=
|
|
"http://www.w3.org/TR/2007/WD-ws-policy-primer-20070810">Web
|
|
Services Policy 1.5 - Primer</a></cite>, Asir S Vedamuthu, et al.,
|
|
Editors. World Wide Web Consortium, 10 August 2007. This version of
|
|
the WS-Policy Primer is
|
|
http://www.w3.org/TR/2007/WD-ws-policy-primer-20070810. The
|
|
<a href="http://www.w3.org/TR/ws-policy-primer">latest version of
|
|
WS Policy Primer</a> is available at
|
|
http://www.w3.org/TR/ws-policy-primer</dd>
|
|
<dt class="label"><a name="WS-Security" id=
|
|
"WS-Security"></a>[WS-Security]</dt>
|
|
<dd>OASIS, <cite><a href=
|
|
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0.pdf">
|
|
Web Services Security: SOAP Message Security</a></cite>, March
|
|
2004.</dd>
|
|
</dl>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="back">
|
|
<div class="div1">
|
|
<h2><a name="acknowledgments" id="acknowledgments"></a>A.
|
|
Acknowledgements (Non-Normative)</h2>
|
|
<p>This document is the work of the <a href=
|
|
"http://www.w3.org/2002/ws/addr/">W3C Web Service Addressing
|
|
Working Group</a>.</p>
|
|
<p>Members of the Working Group are (at the time of writing, and by
|
|
alphabetical order): Abbie Barbir (Nortel Networks), Andreas
|
|
Bjärlestam (ERICSSON), Eran Chinthaka (WSO2), Francisco Curbera
|
|
(IBM Corporation), Glen Daniels (Sonic Software), Vikas Deolaliker
|
|
(Sonoa Systems, Inc.), Paul Downey (BT), Jacques Durand (Fujitsu
|
|
Limited), Robert Freund (Hitachi, Ltd.), Marc Goodner (Microsoft
|
|
Corporation), David Hull (TIBCO Software, Inc.), Yin-Leng Husband
|
|
(HP), David Illsley (IBM Corporation), Ram Jeyaraman (Microsoft
|
|
Corporation), Anish Karmarkar (Oracle Corporation), Paul Knight
|
|
(Nortel Networks), Philippe Le Hégaret (W3C/MIT), Amelia Lewis
|
|
(TIBCO Software, Inc.), Bozhong Lin (IONA Technologies, Inc.), Mark
|
|
Little (JBoss Inc.), Jeganathan Markandu (Nortel Networks), Jeff
|
|
Mischkinsky (Oracle Corporation), Nilo Mitra (ERICSSON), Eisaku
|
|
Nishiyama (Hitachi, Ltd.), Ales Novy (Systinet Inc.), David Orchard
|
|
(BEA Systems, Inc.), Gilbert Pilz (BEA Systems, Inc.), Rama
|
|
Pulavarthi (Sun Microsystems, Inc.), Alain Regnier (Ricoh Company,
|
|
Ltd.), Tony Rogers (CA), Tom Rutt (Fujitsu Limited), Davanum
|
|
Srinivas (WSO2), Jiri Tejkl (Systinet Inc.), Katy Warr (IBM
|
|
Corporation), Steve Winkler (SAP AG), Ümit Yalçinalp (SAP AG),
|
|
Prasad Yendluri (webMethods, Inc.).</p>
|
|
<p>Previous members of the Working Group were: Lisa Bahler (SAIC -
|
|
Telcordia Technologies), Rebecca Bergersen (IONA Technologies,
|
|
Inc.), Vladislav Bezrukov (SAP AG), Dave Chappell (Sonic Software),
|
|
Ugo Corda (Sun Microsystems, Inc.), Michael Eder (Nokia), Yaron
|
|
Goland (BEA Systems, Inc.), Martin Gudgin (Microsoft Corporation),
|
|
Arun Gupta (Sun Microsystems, Inc.), Hugo Haas (W3C), Marc Hadley
|
|
(Sun Microsystems, Inc), Jonathan Marsh (Microsoft Corporation),
|
|
Mark Nottingham (BEA Systems, Inc.), Mark Peel (Novell, Inc.),
|
|
Harris Reynolds (webMethods, Inc.), Rich Salz (IBM Corporation),
|
|
Davanum Srinivas (Computer Associates), Greg Truty (IBM
|
|
Corporation), Mike Vernal (Microsoft Corporation), Steve Vinoski
|
|
(IONA Technologies, Inc.), Pete Wenzel (Sun Microsystems,
|
|
Inc.).</p>
|
|
<p>The people who have contributed to <a href=
|
|
"http://lists.w3.org/Archives/Public/public-ws-addressing/">discussions
|
|
on public-ws-addressing@w3.org</a> are also gratefully
|
|
acknowledged.</p>
|
|
</div>
|
|
<div class="div1">
|
|
<h2><a name="actioncompatibility" id="actioncompatibility"></a>B.
|
|
Compatibility of [action] with previous versions of WS-Addressing
|
|
(Non-Normative)</h2>
|
|
<p>This section describes strategies for choosing [action] values
|
|
consistent between this specification and the WS-Addressing Member
|
|
Submission published 10 August 2004 (hereafter called "2004-08").
|
|
The wsa200408 namespace prefix below refers to the
|
|
"http://schemas.xmlsoap.org/ws/2004/08/addressing" namespace
|
|
defined in the 2004-08 version.</p>
|
|
<p>The WS-Addressing 1.0 [action] property, which identifies the
|
|
semantics implied by a message, is semantically equivalent to the
|
|
[action] message information header defined in the 2004-08 version.
|
|
Authors are therefore advised to use the same value for 1.0
|
|
[action] and 2004-08 [action].</p>
|
|
<p>However, when describing services in WSDL, the namespace of the
|
|
Action attribute used to associate values with WSDL operations
|
|
differs in the two versions (wsam:Action versus wsa200408:Action),
|
|
and the default action pattern in WS-Addressing 1.0 differs in two
|
|
respects from that in the 2004-08 version: the [delimiter] can be
|
|
either "/" or ":" in 1.0 while in 2004-08 it is always "/", and the
|
|
default action pattern for faults is closer to that of other
|
|
messages instead of a constant URI.</p>
|
|
<p>If a default action pattern is desired, this specification
|
|
recommends the 1.0 default action pattern. The 200408 [action] can
|
|
be made consistent with the 1.0 default by:</p>
|
|
<ol class="enumar">
|
|
<li>
|
|
<p>specifying wsa200408:Action explicitly when the targetNamespace
|
|
is a URN, and</p>
|
|
</li>
|
|
<li>
|
|
<p>specifying wsa200408:Action explicitly when the message is a
|
|
fault.</p>
|
|
</li>
|
|
</ol>
|
|
<p>If the targetNamespace is a URN, it is not advisable to use the
|
|
2004-08 default action pattern, as it leads to malformed IRIs. If
|
|
the targetNamespace is not a URN, and the 2004-08 default action
|
|
pattern is in use, the 1.0 [action] value can be made consistent
|
|
by:</p>
|
|
<ol class="enumar">
|
|
<li>
|
|
<p>specifying wsam:Action explicitly when the message is a
|
|
fault.</p>
|
|
</li>
|
|
</ol>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|