From: Pierre Attar (patt@tireme.fr)
Date: 23/08/2000 - 10:33
>Dans un document destiné à être visualisé sous une forme ou une autre,
>l'usage veut également que l'on utilise plutot des éléments pour ce qui
>doit être affiché et des attributs pour ce qui donne des indications
>complémentaire ou sur la manière d'afficher (exemple des balises HTML).
La justification de ceci est liée au modèle abstrait issu d'un document XML
(voir Infoset). Comme le modèle est un arbre d'objets typés et valués, il
est facile de réaliser des programmations par "propagation" dans un sous
arbre. Ainsi, si on prend la spécification XML, l'attribut xml:lang, posé
sur un élément s'applique à l'ensemble du sous arbre, tant qu'il n'y a pas
un nouvel attribut contredisant l'assertion préalable.
De façon plus technique, la justification est que les outils sont beaucoup
plus efficaces pour aller chercher une valeur d'attribut dans le contexte
des parents d'un élément.
Pour SAX, c'est évident car étant par définition évènementiel, toutes les
activités de 'look a-head" sont couteuses, voir impossibles.
Pour les applications basées sur des arbres d'objets typés (Infoset), comme
XSL et XSLT, DOM, les parties optimisées sont toujours l'accès aux parents
et à leurs attributs.
Par ailleurs, et de façon annecdotique, l'accès à des attributs d'un parent
est plus facile à écrire et à maintenir qu'un parcours d'arbre.
Enfin, d'un point de vue architecture, je suis d'accord avec tous les
arguments précédents d'Eric et il n'est pas rare d'avoir des modèles
d'édition et de validation qui présentent l'information sous forme
d'éléments, puis un programme de transformation qui regroupe ces mêmes
information sous forme d'attributs, dans le but de factoriser et de
faciliter tous les processus de traitement, pour impression ou affichage.
C'est ce que l'on voit à peu près toujours dans les grandes applications
documentaires industrielles qui sont basées des notions d'applicabilité
d'une information à une configuration donnée.
------------
Pierre Attar (mailto:pattar@tireme.fr)
TIREME SARL (http://www.tireme.fr)
Projet "Mutualiser l'effort de montée en compétences sur XML"
http://fing.org/projet-xml/index.html
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:05 UTC
webmaster@xmlfr.org
|