L'élément choice propose une structure de choix entre plusieurs éléments possible.
<xsd:choice id = ID maxOccurs = (nonNegativeInteger | unbounded) : 1 minOccurs = nonNegativeInteger : 1 {tout attribut ayant un espace de noms différent de celui du schéma...}> Contenu : (annotation?, (element | group | choice | séquence | any)*) </xsd:choice> |
L'élément choice possède plusieurs attributs destinés à définir le connecteur de choix.
Attributs | Description |
---|---|
id | précise un identificateur unique pour l'élément. |
maxOccurs | précise le nombre d'occurrences maximum de l'élément. Par défaut, ce nombre est égal à 1. |
minOccurs | précise le nombre d'occurrences minimum de l'élément. Par défaut, ce nombre est égal à 1. |
L'élément choice ne peut être inclus que dans les éléments suivants :
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 id="02"> <element_choix_1>10</element_choix_1> </element_enfant> <element_enfant id="01"> <element_choix_2>10</element_choix_2> </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:element name="element_choix_1" type="xsd:integer"/> <xsd:element name="element_choix_2" type="xsd:integer"/> <xsd:complexType name="element_enfantType"> <xsd:choice> <xsd:element ref="element_choix_1"/> <xsd:element ref="element_choix_2"/> </xsd:choice> <xsd:attribute name="id" use="required"> <xsd:simpleType> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="01"/> <xsd:enumeration value="02"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> </xsd:complexType> <xsd:element name="element_racine"> <xsd:complexType> <xsd:sequence> <xsd:element name="element_enfant" type="element_enfantType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> |