Bonjour, mon problème est relativement simple : je voudrais récupérer tous les nœuds qui se trouvent entre un nœud A et un noeud B, ces deux nœuds étant au même niveau dans la structure que les nœuds à récupérer.
Un exemple rendras les choses plus claires :
Dans cet éxemple j'aimerais récupérer QUE le contenu des nœuds inline qui se trouvent entre ##BODY## et ##/BODY##, et ne pas récuperer donc les deux derniers nœuds inline dans cet exemple (Learning XML et blabla)
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
22
23
24
25
26
27 <fo:block xmlns:fo="http://www.w3.org/1999/XSL/Format"> <fo:inline font-family="Arial, sans-serif" font-size="10pt"> ##BODY## </fo:inline> <fo:inline font-family="Arial, sans-serif" font-size="10pt"> <fo:leader lang="7">blde la patate</fo:leader> <fo:inline font-weight="bold">Nom : </fo:inline> <fo:inline lang="2">B</fo:inline> <fo:leader>29.99</fo:leader> <fo:inline lang="3" font-weight="bold">C</fo:inline> </fo:inline> <fo:inline font-family="Arial, sans-serif" font-size="10pt"> <fo:inline lang="4">Learning XML</fo:inline> <fo:inline lang="4">Learning XML</fo:inline> </fo:inline> <fo:inline font-family="Arial, sans-serif" font-size="10pt"> ##/BODY## </fo:inline> <fo:inline font-family="Arial, sans-serif" font-size="10pt"> <fo:inline lang="4">Learning XML</fo:inline> <fo:leader>39.95</fo:leader> <fo:inline lang="4">blabla</fo:inline> </fo:inline> </fo:block>
J'ai trouvé quelque chose sur le mailing de Stylus studio qui semble corréspondre à mon souci :
Si quelqu'un pouvais proposer une piste ça serais pas de refus ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part following-sibling::*[generate-id(following-sibling::tag[1]) = generate-id(current()/following-sibling::tag[1])]
PS : je ne travaille pas en xslt, j'ai simplement besoin de créer un chemin xPath exploitable ensuite parallèlement à du DOM pour parcourir mon xml
Partager