- From: Sanjiva Weerawarana <sanjiva@opensource.lk>
- Date: Thu, 21 Apr 2005 17:33:53 +0600
- To: <www-ws-desc@w3.org>
- Cc: <www-ws-addressing@w3.org>
This is to close the action item I've had pending since the Nov F2F. (That's the one related to the operation name feature minority opinion I believe.) I propose that we add an OPTIONAL {action} property to message and fault reference components. The value of this property would be a URI (or an IRI going with the WS-Addr style). The rules for this are basically what are written down in "WS Addressing 1.0 - WSDL Binding" in section 3. Basically: - user may set any value - if a value is not set there's an algorithm defined to compute a default (see the WS-Addr doc for the algorithm) The second part is the SOAP and HTTP bindings of this stuff. For SOAP its quite easy and obvious: - for SOAP 1.1, the value of the action property populates the SOAPAction header. - for SOAP 1.2, the value populates the "action" property of the content type header. In either case, if WS-Addressing is engaged, then the value of the {action} property becomes the value of wsa:Action (as well (?); yes I believe so). How do you indicate that WS-Addressing is engaged? That's easy; you use <wsoap:module uri=".."/> to turn on the WS-Addressing module by using the URI defined by the WS-Addr specification. The HTTP binding- there's no obvious solution but I see a couple of approaches that could work. The simplest is to define a special query parameter name (is that the right word?) to add to the location property; say "wsdl:Action". So the value would find its way into the HTTP URI as a query parameter then. The alternative is to define a variation of one of the input serializations (or augment one of them; not sure) to handle the additional parameter, may be to put it as part of the path itself. IMO the idea of having an automagic query parameter is the simplest approach and works just fine. Thus if we adopt this proposal we could also remove /binding/operation/@wsoap:action, thereby eliminating a very common reason to have to re-list operations in the binding. Ah, simplification. ===== This proposal amounts to shamelessly copying the good work done by the WS-Addr group to our document. After we agree to do that, I suggest we ask them to drop that part from their doc and simply refer to our doc. Of course they will continue to document how to do it for WSDL 1.1. Doing this makes our two specs work together really quite seamlessly. It seems to me that doing anything less would be uncivilized. Comments from the WS-Addr folks would be very welcome too; hence the cc. Sanjiva. (Observer/Invited Expert on the WSDL group ;-)!)
Received on Thursday, 21 April 2005 11:34:33 UTC