- From: Marc Hadley via cvs-syncmail <cvsmail@w3.org>
- Date: Fri, 22 Apr 2005 22:37:30 +0000
- To: public-ws-addressing-eds@w3.org
Update of /sources/public/2004/ws/addressing
In directory hutz:/tmp/cvs-serv5667
Modified Files:
ws-addr-wsdl.xml ws-addr-wsdl.xsd
Log Message:
Added issue 21 resolution
Index: ws-addr-wsdl.xml
===================================================================
RCS file: /sources/public/2004/ws/addressing/ws-addr-wsdl.xml,v
retrieving revision 1.42
retrieving revision 1.43
diff -C2 -d -r1.42 -r1.43
*** ws-addr-wsdl.xml 12 Apr 2005 08:07:45 -0000 1.42
--- ws-addr-wsdl.xml 22 Apr 2005 22:37:28 -0000 1.43
***************
*** 58,64 ****
reference Web service endpoints and to facilitate end-to-end addressing of endpoints
in messages. &wsa-wsdl.title; (this document) defines how the abstract
! properties defined in &wsa-core.title; are described using WSDL. WS-Addressing is
! designed to be able to work with WSDL 2.0 [<bibref ref="WSDL20"/>] and also (for backwards
! compatibility with WSDL 1.1 [<bibref ref="WSDL11"/>] described services.</p>
<div2 id="notation">
<head> Notational Conventions</head>
--- 58,64 ----
reference Web service endpoints and to facilitate end-to-end addressing of endpoints
in messages. &wsa-wsdl.title; (this document) defines how the abstract
! properties defined in &wsa-core.title; are described using WSDL. WS-Addressing
! is designed to be able to work with WSDL 2.0 [<bibref ref="WSDL20"/>] and also (for
! backwards compatibility with WSDL 1.1 [<bibref ref="WSDL11"/>] described services.</p>
<div2 id="notation">
<head> Notational Conventions</head>
***************
*** 112,120 ****
<td>http://www.w3.org/2001/XMLSchema</td>
</tr>
</tbody>
</table>
<p>WS-Addressing is defined in terms of the XML Information Set [<bibref
! ref="XMLInfoSet"/>]. WS-Addressing may be used with
! SOAP [<bibref ref="SOAP12-PART1"/>] as described in &wsa-soap.title;[<bibref
ref="WSADDR-SOAP"/>]. The examples in this specification use an XML 1.0
[<bibref ref="XML10"/>] representation but this is not a requirement.</p>
--- 112,133 ----
<td>http://www.w3.org/2001/XMLSchema</td>
</tr>
+ <tr>
+ <td>wsdl</td>
+ <td>Either http://www.w3.org/2004/08/wsdl or
+ http://schemas.xmlsoap.org/wsdl/ depending on context</td>
+ </tr>
+ <tr>
+ <td>wsdl20</td>
+ <td>http://www.w3.org/2004/08/wsdl</td>
+ </tr>
+ <tr>
+ <td>wsdl11</td>
+ <td>http://schemas.xmlsoap.org/wsdl/</td>
+ </tr>
</tbody>
</table>
<p>WS-Addressing is defined in terms of the XML Information Set [<bibref
! ref="XMLInfoSet"/>]. WS-Addressing may be used with SOAP [<bibref
! ref="SOAP12-PART1"/>] as described in &wsa-soap.title;[<bibref
ref="WSADDR-SOAP"/>]. The examples in this specification use an XML 1.0
[<bibref ref="XML10"/>] representation but this is not a requirement.</p>
***************
*** 201,207 ****
service component is also provided inside a descriptions or definitions
component, then the ServiceName SHOULD match the name of (one or more of) the
! WSDL service(s) included therein; the endpoint (port) name SHOULD match as well if
! present. The behavior of an EPR consumer when the ServiceName doesn’t match an
! embedded description is undefined.</p>
<example>
<head>An EPR containing WSDL 2.0 metadata</head>
--- 214,220 ----
service component is also provided inside a descriptions or definitions
component, then the ServiceName SHOULD match the name of (one or more of) the
! WSDL service(s) included therein; the endpoint (port) name SHOULD match as well
! if present. The behavior of an EPR consumer when the ServiceName doesn’t match
! an embedded description is undefined.</p>
<example>
<head>An EPR containing WSDL 2.0 metadata</head>
***************
*** 272,275 ****
--- 285,384 ----
</div2>
</div1>
+ <div1>
+ <head>Indicating Use of WS-Addressing</head>
+ <p>This specification supports two mechanisms for indicating, in a WSDL
+ description, that the endpoint conforms to the WS-Addressing specification. </p>
+ <div2>
+ <head>UsingAddressing Extension Element</head>
+ <p>WS-Addressing defines an empty global element, wsaw:UsingAddressing, that may be
+ used to indicate that an endpoint conforms to the WS-Addressing specification.
+ The wsdl:required attribute MAY be used to indicate whether WS-Addressing Message
+ Addressing Properties are required in messages received from service requesters.</p>
+ <p>A wsaw:UsingAddressing element with a wsdl:required attribute whose value is
+ "true" indicates that messages exchanged with the endpoint MUST contain
+ WS-Addressing Message Addressing Properties. A wsaw:UsingAddressing element with
+ a wsdl:required attribute whose value is "false" indicates that the endpoint
+ will accept input messages with or without WS-Addressing header blocks, and MAY
+ generate output messages containing WS-Addressing headers. If a SOAP binding is
+ used and WS-Addressing header blocks are not present in an input message then
+ WS-Addressing header blocks encoded in the corresponding output message MUST NOT
+ be required to be understood using the SOAP mustUnderstand mechanism.</p>
+ <p>The wsaw:UsingAddressing element SHOULD appear as a child of the wsdl:binding
+ element. Alternatively, the wsaw:UsingAddressing element MAY instead be included
+ as a child of the wsdl20:endpoint (or wsdl11:port) when an endpoint intends to
+ indicate compliance with WS-Addressing for a specific endpoint only.</p>
+ <p>The inclusion of the wsaw:UsingAddressing element indicates that the applicable
+ WS-Addressing specifications are supported within the constraints of the WSDL
+ binding being used. That is, uses of the WS-Addressing specifications that may
+ violate or are inconsistent with the semantics of the endpoint's WSDL binding
+ are not supported unless explicitly stated by some other mechanism.</p>
+ <p>Specifically, when included in a SOAP binding, the wsaw:UsingAddressing marker
+ identifies the use of Web Services Addressing 1.0 bound to SOAP as defined by
+ &wsa-soap.title;[<bibref ref="WSADDR-SOAP"/>].</p>
+ <p>The presence of the wsaw:UsingAddressing element in the binding or
+ endpoint (port) components of the endpoint description does not change the semantics
+ of the binding. E.g. in the case of the WSDL SOAP/HTTP synchronous
+ binding for request-response
+ operations, the presence of the wsaw:UsingAddressing element does not change
+ the requirement that the response message be sent
+ over the same HTTP channel over which the request was received. In this case,
+ the wsa:replyTo header in the request MUST NOT contain an
+ address with a value different from the anonymous URI.</p>
+ <example>
+ <head>Indicating use of WS-Addressing using wsaw:UsingAddressing in WSDL 2.0</head>
+ <eg xml:space="preserve"
+ ><binding name="reservationSOAPBinding"
+ interface="tns:reservationInterface"
+ type="http://www.w3.org/2004/08/wsdl/soap12"
+ wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
+ <wsaw:UsingAddressing wsdl:required="true" />
+ <operation ref="tns:opCheckAvailability"
+ wsoap:mep="http://www.w3.org/2003/05/soap/mep/request-response" />
+ <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" />
+ </binding></eg>
+ </example>
+ <example>
+ <head>Indicating use of WS-Addressing using wsaw:UsingAddressing in WSDL 1.1</head>
+ <eg xml:space="preserve"
+ ><binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsaw:UsingAddressing wsdl:required="true" />
+ <operation name="GetLastTradePrice">
+ <soap:operation soapaction="http://example.com/GetLastTradePrice" />
+ <input>
+ <soap:body use="literal" />
+ </input>
+ <output>
+ <soap:body use="literal" />
+ </output>
+ </operation>
+ </binding></eg>
+ </example>
+ </div2>
+ <div2>
+ <head>WSDL SOAP Module</head>
+ <p>In WSDL 2.0, the wsoap:module construct may be used to declare the use of
+ the WS-Addressing 1.0 Module for the SOAP binding. The meaning of such a
+ wsoap:module declaration is
+ semantically equivalent to wsaw:UsingAddressing in this case. Note
+ that this module is not meaningful when used on WSDL constructs where
+ wsaw:UsingAddressing is not allowed.</p>
+ <p>The WS-Addressing 1.0 SOAP Module is described in
+ &wsa-soap.title;[<bibref ref="WSADDR-SOAP"/>] and is identified with
+ the following URI: &nsuri;/module</p>
+ <example>
+ <head>Indicating use of WS-Addressing using wsoap:module in WSDL 2.0</head>
+ <eg xml:space="preserve"><binding name="reservationSOAPBinding"
+ interface="tns:reservationInterface"
+ type="http://www.w3.org/2004/08/wsdl/soap12"
+ wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
+ <wsoap:module uri="&nsuri;/module" required="true" />
+ <operation ref="tns:opCheckAvailability"
+ wsoap:mep="http://www.w3.org/2003/05/soap/mep/request-response" />
+ <fault ref="tns:invalidDataFault" wsoap:code="soap:Sender" />
+ </binding></eg>
+ </example>
+ </div2>
+ </div1>
<div1 id="actioninwsdl">
<head> Associating Action with WSDL Operations</head>
***************
*** 280,290 ****
<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 <specref ref="explicitaction"
! />; action defaulting (where a unique value for the [action] property is
! automatically generated) is described in section <specref ref="defactionwsdl11"/>
! for WSDL 1.1 and section <specref ref="defactionwsdl20"/> for WSDL 2.0.</p>
<div2 id="explicitaction">
<head> Explicit Association</head>
! <p>WS-Addressing defines a global attribute, wsa:Action, that may 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
--- 389,400 ----
<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 <specref
! ref="explicitaction"/>; action defaulting (where a unique value for the [action]
! property is automatically generated) is described in section <specref
! ref="defactionwsdl11"/> for WSDL 1.1 and section <specref ref="defactionwsdl20"
! /> for WSDL 2.0.</p>
<div2 id="explicitaction">
<head> Explicit Association</head>
! <p>WS-Addressing defines a global attribute, wsaw:Action, that may 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
***************
*** 292,296 ****
<p>For example consider the following WSDL excerpt:</p>
<example>
! <head>Explicit specification of wsa:Action value in a WSDL 2.0 description.</head>
<eg xml:space="preserve"
>
--- 402,406 ----
<p>For example consider the following WSDL excerpt:</p>
<example>
! <head>Explicit specification of wsaw:Action value in a WSDL 2.0 description.</head>
<eg xml:space="preserve"
>
***************
*** 300,306 ****
<operation name="GetLastTradePrice" pattern="&wsdl20nsuri;/in-out">
<input element="tns:GetTradePricesInput" messageLabel="In"
! wsa:Action="http://example.com/GetQuote"/>
<output element="tns:GetTradePricesOutput" messageLabel="Out"
! wsa:Action="http://example.com/Quote"/>
</operation>
</interface>
--- 410,416 ----
<operation name="GetLastTradePrice" pattern="&wsdl20nsuri;/in-out">
<input element="tns:GetTradePricesInput" messageLabel="In"
! wsaw:Action="http://example.com/GetQuote"/>
<output element="tns:GetTradePricesOutput" messageLabel="Out"
! wsaw:Action="http://example.com/Quote"/>
</operation>
</interface>
***************
*** 320,326 ****
<operation name="GetLastTradePrice">
<input message="tns:GetTradePricesInput"
! wsa:Action="http://example.com/GetQuote"/>
<output message="tns:GetTradePricesOutput"
! wsa:Action="http://example.com/Quote"/>
</operation>
</portType>
--- 430,436 ----
<operation name="GetLastTradePrice">
<input message="tns:GetTradePricesInput"
! wsaw:Action="http://example.com/GetQuote"/>
<output message="tns:GetTradePricesOutput"
! wsaw:Action="http://example.com/Quote"/>
</operation>
</portType>
***************
*** 1136,1141 ****
<titleref>Extensible Markup Language (XML) 1.0 (Third Edition)</titleref>, T.
Bray, J. Paoli, C. M. Sperberg-McQueen, and E. Maler, Editors. World Wide Web
! Consortium, 4 February 2004. This version of the XML
! 1.0 Recommendation is http://www.w3.org/TR/2004/REC-xml-20040204. The <loc
href="http://www.w3.org/TR/REC-xml">latest version of XML 1.0</loc> is
available at http://www.w3.org/TR/REC-xml. </bibl>
--- 1246,1251 ----
<titleref>Extensible Markup Language (XML) 1.0 (Third Edition)</titleref>, T.
Bray, J. Paoli, C. M. Sperberg-McQueen, and E. Maler, Editors. World Wide Web
! Consortium, 4 February 2004. This version of the XML 1.0 Recommendation is
! http://www.w3.org/TR/2004/REC-xml-20040204. The <loc
href="http://www.w3.org/TR/REC-xml">latest version of XML 1.0</loc> is
available at http://www.w3.org/TR/REC-xml. </bibl>
***************
*** 1150,1164 ****
<bibl id="XMLInfoSet" key="XML Information Set"
href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">
! <titleref>XML Information Set (Second Edition)</titleref>, J. Cowan and R. Tobin, Editors. World
! Wide Web Consortium, 4 February 2004. This version of the XML Information Set
! Recommendation is http://www.w3.org/TR/2004/REC-xml-infoset-20040204/. The <loc
href="http://www.w3.org/TR/xml-infoset">latest version of XML Information
Set</loc> is available at http://www.w3.org/TR/xml-infoset. </bibl>
<bibl id="XMLSchemaP1" key="XML Schema Structures"
href="http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/">
! <titleref>XML Schema Part 1: Structures Second Edition</titleref>, H. Thompson, D. Beech, M.
! Maloney, and N. Mendelsohn, Editors. World Wide
! Web Consortium, 28 October 2004. This
! version of the XML Schema Part 1 Recommendation is
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028. The <loc
href="http://www.w3.org/TR/xmlschema-1/">latest version of XML Schema Part
--- 1260,1274 ----
<bibl id="XMLInfoSet" key="XML Information Set"
href="http://www.w3.org/TR/2004/REC-xml-infoset-20040204/">
! <titleref>XML Information Set (Second Edition)</titleref>, J. Cowan and R.
! Tobin, Editors. World Wide Web Consortium, 4 February 2004. This version of the
! XML Information Set Recommendation is
! http://www.w3.org/TR/2004/REC-xml-infoset-20040204/. The <loc
href="http://www.w3.org/TR/xml-infoset">latest version of XML Information
Set</loc> is available at http://www.w3.org/TR/xml-infoset. </bibl>
<bibl id="XMLSchemaP1" key="XML Schema Structures"
href="http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/">
! <titleref>XML Schema Part 1: Structures Second Edition</titleref>, H. Thompson,
! D. Beech, M. Maloney, and N. Mendelsohn, Editors. World Wide Web Consortium, 28
! October 2004. This version of the XML Schema Part 1 Recommendation is
http://www.w3.org/TR/2004/REC-xmlschema-1-20041028. The <loc
href="http://www.w3.org/TR/xmlschema-1/">latest version of XML Schema Part
***************
*** 1166,1174 ****
<bibl key="XML Schema Datatypes" id="XMLSchemaP2"
href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/">
! <titleref>XML Schema Part 2: Datatypes Second Edition</titleref>, P. Byron and A. Malhotra,
! Editors. World Wide Web Consortium, 28 October 2004. This version of the XML Schema
! Part 2 Recommendation is http://www.w3.org/TR/2004/REC-xmlschema-2-20041028. The
! <loc href="http://www.w3.org/TR/xmlschema-2/">latest version of XML Schema
! Part 2</loc> is available at http://www.w3.org/TR/xmlschema-2. </bibl>
<bibl id="SOAP12-PART1" key="SOAP 1.2 Part 1: Messaging Framework"
href="http://www.w3.org/TR/2003/REC-soap12-part1-20030624/">
--- 1276,1285 ----
<bibl key="XML Schema Datatypes" id="XMLSchemaP2"
href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/">
! <titleref>XML Schema Part 2: Datatypes Second Edition</titleref>, P. Byron and
! A. Malhotra, Editors. World Wide Web Consortium, 28 October 2004. This version
! of the XML Schema Part 2 Recommendation is
! http://www.w3.org/TR/2004/REC-xmlschema-2-20041028. The <loc
! href="http://www.w3.org/TR/xmlschema-2/">latest version of XML Schema Part
! 2</loc> is available at http://www.w3.org/TR/xmlschema-2. </bibl>
<bibl id="SOAP12-PART1" key="SOAP 1.2 Part 1: Messaging Framework"
href="http://www.w3.org/TR/2003/REC-soap12-part1-20030624/">
Index: ws-addr-wsdl.xsd
===================================================================
RCS file: /sources/public/2004/ws/addressing/ws-addr-wsdl.xsd,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** ws-addr-wsdl.xsd 31 Mar 2005 10:30:01 -0000 1.3
--- ws-addr-wsdl.xsd 22 Apr 2005 22:37:28 -0000 1.4
***************
*** 16,48 ****
[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-->
! <!DOCTYPE xs:schema PUBLIC '-//W3C//DTD XMLSCHEMA 200102//EN'
! 'http://www.w3.org/2001/XMLSchema.dtd' [
<!ENTITY % entities SYSTEM 'entities.dtd' >
%entities;
]>
! <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
! xmlns:tns="&nsuri;/wsdl"
! targetNamespace="&nsuri;/wsdl" blockDefault="#all"
! elementFormDefault="qualified">
!
! <xs:element name="ServiceName" type="tns:ServiceNameType"/>
! <xs:complexType name="ServiceNameType">
! <xs:simpleContent>
! <xs:extension base="xs:QName">
! <xs:attribute name="EndpointName" type="xs:NCName" use="optional"/>
! <xs:anyAttribute namespace="##other" processContents="lax"/>
! </xs:extension>
! </xs:simpleContent>
! </xs:complexType>
!
! <xs:element name="InterfaceName" type="tns:AttributedQNameType"/>
! <xs:complexType name="AttributedQNameType">
! <xs:simpleContent>
! <xs:extension base="xs:QName">
! <xs:anyAttribute namespace="##other" processContents="lax"/>
! </xs:extension>
! </xs:simpleContent>
! </xs:complexType>
!
! <xs:attribute name="Action" type="xs:anyURI"/>
</xs:schema>
--- 16,51 ----
[1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-->
! <!--<!DOCTYPE xs:schema PUBLIC '-//W3C//DTD XMLSCHEMA 200102//EN' 'http://www.w3.org/2001/XMLSchema.dtd' [
! <!ENTITY % entities SYSTEM 'entities.dtd' >
! %entities;
! ]>-->
! <!DOCTYPE xs:schema [
<!ENTITY % entities SYSTEM 'entities.dtd' >
%entities;
]>
! <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="&nsuri;/wsdl"
! targetNamespace="&nsuri;/wsdl" blockDefault="#all" elementFormDefault="qualified">
! <xs:element name="ServiceName" type="tns:ServiceNameType"/>
! <xs:complexType name="ServiceNameType">
! <xs:simpleContent>
! <xs:extension base="xs:QName">
! <xs:attribute name="EndpointName" type="xs:NCName" use="optional"/>
! <xs:anyAttribute namespace="##other" processContents="lax"/>
! </xs:extension>
! </xs:simpleContent>
! </xs:complexType>
! <xs:element name="InterfaceName" type="tns:AttributedQNameType"/>
! <xs:complexType name="AttributedQNameType">
! <xs:simpleContent>
! <xs:extension base="xs:QName">
! <xs:anyAttribute namespace="##other" processContents="lax"/>
! </xs:extension>
! </xs:simpleContent>
! </xs:complexType>
! <xs:attribute name="Action" type="xs:anyURI"/>
! <xs:element name="UsingAddressing">
! <xs:complexType>
! <xs:anyAttribute namespace="##other" processContents="lax"/>
! </xs:complexType>
! </xs:element>
</xs:schema>
Received on Friday, 22 April 2005 22:37:36 UTC