What is the difference between <all> <sequence> <choice> and <group>
in XML Schema?
What is the difference between <all> <sequence> <choice> and <group>
in XML Schema?
When to use xsd:all
, xsd:sequence
, xsd:choice
, or xsd:group
:
xsd:all
when all child elements must be present, independent of
order.xsd:sequence
when child elements must be present per their
occurrence constraints and order does matters.xsd:choice
when one of the child element must be present.xsd:group
as a way to wrap any of the above in order to name
and reuse in multiple locations within an XSD.Note that occurrence constraints can appear on xsd:all
, xsd:sequence
, or xsd:choice
in addition to the child elements to achieve various cardinality effects.