Name
xs:complexContent — Definition of a complex content by derivation of a complex type.
Synopsis
<xs:complexContent
id = xs:ID
mixed = xs:boolean
{any attributes with non-schema namespace}
>
Content: ((xs:annotation?), (xs:restriction | xs:extension))
</xs:complexContent>
May be included in: xs:complexType (local definition), xs:complexType (global definition)
Description
This element allows you to define a complex content model by derivation of a complex type. It is not a component by itself (complex contents are not named), but rather the declaration of an intention to define a complex content model by derivation.
The derivation method is not defined by the
xs:complexContent element itself, but by the
choice of its child element (xs:restriction for a
derivation by restriction, or xs:extension for a
derivation by extension).
This element can be used to define if the content model is mixed or
not—but this information can also be defined in the
xs:complexType parent element, which has also a
mixed attribute.
The mixed nature of the content model defined by
xs:complexContent attribute is dependent on the
derivation method and on the base type. If the base type is mixed, it
can be restricted to become elements only; otherwise the mixed nature
of the base type cannot be changed.
Restrictions
A base type whose elements cannot be extended to be mixed.
Example
<xs:element name="author"> <xs:complexType> <xs:complexContent> <xs:extension base="basePerson"> <xs:sequence> <xs:element ref="dead" ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access