Name
xs:all(outside a group) — Compositor describing an unordered group of elements.
Synopsis
<xs:all
id = xs:ID
maxOccurs = “1” : “1”
minOccurs = ( “0” | “1” ) : “1”
{any attributes with non-schema namespace}
>
Content: (xs:annotation?, xs:element*)
</xs:all>
May be included in: xs:complexType (local definition), xs:complexType (global definition), xs:extension (complex content), xs:restriction (complex content)
Description
xs:all is used to describe an unordered group of
elements whose number of occurences may be zero or one.
Restrictions
xs:all is the only compositor that cannot be used
as a particle and needs to be used by itself to describe a complete
content model. Unlike xs:choice and
xs:sequence, xs:all cannot be
embedded within another compositor. It can, thus, only be embedded
directly into an xs:complexType,
xs:restriction, or
xs:extension; furthermore, its number of
occurrences may be only zero or one.
The particles included in xs:all are also limited:
they can only be xs:element and their number of
occurrences can only be zero or one.
Combining these two restrictions means xs:all may
only be used to describe content models in which a group of unordered
elements (mandatory or optional, but with a number of occurrences not
greater than one) are the only child elements.
Situations describing unordered groups of optional elements that have
the same number of maximum occurrences can be described using
xs:choice or substitution groups, but other content models (such as groups ...