New Issue: include wsaw:Action in the EPR reference metadata

Issue:

Currently, it is not possible to target an EPR in conformance with the 
WS-A spec unless the client has access to the target WSDL, or the target 
WSDL is embedded within the target EPR. 

This is because the reference WSDL metadata does not provide a mechanism 
to specify any explicitly defined wsaw:action.   In order to generate the 
mandatory [action] MAP, the client requires this information.  Text from 
the 4.2.1 Explicit action section of the spec:

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 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 wsaw:Action attribute on a WSDL input element where a 
SOAPAction value is specified, the value of the [action] property for the 
input message is the value of the SOAPAction specified. Web Services 
Addressing 1.0 - SOAP Binding[WS-Addressing-SOAP] specifies restrictions 
on the relationship between the values of [action] and SOAPAction for SOAP 
1.1 and SOAP 1.2.

Proposed resolution:

Please could we extend the section on Referencing metadata from an EPR to 
include a marker for explicitly defined wsaw:Action?  This could equate to 
the wsaw:Action or the SOAPAction - as described above.  Here is the 
relevant  text from the WSDL spec,  with some suggested changes in bold:

Referencing WSDL Metadata from an EPR

The WSDL binding of Web Services Addressing introduces the following 
element and attribute information items for referencing WSDL metadata from 
an EPRs metadata section:

wsaw:InterfaceName 
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.
wsaw:ServiceName 
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.

wsaw:ServiceName/@EndpointName 
An NCName that identifies one endpoint amongst the set identified by 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.

The element information items defined above are used in an EPRs metadata 
section. The following shows an example endpoint reference. This 
references the interface named "fabrikam:Inventory" at the endpoint IRI 
"http://example.com/www.fabrikam/acct". Note the use of the WSDL[WSDL 2.0] 
wsdlLocation attribute.

wsaw:Action
A URI specifying the explicitly defined [action] property for messages 
targeted at this EPR (refer to section 4.2.1 Explicit Association).

Example 2-1. Example endpoint reference.

<wsa:EndpointReference
    xmlns:wsa="http://www.w3.org/@@@@/@@/addressing"
    xmlns:fabrikam="http://example.com/fabrikam">
  <wsa:Address>http://example.com/fabrikam/acct</wsa:Address>
  <wsa:Metadata
      xmlns:wsdli="http://www.w3.org/2005/08/wsdl-instance"
      wsdli:wsdlLocation="http://example.com/fabrikam 
http://example.com/fabrikam.wsdl">
    <wsaw:InterfaceName>fabrikam:Inventory</wsaw:InterfaceName>
  <wsaw:Action>"http://example.com/Quote"</wsaw:Action>
  </wsa:Metadata>
</wsa:EndpointReference>

Received on Tuesday, 24 January 2006 11:39:46 UTC