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> |