Hillo,
Au moment de concevoir un modèle de document (encore appelé modèle de contenu), vient souvent la question de savoir à quel moment mettre une « donnée » dans un attribut ou dans un noeud texte.
L'attribut a comme particularité d'être unique, et il est souvent tentant de placer dans des attributs les données uniques simples (qui ne contiennent que du texte et pas d'éléments).
Pourtant, ce qui se place dans un attribut, pourrait le plus souvent tout aussi bien être placé dans un noeud texte d'un élément enfant adéquat.
Bref, aucune contrainte particulière n'impose le choix, soit du noeud texte dans un élément enfant, soit de l'attribut, car ce qui est faisable d'une manière, est faisable de l'autre, en dehors du cas particulier des xml:id et xml:lang, qui sont standardisés sous cette forme, et pas sous une autre. Remarque : je ne parle pas des modèles de contenu pré-existants, mais de ceux en conception.
L'un ou l'autre sont possible de la même manière, pourtant, choisir un style et s'y tenir, et toujours une bonne chose.
En me posant cette question (ce qui ne m'est pas arrivé qu'aujourd'hui), je me suis fait une petite idée toute simple : dans les attributs, les données qui ne sont pas toujours directement humainement interprétables ou alors qui dictent l'interprétation. Ce qui inclut naturellement les attributs qui servent d'identifiant (ce qui colle bien à ce qui se fait le plus souvent), ce qui exclus d'avoir par exemple des attributs du genre « titre » ou « title » (erreur que j'ai faite avec certains modèles de contenu et que je suis occupé à corriger). C'est également conforme à l'usage en vigeur de mettre les indications de langue en attributs (dirige l'interprétation), et ça donnerait la préférence au noeud texte plutôt qu'à des attributs, pour les dates, par exemple, dates de mise à jour, dates de relecture, etc.
En guise d'autres exemples encore, des mots clés seraient de préférence stockés dans des noeuds texte, et des URLs, dans des attributs (pour les URLs par contre, les usages existants balancent entre les deux).
L'idée est difficile à formaliser, mais se ressent intuitivement.
Des commentaires ?
Modifié par hibou57 (18 Apr 2009 - 00:08)
Au moment de concevoir un modèle de document (encore appelé modèle de contenu), vient souvent la question de savoir à quel moment mettre une « donnée » dans un attribut ou dans un noeud texte.
L'attribut a comme particularité d'être unique, et il est souvent tentant de placer dans des attributs les données uniques simples (qui ne contiennent que du texte et pas d'éléments).
Pourtant, ce qui se place dans un attribut, pourrait le plus souvent tout aussi bien être placé dans un noeud texte d'un élément enfant adéquat.
Bref, aucune contrainte particulière n'impose le choix, soit du noeud texte dans un élément enfant, soit de l'attribut, car ce qui est faisable d'une manière, est faisable de l'autre, en dehors du cas particulier des xml:id et xml:lang, qui sont standardisés sous cette forme, et pas sous une autre. Remarque : je ne parle pas des modèles de contenu pré-existants, mais de ceux en conception.
L'un ou l'autre sont possible de la même manière, pourtant, choisir un style et s'y tenir, et toujours une bonne chose.
En me posant cette question (ce qui ne m'est pas arrivé qu'aujourd'hui), je me suis fait une petite idée toute simple : dans les attributs, les données qui ne sont pas toujours directement humainement interprétables ou alors qui dictent l'interprétation. Ce qui inclut naturellement les attributs qui servent d'identifiant (ce qui colle bien à ce qui se fait le plus souvent), ce qui exclus d'avoir par exemple des attributs du genre « titre » ou « title » (erreur que j'ai faite avec certains modèles de contenu et que je suis occupé à corriger). C'est également conforme à l'usage en vigeur de mettre les indications de langue en attributs (dirige l'interprétation), et ça donnerait la préférence au noeud texte plutôt qu'à des attributs, pour les dates, par exemple, dates de mise à jour, dates de relecture, etc.
En guise d'autres exemples encore, des mots clés seraient de préférence stockés dans des noeuds texte, et des URLs, dans des attributs (pour les URLs par contre, les usages existants balancent entre les deux).
L'idée est difficile à formaliser, mais se ressent intuitivement.
Des commentaires ?
Modifié par hibou57 (18 Apr 2009 - 00:08)