Élément d' attribut de schéma XML
❮ Référence complète du schéma XML
Définition et utilisation
L'élément d'attribut définit un attribut.
Informations sur l'élément
- Éléments parents : attributeGroup, schema, complexType, restriction (à la fois simpleContent et complexContent), extension (à la fois simpleContent et complexContent)
Syntaxe
<attribute
default=string
fixed=string
form=qualified|unqualified
id=ID
name=NCName
ref=QName
type=QName
use=optional|prohibited|required
any attributes
>
(annotation?,(simpleType?))
</attribute>
(Le signe ? déclare que l'élément peut apparaître zéro ou une fois dans l'élément d'attribut)
Attribute | Description |
---|---|
default | Optional. Specifies a default value for the attribute. Default and fixed attributes cannot both be present |
fixed | Optional. Specifies a fixed value for the attribute. Default and fixed attributes cannot both be present |
form | Optional. Specifies the form for the attribute. The default value is
the value of the attributeFormDefault attribute of the element
containing the attribute. Can be set to one of the following:
|
id | Optional. Specifies a unique ID for the element |
name | Optional. Specifies the name of the attribute. Name and ref attributes cannot both be present |
ref | Optional. Specifies a reference to a named attribute. Name and ref attributes cannot both be present. If ref is present, simpleType element, form, and type cannot be present |
type | Optional. Specifies a built-in data type or a simple type. The type attribute can only be present when the content does not contain a simpleType element |
use | Optional. Specifies how the attribute is used. Can be one
of the following values:
|
any attributes | Optional. Specifies any other attributes with non-schema namespace |
Exemple 1
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
L'exemple ci-dessus indique que l'attribut "code" a une restriction. La seule valeur acceptable est deux des lettres majuscules de a à z.
Exemple 2
Pour déclarer un attribut à l'aide d'une définition d'attribut existante dans un type complexe, utilisez l'attribut ref :
<xs:attribute name="code">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:complexType name="someComplexType">
<xs:attribute ref="code"/>
</xs:complexType>
Exemple 3
Les attributs peuvent avoir une valeur par défaut OU une valeur fixe spécifiée. Une valeur par défaut est automatiquement affectée à l'attribut lorsqu'aucune autre valeur n'est spécifiée. Dans l'exemple suivant, la valeur par défaut est "EN" :
<xs:attribute name="lang" type="xs:string" default="EN"/>
Une valeur fixe est également automatiquement attribuée à l'attribut lorsqu'aucune autre valeur n'est spécifiée. Mais contrairement aux valeurs par défaut ; si vous spécifiez une autre valeur que fixe, le document est considéré comme invalide. Dans l'exemple suivant, la valeur fixe est "EN" :
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
Exemple 4
Tous les attributs sont facultatifs par défaut. Pour spécifier explicitement que l'attribut est facultatif, utilisez l'attribut "use":
<xs:attribute name="lang" type="xs:string" use="optional"/>
Pour rendre un attribut obligatoire :
<xs:attribute name="lang" type="xs:string" use="required"/>
❮ Référence complète du schéma XML