W3C home > Mailing lists > Public > xml-dist-app@w3.org > February 2002

RE: Issue with soap-rpc:result

From: <noah_mendelsohn@us.ibm.com>
Date: Wed, 6 Feb 2002 20:43:05 -0500
To: dbox@us.ibm.com
Cc: "Jacek Kopecky" <jacek@systinet.com>, "Tim Ewald" <tjewald@develop.com>, "XMLDISTAPP" <xml-dist-app@w3.org>
Message-ID: <OF8322F6DC.6E40AAD4-ON85256B59.00098357@lotus.com>
Don Box sez:

>> The reality is, SOAP mandates XML Schema-awareness.

Awarenes of built in simple types? yes.  Validation or availability of 
some application- or header-specific schema?  Not in SOAP 1.1 and not in 
SOAP 1.2 as at stands.

>> I don't think adding yet another way to define data 
>> representations is the answer. 

I think the real question is, do we want graphs or trees?  SOAP 1.1 says 
that for RPC, we need graphs.  We want to express the difference between:

Object o1 = new Thing();
Object o2 = new Thing();
Object o3 = new Thing();
x=method(o1, o2, o3);


Object o1 = new Thing();
Object o2 = new Thing();
Object o3 = o1;
x=method(o1, o2, o1);

Either a simple XML tree (modeled by XML Schema) or soap 1.1 chapter 5 
graph model can represent the first call with fidelity.  Only the graph 
model can easily capture the identity of arguments #1 and #3 in the second 

For better or worse, SOAP 1.1 went to some trouble to solve that hairier 
problem.  Along the way, it got the ability to send cyclic data 
structures, DAGs, and some other things you might find in programs.  I 
think the question should be "do we need that expressive power in SOAP 1.2 
to do RPC?"  Are we happy to have the two calls above come out the same on 
the wire?  If the answer is that we don't need that expressive power, then 
I agree that we can get rid of the encodings and use schema.   On the 
other hand, XML schema is a terrible way to model a typed graph encoded 
using ID/IDREF.  If we still want graphs, then I think we need a 
description language richer than XML schema to model those graphs.  FWIW, 
I'm not personally thrilled with the approach taken in WSDL, which models 
the graphs as sample serializations in XML, and then uses bindings to 
capture the equivalence to other graphs (that last is a personal opinion, 
and definitely not concensus at my place of employment.) 

Does this make sense?  Thanks.

Noah Mendelsohn                              Voice: 1-617-693-4036
IBM Corporation                                Fax: 1-617-693-8676
One Rogers Street
Cambridge, MA 02142
Received on Wednesday, 6 February 2002 20:57:37 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 22:01:18 UTC