- From: Marc Hadley <mhadley@dev.w3.org>
- Date: Tue, 25 Jan 2005 22:23:55 +0000
- To: public-ws-addressing-eds@w3.org
Update of /sources/public/2004/ws/addressing
In directory hutz:/tmp/cvs-serv18797
Modified Files:
ws-addr-wsdl.xml
Log Message:
Added descriptive text for wsa:Action attribute. Fixed references to WSDL 1.1 to be more explicit version-wise.
Index: ws-addr-wsdl.xml
===================================================================
RCS file: /sources/public/2004/ws/addressing/ws-addr-wsdl.xml,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** ws-addr-wsdl.xml 24 Jan 2005 10:12:12 -0000 1.19
--- ws-addr-wsdl.xml 25 Jan 2005 22:23:53 -0000 1.20
***************
*** 125,131 ****
currently appropriately covered by WSDL 1.1 [<bibref ref="WSDL11"/>].</p>
<p>To support these scenarios, we define a lightweight and extensible mechanism to
! dynamically identify and describe service endpoints and instances. Endpoint references
! logically extend the WSDL description model (e.g., portTypes, bindings, etc.), but
! do not replace it. Endpoint references can be used in the following cases:</p>
<ulist>
<item>
--- 125,131 ----
currently appropriately covered by WSDL 1.1 [<bibref ref="WSDL11"/>].</p>
<p>To support these scenarios, we define a lightweight and extensible mechanism to
! dynamically identify and describe service endpoints and instances. Endpoint
! references logically extend the WSDL description model (e.g., portTypes, bindings,
! etc.), but do not replace it. Endpoint references can be used in the following cases:</p>
<ulist>
<item>
***************
*** 179,187 ****
<head> Associating Action with WSDL Operations</head>
<p>WS-Addressing defines two mechanisms to associate an action with input, output and
! fault elements within a WSDL port type.</p>
<div2 id="_Toc77464326">
<head> Explicit Association</head>
! <p>The action may be explicitly associated using the wsa:Action attribute or in the
! absence of the attribute the action is defined by the rules in section <specref ref='defactionwsdl20'/> or section <specref ref='defactionwsdl11' /> as appropriate.</p>
<p>For example consider the following WSDL excerpt:</p>
<example>
--- 179,186 ----
<head> Associating Action with WSDL Operations</head>
<p>WS-Addressing defines two mechanisms to associate an action with input, output and
! fault elements within a WSDL description: explicit and defaulting. Explicit association is described in section <specref ref="_Toc77464326"/>; action defaulting is described in section <specref ref="defactionwsdl11"/> for WSDL 1.1 and section <specref ref="defactionwsdl20"/> for WSDL 2.0.</p>
<div2 id="_Toc77464326">
<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 extension on the WSDL input, output and fault elements.</p>
<p>For example consider the following WSDL excerpt:</p>
<example>
***************
*** 228,234 ****
<div2 id="defactionwsdl20">
<head>Default Action Pattern for WSDL 2.0</head>
! <p>In the absence of the wsa:Action attribute, 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>
<example>
<head>Structure of defaulted wsa:Action URI in WSDL 2.0.</head>
--- 227,233 ----
<div2 id="defactionwsdl20">
<head>Default Action Pattern for WSDL 2.0</head>
! <p>In the absence of the wsa:Action attribute, 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>
<example>
<head>Structure of defaulted wsa:Action URI in WSDL 2.0.</head>
***************
*** 238,287 ****
</example>
<p>For fault messages, the general form of an action URI is as follows:</p>
! <example>
! <head>Structure of default wsa:Action URI for faults</head>
! <eg xml:space='preserve'>
[target namespace]/[interface name]/[fault name]
</eg>
! </example>
<p>The "/" is a literal character to be included in the action. The values of the
properties are as defined below.</p>
! <p>[target namespace] is the {target namespace} of the interface. If
! [target namespace] ends with a "/" an additional "/" is not added.</p>
<p>[interface name] is the {name} of the interface.</p>
! <p>[operation name] is the {name} of the operation.</p>
! <p>[fault name] is the {name} of the fault.</p>
! <p>[direction token] is:</p>
! <ulist>
! <item>
! <p>
! Empty ("") where the operation's {message exchange pattern} is <attval>&wsdl20nsuri;/in-only</attval>, <attval>&wsdl20nsuri;/robust-in-only</attval>, <attval>&wsdl20nsuri;/out-only</attval>, or <attval>&wsdl20nsuri;/robust-out-only</attval>.
! </p>
! </item>
! <item>
! <p>
! "Request" where the operation's {message exchange pattern} is <attval>&wsdl20nsuri;/in-out</attval> or <attval>&wsdl20nsuri;/in-optional-out</attval> and the message reference's {message label} = 'in'.
! </p>
! </item>
! <item>
! <p>
! "Solicit" where the operation's {message exchange pattern} is <attval>&wsdl20nsuri;/out-in</attval> or <attval>&wsdl20nsuri;/out-optional-in</attval> and the message reference's {message label} = 'out'.
! </p>
! </item>
! <item>
! <p>
! "Response" where the operation's {message exchange pattern} is <attval>&wsdl20nsuri;/in-out</attval> or <attval>&wsdl20nsuri;/in-optional-out</attval> and the message reference's {message label} = 'out'.
! </p>
! </item>
! <item>
! <p>
! "Response" where the operation's {message exchange pattern} is <attval>&wsdl20nsuri;/out-in</attval>, or <attval>&wsdl20nsuri;/out-optional-in</attval> and the message reference's {message label} = 'in'.
! </p>
! </item>
! <item>
! <p>
! {message label} where the {message exchange pattern} is not one of the MEP URIs defined in WSDL 2.0 Part 2.
! </p>
! </item>
! </ulist>
<p>For example consider the following WSDL excerpt:</p>
<example>
--- 237,291 ----
</example>
<p>For fault messages, the general form of an action URI is as follows:</p>
! <example>
! <head>Structure of default wsa:Action URI for faults</head>
! <eg xml:space="preserve">
[target namespace]/[interface name]/[fault name]
</eg>
! </example>
<p>The "/" is a literal character to be included in the action. The values of the
properties are as defined below.</p>
! <p>[target namespace] is the {target namespace} of the interface. If [target
! namespace] ends with a "/" an additional "/" is not added.</p>
<p>[interface name] is the {name} of the interface.</p>
! <p>[operation name] is the {name} of the operation.</p>
! <p>[fault name] is the {name} of the fault.</p>
! <p>[direction token] is:</p>
! <ulist>
! <item>
! <p> Empty ("") where the operation's {message exchange pattern} is
! <attval>&wsdl20nsuri;/in-only</attval>,
! <attval>&wsdl20nsuri;/robust-in-only</attval>,
! <attval>&wsdl20nsuri;/out-only</attval>, or
! <attval>&wsdl20nsuri;/robust-out-only</attval>. </p>
! </item>
! <item>
! <p> "Request" where the operation's {message exchange pattern} is
! <attval>&wsdl20nsuri;/in-out</attval> or
! <attval>&wsdl20nsuri;/in-optional-out</attval> and the message
! reference's {message label} = 'in'. </p>
! </item>
! <item>
! <p> "Solicit" where the operation's {message exchange pattern} is
! <attval>&wsdl20nsuri;/out-in</attval> or
! <attval>&wsdl20nsuri;/out-optional-in</attval> and the message
! reference's {message label} = 'out'. </p>
! </item>
! <item>
! <p> "Response" where the operation's {message exchange pattern} is
! <attval>&wsdl20nsuri;/in-out</attval> or
! <attval>&wsdl20nsuri;/in-optional-out</attval> and the message
! reference's {message label} = 'out'. </p>
! </item>
! <item>
! <p> "Response" where the operation's {message exchange pattern} is
! <attval>&wsdl20nsuri;/out-in</attval>, or
! <attval>&wsdl20nsuri;/out-optional-in</attval> and the message
! reference's {message label} = 'in'. </p>
! </item>
! <item>
! <p> {message label} where the {message exchange pattern} is not one of the
! MEP URIs defined in WSDL 2.0 Part 2. </p>
! </item>
! </ulist>
<p>For example consider the following WSDL excerpt:</p>
<example>
***************
*** 301,307 ****
<p> [targetNamespace] = http://example.com/stockquote</p>
<p> [interface name] = StockQuoteInterface</p>
! <p> [operation name] = GetLastTradePrice</p>
! <p> [direction token] for input is Request </p>
! <p> [direction token] for output is Response</p>
<p>Applying the pattern above with these values we have:</p>
<p>input action = http://example.com/stockquote/StockQuoteInterface/GetLastTradePriceRequest</p>
--- 305,311 ----
<p> [targetNamespace] = http://example.com/stockquote</p>
<p> [interface name] = StockQuoteInterface</p>
! <p> [operation name] = GetLastTradePrice</p>
! <p> [direction token] for input is Request </p>
! <p> [direction token] for output is Response</p>
<p>Applying the pattern above with these values we have:</p>
<p>input action = http://example.com/stockquote/StockQuoteInterface/GetLastTradePriceRequest</p>
***************
*** 321,332 ****
</example>
<p>For fault messages, the general form of an action URI is as follows:</p>
! <example>
! <head>Structure of default wsa:Action URI for faults</head>
! <eg xml:space='preserve'>
[target namespace]/[port type name]/[operation name]Fault:[fault name]
</eg>
! </example>
! <p>The "/" and ":" are literal characters to be included in the action. The values of the
! properties are as defined below.</p>
<p>[target namespace] is the target namespace (/definition/@targetNamespace). If
[target namespace] ends with a "/" an additional "/" is not added.</p>
--- 325,336 ----
</example>
<p>For fault messages, the general form of an action URI is as follows:</p>
! <example>
! <head>Structure of default wsa:Action URI for faults</head>
! <eg xml:space="preserve">
[target namespace]/[port type name]/[operation name]Fault:[fault name]
</eg>
! </example>
! <p>The "/" and ":" are literal characters to be included in the action. The values
! of the properties are as defined below.</p>
<p>[target namespace] is the target namespace (/definition/@targetNamespace). If
[target namespace] ends with a "/" an additional "/" is not added.</p>
***************
*** 334,338 ****
<p>[input|output name] is the name of the element as defined in <xspecref
href="http://www.w3.org/TR/wsdl#_names">Section 2.4.5</xspecref> of WSDL 1.1.</p>
! <p>[fault name] is the name of the fault (/definition/porttype/operation/fault/@name).</p>
<p>For example consider the following WSDL excerpt:</p>
<example>
--- 338,342 ----
<p>[input|output name] is the name of the element as defined in <xspecref
href="http://www.w3.org/TR/wsdl#_names">Section 2.4.5</xspecref> of WSDL 1.1.</p>
! <p>[fault name] is the name of the fault (/definition/porttype/operation/fault/@name).</p>
<p>For example consider the following WSDL excerpt:</p>
<example>
***************
*** 355,363 ****
<p> [input name] = GetQuote</p>
<p> [output name] = Quote</p>
! <p> [fault name] = Error</p>
<p>Applying the pattern above with these values we have:</p>
<p>input action = http://example.com/stockquote/StockQuotePortType/GetQuote</p>
<p>output action = http://example.com/stockquote/StockQuotePortType/Quote</p>
! <p>fault action = http://example.com/stockquote/StockQuotePortType/GetLastTradePriceFault:Error</p>
</example>
<p>WSDL defines rules for a default input or output name if the name attribute is
--- 359,367 ----
<p> [input name] = GetQuote</p>
<p> [output name] = Quote</p>
! <p> [fault name] = Error</p>
<p>Applying the pattern above with these values we have:</p>
<p>input action = http://example.com/stockquote/StockQuotePortType/GetQuote</p>
<p>output action = http://example.com/stockquote/StockQuotePortType/Quote</p>
! <p>fault action = http://example.com/stockquote/StockQuotePortType/GetLastTradePriceFault:Error</p>
</example>
<p>WSDL defines rules for a default input or output name if the name attribute is
***************
*** 379,385 ****
<p> [targetNamespace] = http://example.com/stockquote</p>
<p> [port type name] = StockQuotePortType</p>
! <p>According to the rules defined in WSDL 2.4.5, if the name attribute is absent
! for the input of a request response operation the default value is the name
! of the operation "Request" appended.</p>
<p> [input name] = GetLastTradePriceRequest</p>
<p>Likewise, the output defaults to the operation name with "Response" appended.</p>
--- 383,390 ----
<p> [targetNamespace] = http://example.com/stockquote</p>
<p> [port type name] = StockQuotePortType</p>
! <p>According to the rules defined in <xspecref
! href="http://www.w3.org/TR/wsdl#_names">Section 2.4.5</xspecref> 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 "Request" appended.</p>
<p> [input name] = GetLastTradePriceRequest</p>
<p>Likewise, the output defaults to the operation name with "Response" appended.</p>
Received on Tuesday, 1 February 2005 13:40:45 UTC