Re: eliminating <message>: a few additional thoughts

Sanjiva Weerawarana wrote:

>"Christopher B Ferris" <chrisfer@us.ibm.com> writes:
>  
>
>>Not sure I would agree... WS-I Basic Profile 1.0 has constrained SOAP1.1 
>>such that there must be but a single
>>child element of the SOAP:Body element. I am not convinced that this 
>>constraint will be changed for SOAP1.2.
>>    
>>
I agree with Chris. More on this below.

>Hey, excellent!
>
>If WS-I BP has already outlawed multiple child elements, then why
>would we do @body at all?? We're just setting up for profiling to
>say "only use @element, never use @body"!!!
>
We are in favor of using only element for the reasons that are stated 
for interoperability.

During the discussions of this proposal in the mini task force, we have 
observed that having the @body option provides a way to multiple 
elements as the content of the soap:body. Using this option, the 
operation name does not appear as part of the message. Oracle regards 
this  as a problem for interoperability. Observe that one may try to 
construct an RPC mapping for this case following the same set of rules 
for the soap:Body instead to obtain RPC signatures. This is not covered 
by the proposal but some tools may attempt  to do this if allowed. 
However, the operation name, which is critical for generating signatures 
is missing! As a result of this, the name of the operation would need to 
be supplied out of band. For example,  some products use soapAction to 
indicate the name of the operation as it is not contained as part of the 
message in this particular case. Considering that the soapAction is 
deprecated, a replacement would need to be "devised" to indicate the 
name of the operation.

Unless the communication of the operation name is specifiable in an 
interoperable way, we are not in favor of supporting the complexType 
case. Given that multiple elements in the soap:Body is outlawed by BP 
1.0, I am in favor of  restricting the contents to be a single element 
only.

>
>Now I have a basis for arguing that we should only do @element. Note
>that that makes the syntax very natural and simple:
>
>   <operation name="ncname">
>     <input [body="qname-of-elem"] [headers="list-of-qnames-of-elems"]/>
>     <output [body="qname-of-elem"] [headers="list-of-qnames-of-elems"]/>
>  </operation>
>
>Clearly at least one of @body or @headers is required. 
>  
>
I like this. It simplifies the proposal and it is BP 1.0 compliant.

>Sanjiva.
>  
>
More on this later,

Regards.

--umit

>  
>
-- 
Umit Yalcinalp                                  
Consulting Member of Technical Staff
ORACLE
Phone: +1 650 607 6154                          
Email: umit.yalcinalp@oracle.com

Received on Monday, 21 July 2003 18:03:05 UTC