Re: Purpose of <xs:sequence/>

Hi Adam,

Adam Retter <Adam.Retter@landmarkinfo.co.uk> writes:

> <xs:complexType name="Classifier">
> 	<xs:sequence/>
> 	<xs:attribute name="pid" type="xs:string" use="required"/>
> </xs:complexType>

Having an empty sequence like this is valid and is equivalent to not
having one at all.

If the schema is auto-generated then it is easy to see why there
are empty sequence elements. The tool probably just adds the
sequence element (e.g., in DOM) and then iterates over elements
and adds them under it. In cases where there are no elements
you end up with an empty sequence. Someone may also want to do
this in a manually-created schema to highlight the fact that this
is a complex type with empty content (and not just a mistake).

Boris

-- 
Boris Kolpackov, Code Synthesis Tools   http://codesynthesis.com/~boris/blog
Open source XML data binding for C++:   http://codesynthesis.com/products/xsd
Mobile/embedded validating XML parsing: http://codesynthesis.com/products/xsde

Received on Thursday, 19 June 2008 14:03:00 UTC