Re: XML Schema: element ordering

Robin LaFontaine <robin@monsell.co.uk> writes:

> There is a basic requirement for most data structures to distinguish
> between a 'list', which is ordered, and a 'set' which is not.
> 
> 
> I cannot see how, in XML Schema, to make this distinction.
> 
> For example:
> 
>     <element name="CoordGeom">
>             <complexType>
>               <choice minOccurs="0" maxOccurs="unbounded">
>                   <element ref="Line"/>
>                   <element ref="Curve"/>
>                   <element ref="Spiral"/>
>               </choice>
>             </complexType>
>     </element>
> 
> How can I indicate if the sequence of element instances within the
> choice is significant ('list') or not ('set')?
> 
> 
> I have not been able to determine the answer to this question from
> reading the spec, except that by omission I think the answer is 'you
> cannot do this in XML Schema'!

You cannot _say_ this in XML Schema.  You can do it just fine, but
it's down to applications to know when order is significant in ordered 
elements and when it isn't.

One way to think about this is: On the simple type side, we define
both type-specific lexical and value spaces.  On the complex type
side, we define type-specific lexical spaces, but only a generic value 
space, based on the XML Infoset model.  The children of element
information items are ordered in that model:  whether that order has
application significance or not is not expressable at the infoset
level.

Given the difficulties of specifying a universal application data
model for complex types, the WG decided not to step even a little bit
down on to the slippery slope that allowing people to say 'list, set,
bag, poset, ...' would represent.

ht
-- 
  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
          W3C Fellow 1999--2001, part-time member of W3C Team
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
	    Fax: (44) 131 650-4587, e-mail: ht@cogsci.ed.ac.uk
		     URL: http://www.ltg.ed.ac.uk/~ht/

Received on Wednesday, 12 July 2000 11:43:52 UTC