NEW ISSUE: making wsa:Action optional

There is some confusion as to what precisely wsa;Action is meant to 
represent in the current specification. However, most people seem to 
have the opinion that it is used to represent the semantics of the 
message contained in the SOAP body. In which case, this element is used 
for dispatching the message (similar to using an opcode in other 
distributed environments).

However, if wsa:Action is used to optimize dispatching so that the same 
semantics do not have to be obtained by parsing the entire SOAP body, 
this is purely an optimization. As such, its presence or lack thereof 
does not affect the architecture/model defined by the specification; it 
is entirely feasible to implement the equivalent distributed 
application without wsa:Action, albeit in (perhaps) a less performant 
manner.

The argument for adding wsa:Action is that many vendors want this 
optimization and standardizing on it has merit. The argument against is 
that dispatching isn't part of addressing and so shouldn't be in this 
specification; furthermore, there are vendors and users who simply 
don't need this functionality. In fact its presence doesn't even mean 
that the receiver has to use it, so in that regard it's optional at the 
receiver and yet mandatory at the sender.

What the discussions over the past few days appear to show is that 
making wsa:Action mandatory is wrong. In the case where it isn't needed 
it encourages vendors/users to fill it with something that isn't valid 
"because it's there", which adversely affects interoperability. The 
lack of wsa:Action in a header sends a clear message to any receiver; 
its presence does not.

Therefore, I propose that we make wsa:Action optional.

Mark.


----
Mark Little,
Chief Architect,
Arjuna Technologies Ltd.

www.arjuna.com

Received on Saturday, 6 November 2004 09:14:54 UTC