Bonjour,
J'aurai besoin d'un avis sur ceci :
Soit un fichier xml de type :
Lorsque je suis sur un noeud <C> je souhaite savoir par combien de noeud <C> je suis passé , dans le noeud père courant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <A1> <B1> <C> <C> </B1> <B1> <C> <C> </B1> </A1>
Par exemple :
- lorsque je suis sur le deuxième noeud <C> du 1er noeud père <B1>, la valeur est 2.
- lorsque je suis sur le deuxième noeud <C> du 2eme noeud père <B1>, la valeur est 2. hors ici précisément je récupérais la valeur 4, car le comptage se faisait sur tous les noeuds pères <B1> précédents, ci-dessous la commande
j'ai résolu le problème grâce à la commande ci-dessous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 count(preceding::C)
Le problème c'est que le temps de traitement est très long.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 count(preceding::C[ current()/ancestor::B1= ancestor::B1])
Y aurait-il une méthode plus efficace ?
D'avance merci.
Partager