M
Mike
I'd like to create a complex type that behaves like an <xs:all> but
has unbounded cardinality of its children. Or, another way to say it,
is I'd like an <xs:sequence> that doesn't really care about order.
For instance:
<foo>
<bar/>
<bar/>
<baz/>
<bar/>
</foo>
and
<foo>
<baz/>
</foo>
would both match
<xs:element name="foo">
<xs:complexType>
<xs:all>
<xs:element name="bar" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="baz" />
</xs:all>
</xs:complexType>
</xs:element>
except of course for the fact that maxOccurs can only be "1" in
<xs:all>.
Do you see what I mean? I want to specify that these particular
children elements can occur in their parent, in no particular (known
to the schema) order, each with their own possibly unbounded
cardinality. No other types of children can occur, and I want a
validating parser to keep track of the cardinality of the children to
ensure they're not happening too (in)frequently.
There must be a way to do this, I just can't figure out how. Any help
much appreciated!
Mike
has unbounded cardinality of its children. Or, another way to say it,
is I'd like an <xs:sequence> that doesn't really care about order.
For instance:
<foo>
<bar/>
<bar/>
<baz/>
<bar/>
</foo>
and
<foo>
<baz/>
</foo>
would both match
<xs:element name="foo">
<xs:complexType>
<xs:all>
<xs:element name="bar" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="baz" />
</xs:all>
</xs:complexType>
</xs:element>
except of course for the fact that maxOccurs can only be "1" in
<xs:all>.
Do you see what I mean? I want to specify that these particular
children elements can occur in their parent, in no particular (known
to the schema) order, each with their own possibly unbounded
cardinality. No other types of children can occur, and I want a
validating parser to keep track of the cardinality of the children to
ensure they're not happening too (in)frequently.
There must be a way to do this, I just can't figure out how. Any help
much appreciated!
Mike