L'élément restriction permet de restreindre les données permises dans un élément ou un attribut XML.
<xsd:restriction
base = QName
id = ID
{tout attribut ayant un espace de noms
différent de celui du schéma...}>
Contenu : (annotation?,
(group | all | choice | séquence)?,
((attribute | attributeGroup)*, anyAttribute?))
</xsd:restriction>
L'élément restriction possède deux attributs définissant la structure restrictive.
| Attributs | Description |
|---|---|
| base | indique un type de données de base. |
| id | précise un identificateur unique pour l'élément. |
L'élément restriction ne peut être inclus que dans les éléments suivants :
Exemple [voir]<?xml version="1.0"?>
<element_racine
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="c:\schema.xsd">
<nombre>51</nombre>
<nombre>90</nombre>
<nombre>80</nombre>
<nombre>99</nombre>
</element_racine>
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xsd:simpleType name="entre50et100">
<xsd:restriction base="xsd:nonNegativeInteger">
<xsd:minExclusive value="50"/>
<xsd:maxExclusive value="100"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:element name="nombre" type="entre50et100"/>
<xsd:element name="element_racine">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="nombre" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema> |