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

[action] is a per-operation kind of thing whereas an EPR references  
an endpoint that potentially supports multiple operations. I'm not  
sure it makes sense to specify [action] on a per-endpoint basis ?

An alternative would be to make [action] optional or to define a  
standard "process message" default value for [action] but we've  
already discussed and rejected those alternatives.

Marc.

On Jan 24, 2006, at 6:38 AM, Katy Warr wrote:

>
> 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>

---
Marc Hadley <marc.hadley at sun.com>
Business Alliances, CTO Office, Sun Microsystems.

Received on Tuesday, 24 January 2006 14:11:16 UTC