- From: Hugo Haas <hugo@w3.org>
- Date: Fri, 5 Aug 2005 15:27:00 +0200
- To: public-ws-desc-comments@w3.org
- Message-ID: <20050805132700.GH18292@w3.org>
Comment on: Web Services Description Language (WSDL) Version 2.0 Part 2: Adjuncts http://www.w3.org/TR/2005/WD-wsdl20-adjuncts-20050803/ and: Web Services Description Language (WSDL) Version 2.0 SOAP 1.1 Binding http://www.w3.org/TR/2005/WD-wsdl20-soap11-binding-20050803/ {soap action} is defined as a property of Binding Operation component[4]: {soap action} OPTIONAL. A xs:anyURI, which is an absolute IRI as defined by [IETF RFC 3987], to the Binding Operation component. The value of this property identifies the value of the SOAP Action Feature (as defined for this specific operation), as specified in the binding rules of bindings to specific versions of SOAP (see 5.11.3 Default Binding Rules for the SOAP 1.2 binding when the value of the {soap version} property of the Binding component is "1.2"). The SOAP 1.2 binding states[5]: SOAP Action Feature. If a value for the {soap action} property of a Binding Operation component has NOT been specified then the SOAP Action Feature (see [SOAP 1.2 Part 2: Adjuncts]) has NO value assigned by the Binding component. Otherwise, the value of the {soap action} property of a Binding Operation component is the value of the SOAP Action Feature for all messages of the corresponding Interface Operation component. The SOAP 1.1 binding states[6]: The value of the {soap action} property identifies the value of the SOAP 1.1 SOAPAction HTTP request header field, Section 6.1.1, SOAP 1.1 specification [SOAP11]. I believe that this is the wrong granularity. The SOAPAction HTTP header in SOAP 1.1[1] and the SOAP Action Feature in SOAP 1.2[2] are properties of a message. It is unclear, as shown by WS-Addressing and its wsa:Action[3] which has similar properties and motivations, that a single action value can be applied to all the messages of an operation in all cases. I propose the following change: place {soap action} at the Binding Message Reference, Binding Fault and Binding Fault Reference levels. Editorially, I think the cleanest way is: - remove the definition of {soap action} from section 5.8 Binding Operations - add a subsection called "5.9 Assigning SOAP Action values to Messages" defining the {soap action} property on the Binding Message Reference, Binding Fault and Binding Fault Reference components - say in the SOAP 1.2 binding that the value of {soap action} sets the value of the SOAP Action Feature of the corresponding SOAP message or fault - say in the SOAP 1.1 binding that the value of {soap action} sets the value of the SOAPAction HTTP header for an HTTP Request; say that it MUST be ignored in other cases (it's not explicitly said right now) As a related editorial side note, the SOAP 1.1 binding also says[7]: SOAP Action. If the Binding Operation component's {soap action} property has NOT been specified, then the Binding component assigns quoted string value to the SOAP 1.1 SOAPAction HTTP Header Field (see [SOAP11]). I assume that "quoted string" means "an quoted empty string ("")". If not, I don't know what it means. It should be clarified. Cheers, Hugo 1. http://www.w3.org/TR/2000/NOTE-SOAP-20000508/#_Toc478383528 2. http://www.w3.org/TR/2003/REC-soap12-part2-20030624/#ActionFeature 3. http://www.w3.org/TR/2005/WD-ws-addr-wsdl-20050413/#explicitaction 4. http://www.w3.org/TR/2005/WD-wsdl20-adjuncts-20050803/#property-BindingOperation.soapaction 5. http://www.w3.org/TR/2005/WD-wsdl20-adjuncts-20050803/#soap12-defaults 6. http://www.w3.org/TR/2005/WD-wsdl20-soap11-binding-20050803/#SOAP11 7. http://www.w3.org/TR/2005/WD-wsdl20-soap11-binding-20050803/#soap11-defaults -- Hugo Haas - W3C mailto:hugo@w3.org - http://www.w3.org/People/Hugo/
Received on Friday, 5 August 2005 13:27:10 UTC