- From: Andrew Layman <andrewl@microsoft.com>
- Date: Fri, 25 Jan 2002 09:53:26 -0800
- To: "XML Protocol Discussion" <xml-dist-app@w3.org>
+1 The xsi:type attribute is only needed if the type of the element in the XML instance is more specific than can be determined by reference to a schema (or other equivalent metadata). -----Original Message----- From: Martin Gudgin [mailto:marting@develop.com] Sent: Friday, January 25, 2002 9:30 AM To: Marc Hadley Cc: XML Protocol Discussion Subject: Re: Section 5 vs Schema Woah there! Are you asserting that in the absence of a schema you *MUST* use xsi:type? If so, I'm afraid I violently disagree. To my mind, the *ONLY* case for using xsi:type is if the type of the thing being sent is not know until runtime; // Java void Fn ( Object o ); // C++ void Fn ( void* p ); // VB Sub Fn ( v As Variant ) In all other cases you have something that is typed, and that is enough. Gudge ----- Original Message ----- From: "Marc Hadley" <marc.hadley@sun.com> To: "Martin Gudgin" <marting@develop.com> Cc: "XML Protocol Discussion" <xml-dist-app@w3.org> Sent: Friday, January 25, 2002 3:00 PM Subject: Re: Section 5 vs Schema > The ETF discussed this issue in a recent telcon and would like to > propose a change to section 3.4 of the current editors draft[1] to > lessen the schema bias in the examples by showing the mapping from > programming language compound types to SOAP encoding. > > e.g. the first example in section 3.4.1 shows an instance of a book > structure and a schema that describes the structure. This would be > replaced with a C language struct definition and a SOAP encoding > serialisation of the structure, e.g. > > BEGIN EXCERPT > > The following structure: > > struct Book > { > char *author; > char *preface; > char *intro; > } book = {"Henry Ford", "Preface text", "Intro Text"}; > > would be encoded as follows without a schema > > <Book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:enc="http://www.w3.org/2001/12/soap-encoding"> > <author xsi:type="enc:string">Henry Ford</author> > <preface xsi:type="enc:string">Preface text</preface> > <intro xsi:type="enc:string">Henry Ford</intro> > </Book> > > or as follows if a schema is available > > <e:Book xmlns:e="http://example.org/2001/12/books"> > <e:author>Henry Ford</e:author> > <e:preface>Preface text</e:preface> > <e:intro>Henry Ford</e:intro> > </e:Book> > > END EXCERPT > > Comments, flames etc. > > Marc (on behalf of the ETF) > > [1] http://www.w3.org/2000/xp/Group/1/10/11/soap12-part2.html > > Martin Gudgin wrote: > > >SOAP 1.2 Part 2 Section 4[1] ( old section 5 ) defines a set of encoding > >rules for mapping from programmatic type systems to XML. > > > >There was some discussion on the last editors conference about how to deal > >with issue 17[2] regarding the schemas that appear in section 5. I took an > >action to start discussion about this on this list. Please note I will be on > >holiday from today and will not be back until the New Year so will not be > >able to actively participate until then, hopefully you'll all have nailed > >the issue by then! > > > >One suggestion was that section 5 actually defines an implicit schema so > >each mapping from some programmatic type essentially defines a schema type. > >This seems reasonable but at the same time feels a little odd. We have > >section 5 because when SOAP 0.9, 1.0 and 1.1 were written XML Schema was not > >done, we didn't have an XML based type system. So we had to start from a > >type system we did have. So Section 5 defines a set of rules for mapping > >from programmatic type systems iuntNow that XML Schema is done it is > >possible to define the messages being exchanged entirely in XML Schema > >without reference to any programmatic type system. Mapping to the > >programmatic type system ( if any ) at either end of the exchange is an > >implementation detail. > > > >So, given that we have XML Schema, does it make sense to infer a schema from > >some other type system? > > > >And if it does, what do we do about examples in the spec. It seems very > >strange to say 'we start from a programmatic type system' and then only show > >schemas! We are defining a language binding, even if we never show a Java > >class or a C struct or whatever. > > > >OK, that's it. I hope the discussion is fruitful, I'll read through it when > >I get back from holiday. > > > >Regards > > > >Martin Gudgin > >DevelopMentor > > > > > > > >[1] http://www.w3.org/TR/2001/WD-soap12-part2-20011002/#soapenc > >[2] http://www.w3.org/2000/xp/Group/xmlp-issues.html#x17 > > > >
Received on Friday, 25 January 2002 12:53:58 UTC