L'élément attributeGroup permet de regrouper la définition de plusieurs attributs XML.
<xsd:attributeGroup
id = ID
name = NCName
ref = QName
{tout attribut ayant un espace de noms
différent de celui du schéma...}>
Contenu : (annotation?)
</xsd:attributeGroup>
L'élément attributeGroup possède deux attributs destinés à identifier l'élément et à se référer à un groupe d'attributs XML.
| Attributs | Description |
|---|---|
| id | précise un identificateur unique pour l'élément. |
| name | indique le nom du groupe. |
| ref | indique une référence à un groupe d'attributs. |
L'élément attributeGroup ne peut être inclus que dans les éléments suivants :
Exemple [voir]<?xml version="1.0"?>
<element_racine attribut_racine="valeur"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="c:\schema.xsd">
<element_enfant attribut_1="valeur"/
attribut_2="valeur"
attribut_3="valeur">
</element_racine>
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
elementFormDefault="qualified">
<xsd:attributeGroup name="Groupe_Attribut">
<xsd:attribute name="attribut_1"
type="xsd:string" use="required"/>
<xsd:attribute name="attribut_2"
type="xsd:string" use="required"/>
<xsd:attribute name="attribut_3"
type="xsd:string" use="required"/>
</xsd:attributeGroup>
<xsd:complexType name="type_element_enfant">
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attributeGroup ref="Groupe_Attribut"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:element name="element_racine">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="element_enfant"
type="type_element_enfant"/>
</xsd:sequence>
<xsd:attribute name="attribut_racine"
type="xsd:string" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:schema> |