À chaque noeud de l'arbre correspond
une valeur textuelle. Certains noeuds ont
une valeur textuelle intrinsèque ; pour d'autres, la valeur
textuelle associée est calculée à partir des noeuds
descendants. Les noeuds attribut et texte
font partie du premier cas. La valeur textuelle d'un noeud élément
est la concaténation de la valeur textuelle de ses descendants
pris dans l'ordre d'apparition du document.
Dans l'exemple suivant, <chapitre>
la valeur textuelle de l'élément chapitre
est la concaténation de la valeur textuelle de ses 3 enfants, i.e. :<titre>Valeur textuelle</titre> <section numero="1"> A chaque noeud de l'arbre correspond une valeur textuelle. </section> <section numero="2"> La valeur textuelle d'un noeud élément est la concaténation de la valeur textuelle de ses descendants. </section> </chapitre> Valeur textuelle A chaque noeud de l'arbre correspond
une valeur textuelle. La valeur textuelle d'un noeud élément
est la concaténation de la valeur textuelle de ses descendants. (les espaces blancs ne sont pas représentés).
Remarque :
La valeur des attributs numero des
éléments section n'apparaît
pas dans la valeur textuelle de l'élément chapitre.
En effet, bien que ces attributs aient une valeur textuelle (resp. "1"
et "2"), ils ne font partie des enfants d'aucun élément
(nous avons déjà mentionné le caractère
non symétrique de la relation de parenté entre un élément
et ses attributs).
text() et
string()
Il ne faut pas confondre le nodetest text()
et la fonction string(). text()
sélectionne, parmi un nodeset donné, les noeuds de type
texte. string() est une fonction qui
renvoie la valeur textuelle d'un noeud.Exemples : évaluation d'expressions
avec <oXygen/>
|
|||||||||||||||