%Element

2003-09-06
Eléments : considérations générales

Dans la répartition d'une information en XML, il n'est pas toujours aisé de bien choisir ce qui doit aller dans des éléments, ce qui va dans des attributs. Les éléments sont répétables et imbricables. Les attributs sont uniques et attachés à un seul élément. Par ailleurs, le contenu d'un élément est généralement affiché <http://www.w3.org/TR/REC-CSS2><1>, facile à éditer, contrairement au contenu des attributs. Ceci conduit à adopter cette règle : le contenu d'un élément se destine à être affiché (même s'il peut être réorganisé), tandis que le contenu d'un attribut sert à des traitements applicatifs.

Il existe plus d'une syntaxe pour représenter un schéma XML. Certaines fournissent des mécanismes perfectionnés de groupes, inclusions, redéfinitions... Cependant, l'utilisation d'un procédé qui n'aurait pas son équivalent dans une autre syntaxe a l'inconvénient d'attacher un effort de modélisation à un seul langage, (et aux logiciels qui le supportent). Le schéma documenté ici est certes généré automatiquement sur une certaine syntaxe (W3C.schema), mais sa structuration est compatible DTD, RelaxNG, pour ne citer que les plus courants. Autrement dit, ce document devrait pouvoir être généré à l'identique sur n'importe quel schéma, pourvu que la syntaxe accepte les regroupements par classes d'éléments et d'attributs.

htm:module<2> dbk:classes<3> tei:classes<4> tei:classes<5> htm:dtd<6>

Parents<^>

Frères<^>

Enfants<^>

Source<^>

<xs:group name="Element">
<xs:choice>
<xs:any namespace="##local"/>
</xs:choice>
</xs:group>


<1> http://www.w3.org/TR/REC-CSS2

<2> http://www.w3.org/TR/xhtml2/abstraction.html#s_abstraction

<3> http://www.docbook.org/tdg/en/html/pe-class.html

<4> http://www.tei-c.org/P4X/ST.html#STEC

<5> http://www.tei-c.org/P4X/REFCLA.html

<6> http://www.w3.org/TR/html4/sgml/dtd.html