L'élément enumeration permet de contraindre la valeur d'un élément ou d'un attribut à une seule possibilité.
<xsd:enumeration id = ID value = simpleType {tout attribut ayant un espace de noms différent de celui du schéma...}> Contenu : (annotation?) </xsd:enumeration>
L'élément enumeration possède plusieurs attributs destinés à identifier la facette et à préciser une valeur possible.
Attributs | Description |
---|---|
id | précise un identificateur unique pour l'élément. |
value | spécifie une valeur de type simple (simpleType). |
L'élément enumeration ne peut être inclus que dans l'élément suivant :
Exemple [voir]<?xml version="1.0" encoding="ISO-8859-1"?> <element_racine xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="c:\schema.xsd"> <element_enfant attribut="Veuf"> Monsieur </element_enfant> <element_enfant attribut="Mariée"> Madame </element_enfant> <element_enfant attribut="Célibataire"> Mademoiselle </element_enfant> <element_enfant attribut="Concubin"> Monsieur </element_enfant> </element_racine> <?xml version="1.0" encoding="ISO-8859-1"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xsd:complexType name="type_enfant"> <xsd:simpleContent> <xsd:extension base="valeurs_enfant"> <xsd:attribute name="attribut" use="required"> <xsd:simpleType> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="Célibataire"/> <xsd:enumeration value="Concubin"/> <xsd:enumeration value="Concubine"/> <xsd:enumeration value="Marié"/> <xsd:enumeration value="Mariée"/> <xsd:enumeration value="Veuf"/> <xsd:enumeration value="Veuve"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <xsd:simpleType name="valeurs_enfant"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="Madame"/> <xsd:enumeration value="Mademoiselle"/> <xsd:enumeration value="Monsieur"/> </xsd:restriction> </xsd:simpleType> <xsd:element name="element_racine"> <xsd:complexType> <xsd:sequence> <xsd:element name="element_enfant" type="type_enfant" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> |