Name
xs:restriction(complex content) — Derivation of a complex content model by restriction.
Synopsis
<xs:restriction base = xs:QName id = xs:ID {any attributes with non-schema namespace} > Content: (xs:annotation?, (xs:group | xs:all | xs:choice | xs:sequence)?, ((xs:attribute | xs:attributeGroup)*, xs:anyAttribute?)) </xs:restriction>
May be included in: xs:complexContent
Description
The restriction of a complex content complex type is an operation
that allows the addition of new constraints to both the attributes
and child elements in complex content elements (this reduces the set
of valid instances structures). It can be seen as a declaration of
intention that a new content model is a subset of a base content
model (the declaration by intention is checked by the schema
processors). The new content model is entirely described under
xs:restriction
and must represent a restriction to
what was allowed by the base content model (i.e., any content valid
per the restricted type must also be valid per the base type). The
only exception is attributes whose description may be skipped under
xs:restriction
, if not changed.
Restrictions
To facilitate the checking done by schema processors, the new derived content model must follow the definition of the base type particle per particle. Each of them must be explicit derivations by restriction.
The same element name (xs:restriction
) is used in three different contexts with highly different meanings. Be careful to be able to distinguish restrictions ...
Get XML Schema now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.