- From: Martin Gudgin <mgudgin@dev.w3.org>
- Date: Mon, 24 Jan 2005 10:12:14 +0000
- To: public-ws-addressing-eds@w3.org
Update of /sources/public/2004/ws/addressing
In directory hutz:/tmp/cvs-serv20452
Modified Files:
ws-addr-wsdl.xml
Log Message:
Incorporated resolution of i034 and i035; default action URI for WSDL 2.0 and default action URI for faults. All edits in section 3
Index: ws-addr-wsdl.xml
===================================================================
RCS file: /sources/public/2004/ws/addressing/ws-addr-wsdl.xml,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** ws-addr-wsdl.xml 18 Jan 2005 04:01:35 -0000 1.18
--- ws-addr-wsdl.xml 24 Jan 2005 10:12:12 -0000 1.19
***************
*** 8,11 ****
--- 8,12 ----
<!ENTITY document.status "Editors' copy $Date$">
<!ENTITY wsa-title "&wsa-wsdl.title;">
+ <!ENTITY wsdl20nsuri "http://www.w3.org/@@@@/@@/wsdl" >
]>
<?xml-stylesheet type='text/xsl' href='xmlspec-addressing.xsl'?>
***************
*** 182,189 ****
<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 rule in section 3.3.2.</p>
<p>For example consider the following WSDL excerpt:</p>
<example>
! <head>Explicit specification of wsa:Action value in a WSDL description.</head>
<eg xml:space="preserve">
<definitions targetNamespace="http://example.com/stockquote" ...>
--- 183,210 ----
<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>
! <head>Explicit specification of wsa:Action value in a WSDL 2.0 description.</head>
! <eg xml:space="preserve">
! <definitions targetNamespace="http://example.com/stockquote" ...>
! ...
! <interface name="StockQuoteInterface">
! <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>
! ...
! </definitions>
! </eg>
! </example>
! <p>The action for the input of the GetLastTradePrice operation within the
! StockQuoteInterface is explicitly defined to be http://example.com/GetQuote. The
! action for the output of this same operation is http://example.com/Quote.</p>
! <example>
! <head>Explicit specification of wsa:Action value in a WSDL 1.1 description.</head>
<eg xml:space="preserve">
<definitions targetNamespace="http://example.com/stockquote" ...>
***************
*** 205,210 ****
action for the output of this same operation is http://example.com/Quote.</p>
</div2>
! <div2 id="_Toc77464327">
! <head> Default Action Pattern</head>
<p>In the absence of the wsa:Action attribute, the following pattern is used to
construct a default action for inputs and outputs. The general form of an action
--- 226,314 ----
action for the output of this same operation is http://example.com/Quote.</p>
</div2>
! <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>
! <eg xml:space="preserve">
! [target namespace]/[interface name]/[operation name][direction token]
! </eg>
! </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>
! <head>Example WSDL without explicit wsa:Action values with explicit message names.</head>
! <eg xml:space="preserve">
! <definitions targetNamespace="http://example.com/stockquote" ...>
! ...
! <interface name="StockQuoteInterface">
! <operation name="GetLastTradePrice" pattern="&wsdl20nsuri;/in-out">
! <input element="tns:GetTradePricesInput" messageLabel="in" name="GetQuote"/>
! <output element="tns:GetTradePricesOutput" messageLabel="out" name="Quote"/>
! </operation>
! </portType>
! ...
! </definitions>
! </eg>
! <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>
! <p>output action = http://example.com/stockquote/StockQuoteInterface/GetLastTradePriceResponse</p>
! </example>
! </div2>
! <div2 id="defactionwsdl11">
! <head> Default Action Pattern for WSDL 1.1</head>
<p>In the absence of the wsa:Action attribute, the following pattern is used to
construct a default action for inputs and outputs. The general form of an action
***************
*** 216,220 ****
</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 (/definition/@targetNamespace). If
--- 320,331 ----
</eg>
</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
***************
*** 223,229 ****
<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>For fault messages, this pattern is not applied. Instead, the following URI is
! the default action URI for fault messages: <code>&nsuri;/fault</code>
! </p>
<p>For example consider the following WSDL excerpt:</p>
<example>
--- 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>
***************
*** 236,239 ****
--- 345,349 ----
<input message="tns:GetTradePricesInput" name="GetQuote"/>
<output message="tns:GetTradePricesOutput" name="Quote"/>
+ <fault message="tns:ErrorMessage" name="Error"/>
</operation>
</portType>
***************
*** 245,251 ****
--- 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
Received on Tuesday, 1 February 2005 13:40:45 UTC