Élément complexContent de XML Schema

Définition et utilisation

L'élément complexContent définit l'extension ou la restriction d'un type complexe (contenant du contenu mixte ou uniquement des éléments).

Informations sur l'élément

Nombre d'apparitions Une fois
Parent élément complexType
Contenu

Optionnel. annotation

Obligatoire. Il y a et il y a un seul élément suivant : restriction (complexContent) ou extension (complexContent).

Grammaire

<complexContent
id=ID
mixed=true|false
any attributes
>
(annotation?,(restriction|extension))
</complexContent>

(? Le symbole de déclaration d'élément peut apparaître zéro ou une fois à l'intérieur de l'élément complexContent).

Propriétés Description
id Optionnel. Définir l'ID unique de cet élément.
mixed Optionnel. Définir si les données de caractères sont autorisées entre les éléments de cet élément complexe. La valeur par défaut est false.
any attributes Optionnel. Définir toute autre propriété avec un espace de noms non-schématique.

Exemple

Dans l'exemple suivant, il y a un type complexe "fullpersoninfo", ce type complexe est dérivé d'un autre type complexe "personinfo" par l'extension de trois éléments supplémentaires :

<xs:element name="employee" type="fullpersoninfo"/>
<xs:complexType name="personinfo">
  <xs:sequence>
    <xs:element name="firstname" type="xs:string"/>
    <xs:element name="lastname" type="xs:string"/>
  </xs:sequence>
</xs:complexType>
<xs:complexType name="fullpersoninfo">
  <xs:complexContent>
    <xs:extension base="personinfo">
      <xs:sequence>
        <xs:element name="address" type="xs:string"/>
        <xs:element name="city" type="xs:string"/>
        <xs:element name="country" type="xs:string"/>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>

Dans l'exemple précédent, l'élément "employee" doit inclure par ordre les éléments suivants : "firstname", "lastname", "address", "city" et "country".