Re: Rationale for Dropping the <soap:body use=...> Attribute

+1 for dropping the "use" attribute.

Jean-Jacques.

Arthur Ryman wrote:
> This issue came up at the f2f.
> 
> The WSDL 1.1 SOAP binding currently has a use attribute which can take
> the values literal and encoded. The use attribute interacts with the
> encodingStyle attribute. The cases are as follows:
> 
> 1. use="literal", encodingStyle="". The SOAP message is exactly as
> described by its XML schema, but nothing is claimed about how the schema
> was derived.
> 
> 2. use="literal", encodingStyle="some-URI". The SOAP message is exactly
> as described by its XML schema and the schema was derived using the
> encoding algorithm identified by some-URI. The writer of the message is
> required to create it exactly as described by the schema. The knowledge
> of the encoding algorithm can be exploited by tools that might generate
> a data structure from the schema. The main example here is SOAP
> encoding. WS-I.org is defining a new algorithm for object graphs.
> 
> 3. use="encoded", encodingStyle="some-URI". The SOAP message is not
> necessarily as described by the XML schema which was derived using the
> encoding algorithm identified by some-URI. There may be variants in the
> message not described in the schema. The reader of the message is
> required to understand all variants. For example, in SOAP encoding,
> element content can appear inline or via reference (e.g. for
> multi-reference objects).
> 
> 4. use="encoded", encodingStyle="". This case is not allowed. If the
> SOAP message is encoded then there must be an encoding style.
> 
> WS-I.org has studied interoperability problems and has come to the
> conclusion that only use="literal" should be used where interoperability
> is required. Since interoperability is one of the main features of Web
> services, it seems reasonable to follow this recommendation in WSDL 1.2.
> This recommendation does not really restrict the message content. It
> only restricts how the message is described in WSDL. Case #3 is
> disallowed. This places the burden on the Web service implementor to
> describe the messages exactly.
> 
> In many cases, SOAP encoding can be described by an accurate schema,
> e.g. if the data is tree like. Also, the new WS-I.org proposal for
> encoding object graphs does have accurate schemas. It is therefore not
> necessary to remove the encodingStyle attribute since this is a valuable
> hint to tools. However, if only use="literal" is supported, then the use
> attribute can be safely dropped.
> 
> -- Arthur Ryman
> 
> 

Received on Wednesday, 18 September 2002 09:42:44 UTC