- From: Jean-Jacques Moreau via cvs-syncmail <cvsmail@w3.org>
- Date: Wed, 04 May 2005 10:45:38 +0000
- To: public-ws-desc-eds@w3.org
Update of /sources/public/2002/ws/desc/wsdl20
In directory hutz:/tmp/cvs-serv31779
Modified Files:
wsdl20.xml
Log Message:
Rewrote the "Operation Name Mapping Requirement" section to make it best practice.
Index: wsdl20.xml
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.xml,v
retrieving revision 1.251
retrieving revision 1.252
diff -C2 -d -r1.251 -r1.252
*** wsdl20.xml 4 May 2005 09:58:03 -0000 1.251
--- wsdl20.xml 4 May 2005 10:45:36 -0000 1.252
***************
*** 6341,6353 ****
description container, the {name} property MUST be unique. </p>
- <p>Additionally, the Interface component that is the value of
- the {interface} property of a Service component MUST satisfy the Operation
- Name Mapping requirement, as defined below. This requirement is intended
- to ensure that a received message can be uniquely mapped to a
- corresponding wsdl:operation.
- </p>
-
<div4 id="Service_OperationName">
! <head>Operation Name Mapping Requirement (non-normative)</head>
<note>
--- 6341,6346 ----
description container, the {name} property MUST be unique. </p>
<div4 id="Service_OperationName">
! <head>Operation Name Mapping (non-normative)</head>
<note>
***************
*** 6355,6389 ****
</note>
! <p>Consider the Interface component specified in the {interface}
! property of a Service component. Further, consider all Interface Operation
components specified in the {interface operations} property of that Interface
component and the Interface component it directly or indirectly extends.
! Further, consider all Interface Message Reference components specified
in the {interface message references} properties of said Interface Operation
! components. Further, consider all said Interface Message Reference components that
have the same value for their {direction} property (i.e., either the token
! <emph>in</emph> or the token <emph>out</emph>). If the {message content
! model} property of any of these Interface Message Reference components has a value
! of “#any”, or if more than one of these Interface Message Reference
! components has a value of “#none”, or if the qualified names of
! the global element declarations specified by the values of the {element declaration}
! properties of these Interface Message Reference components are not unique
! when considered together, and the Operation Name Mapping Requirement needs to be engaged,
! then either one of the following two conditions applies:
! </p>
! <olist>
! <item><p>the {features} property of the Service or Interface components
contains a Feature component, having a {required} property with
! a value of <emph>true</emph>, that unambiguously identifies the
mechanism that a message sender is required to support in order to
enable the message recipient to unambiguously determine the name of the
! Interface Operation component that is intended to be associated
! with the received message; or
</p>
</item>
! <item><p>the &EII; for the Interface component
contains an extension element (i.e., an element that is not
in the &wsdl-ns; namespace), having a wsdl:required &AII; with
! a value of <attval>true</attval>, that unambiguously identifies
the mechanism that a message sender is required to support in
order to enable the message recipient to unambiguously determine
--- 6348,6405 ----
</note>
! <p>It is generally desirable that, when a message recipient receives a message,
! it knows how to handle the message. In WSDL 2.0 terms, this means being
! able to map back the message to a single Interface Operation. However,
! this is NOT always possible. There are cases when multiple Interface Operations
! could correspond to the same received message. This happens either when:
! </p>
!
! <ulist>
! <item><p>the {message content model} property of any of these
! Interface Message Reference components (see below) has a value of “#any”; or
! </p></item>
!
! <item><p>more than one of these Interface Message Reference components (see below)
! has a value of “#none”; or
! </p></item>
!
! <item><p>the qualified names of the global element declarations specified
! by the values of the {element declaration} properties of these Interface Message Reference
! components (see below) are NOT unique when considered together.
! </p></item>
! </ulist>
!
! <p>The Interface Message Reference components above are defined as follows.
! First, consider the Interface component specified in the {interface}
! property of a Service component. Second, consider all Interface Operation
components specified in the {interface operations} property of that Interface
component and the Interface component it directly or indirectly extends.
! Third, consider all Interface Message Reference components specified
in the {interface message references} properties of said Interface Operation
! components. Fourth, consider the Interface Message Reference components that
have the same value for their {direction} property (i.e., either the token
! <emph>in</emph> or the token <emph>out</emph>). These are the Interface Message Reference
! components considered above.</p>
!
! <p>If any of the three cases above arise, then one of the following two
! alternatives can be used. Note these alternatives are in no way mandated by
! this specification and are considered best practice only.</p>
!
! <ulist>
! <item><p><b>Feature</b>.
! The {features} property of the Service or Interface components
contains a Feature component, having a {required} property with
! a value of <emph>true</emph>. The feature unambiguously identifies the
mechanism that a message sender is required to support in order to
enable the message recipient to unambiguously determine the name of the
! Interface Operation component that is intended to be associated
! with the received message.
</p>
</item>
! <item><p><b>Extension</b>.
! The &EII; for the Interface component
contains an extension element (i.e., an element that is not
in the &wsdl-ns; namespace), having a wsdl:required &AII; with
! a value of <attval>true</attval>. The extension element unambiguously identifies
the mechanism that a message sender is required to support in
order to enable the message recipient to unambiguously determine
***************
*** 6392,6401 ****
</p>
</item>
! </olist>
! <p>WS-Addressing <bibref ref="ws-addr-core"/> provides a mechanism for
! implementing the Operation Name Mapping Requirment.
! The WS-Addressing [action] property embeds a value in each message that
! can be used to associate the message with a particular operation.
</p>
--- 6408,6417 ----
</p>
</item>
! </ulist>
! <p>The WS-Addressing <bibref ref="ws-addr-core"/> speficiation allready
! provides a disambiguation mechanism.
! It defines an [action] property whose value is embedded in each message,
! and that can be used to associate the message with a particular operation.
</p>
***************
*** 9408,9412 ****
This can be achieved by using one of the following alternatives:
</p>
! <olist>
<item><p>
<b>Single document</b>.
--- 9424,9428 ----
This can be achieved by using one of the following alternatives:
</p>
! <ulist>
<item><p>
<b>Single document</b>.
***************
*** 9434,9438 ****
The definition of such an extension is outside the scope of this specification.
</p></item>
! </olist>
</div2>
--- 9450,9454 ----
The definition of such an extension is outside the scope of this specification.
</p></item>
! </ulist>
</div2>
***************
*** 9660,9663 ****
--- 9676,9686 ----
<td>20050504</td>
<td>JJM</td>
+ <td>Rewrote the "Operation Name Mapping Requirement" section to make
+ it best practice.</td>
+ </tr>
+
+ <tr>
+ <td>20050504</td>
+ <td>JJM</td>
<td>Rewrote the "Single Interface" section, as per editorial AI dated 2005-01-19.</td>
</tr>
Received on Wednesday, 4 May 2005 10:45:43 UTC