Re: Issue 195: soap-rpc:result

 Noah,
 what goes on in WSDL in the so-called "encoded" use is the 
following (at least I think this is the common interpretation): 
 You have an XML schema. You look at it as a SOAP Data Model
schema - simplistically said you're reading sequences and alls as
structs and the special array form as arrays. This would be all
well if WSDL actually said this was what was to be done and if
WSDL also said that nothing but sequences and alls and the
special array form is to be used. Right now, handling of
minOccurs and maxOccurs and nillable and all the XML Schema
advanced stuff (choice comes to mind) is 
implementation-dependent.
 WSDL does say that in "encoded" use the resulting serialization
needn't be valid according to the presented schema so a sender
may produce any variant of SOAP Encoding serialization.
 Myself, I don't like this situation, I think we either need a 
simple new schema language or a set of unambiguous rules for 
making a SOAP Data Model schema from an XML Schema schema.
 Best regards,

                   Jacek Kopecky

                   Senior Architect, Systinet (formerly Idoox)
                   http://www.systinet.com/



On Fri, 5 Apr 2002, Noah Mendelsohn/Cambridge/IBM wrote:

 > Herve Ruellan writes:
 > 
 > >> My short reply to your short answer is: XML 
 > >> Schema is not suitable for describing data 
 > >> in SOAP Data Model (or at least in SOAP Encoding), 
 > >> but with a few tweaking, we should be able to used 
 > >> XML Schema to describe data in SOAP Encoding for 
 > >> RPC requests and responses.
 > 
 > I respectfully disagree, unless you want to lock in to one of the many 
 > legal serializations for each graph.  Note that the latest editors draft 
 > of SOAP mandates that reeivers MUST accept any legal serialization of a 
 > graph.
 > 
 > The SOAP data model is a Directed Graph, is potentially cyclic, and is 
 > only accidently tree-like in particular cases (which are admittedly 
 > comon).   For example, I might imagine a program that uses a circularly 
 > linked list as a datastructure.  None of the elements is a head or a tail, 
 > just a cycle.  I might want to pass one or another member of the list as 
 > an argument to an RPC, and pass the entire cycle by value.  SOAP RPC and 
 > its encoding can do this trivially. 
 > 
 > You can probably invent a schema that will match one or another, or even a 
 > bunch of the legal encodings of your graph, but it's unlikely you'd write 
 > a schema that matches even the majority of equivalent representations 
 > (I.e. that represent the same graph.)    It only gets worse with more 
 > complex structures.
 > 
 > XML Schema is just that:  it's a schema language for XML.  I don't think 
 > it is a good language for describing SOAP Data Model graphs, and I think 
 > the fudging that goes on in WSDL to try to make it so is a mistake (my 
 > opinion, not necessarily IBM's corporate position -- I haven't checked 
 > with our WSDL reps on this lately.)  It would be quite reasonable to use 
 > XML Schema to insist on one particular representation of a graph, then 
 > everyone would have to use exactly that form when serializing.
 > 
 > ------------------------------------------------------------------
 > Noah Mendelsohn                              Voice: 1-617-693-4036
 > IBM Corporation                                Fax: 1-617-693-8676
 > One Rogers Street
 > Cambridge, MA 02142
 > ------------------------------------------------------------------
 > 
 > 
 > 

Received on Sunday, 7 April 2002 11:48:36 UTC