L'élément attribute correspond à un type d'attribut déclaré qui peut apparaître à l'intérieur de la portée d'un élément défini par elementType.
<attribute default="Valeur"
type="Type_Attribut"
[required="{yes | no}"]>
...
</attribute>
L'attribut default définit une valeur par défaut pour l'élément attribute.
L'attribut type indique le nom de l'élément attributeType défini dans le schéma en cours.
L'attribut required détermine si l'élément attribute est requis dans l'élément.
Lorsque l'attribut required est fixé à yes et une valeur est indiquée dans l'attribut default, la valeur par défaut fournie doit toujours être la valeur de l'attribut. Les documents contenant d'autres attributs sont invalides.
Lorsque l'attribut required est fixé à yes et aucune valeur par défaut n'est spécifiée, chaque élément dont le type est déclaré pour avoir l'attribut, doit fournir sa valeur.
L'élément attribute posséde forcément un élément parent elementType, mais aucun enfant.
Exemple [voir]<?xml version="1.0" encoding="ISO-8859-1"?>
<element_racine xmlns="x-schema:c:\schema.xdr"
attribut_racine="valeur">
<element_enfant attribut_enfant="valeur">
Chaîne de caractères
</element_enfant>
</element_racine>
<?xml version="1.0" encoding="ISO-8859-1"?>
<Schema name="schema"
xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name="element_enfant" model="closed"
content="textOnly" dt:type="string">
<attributeType name="attribut_enfant" dt:type="string" required="yes"/>
<attribute type="attribut_enfant"/>
</ElementType>
<ElementType name="element_racine" model="closed"
content="eltOnly" order="seq">
<attributeType name="attribut_racine" dt:type="string" required="yes"/>
<attribute type="attribut_racine"/>
<attributeType name="xmlns" dt:type="string"/>
<attribute type="xmlns"/>
<element type="element_enfant" minOccurs="1" maxOccurs="1"/>
</ElementType>
</Schema> |