Bonjour, j'ai le problème suivant en XSL et j'arrive pas à voir comment le résoudre.
Soit le xml suivant:
j'ai besoin de générer ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <document> <section id="A"> a a a a a <section id="AA"> AA AA AA AA </section> <section id="AB"> AB AB AB AB </section> </section> <section id="B"> b b b b </section> <section id="C"> c c c c <section id="CA"> ca ca ca ca </section> </section> </document>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <item id="A" next="AA">a a a a</item> <item id="AA" previous="A" next="AB">AA AA AA AA</item> <item id="AB" previous="AA" next="B">AB AB AB AB</item> <item id="B" previous="AB" next="C">b b b b</item> <item id="C" previous="B" next="CA">c c c c</item> <item id="CA" previous="C">ca ca ca ca</item>
Alors, pas de problème pour la partie id, je peux très bien faire
Mais j'ignore comment, à partir du noeud courant, demander "le noeud précédent dans la liste //document//section", pareil avec le noeud suivant. Si l'architecture n'était pas à plusieurs niveaux, j'aurais utilisé previous-sibling et next-sibling, mais ici ce n'est pas possible en raison de la hierarchie.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <xsl:for-each select="//document//section"> .... </xsl:for-each>
Si quelqu'un a une idée, merci d'avance.
PS: XSL v2
Partager