Bonjour,
Je viens vous exposer ma situation présente :
* Je voudrais, à travers un test, détecter si la balise parent (ici : "<r code="111" t="titre1">") est de type <regroupement>...
Bon, dans le cas présent, comme vous pouvez le constater, c'est un <r> (donc, selon "ma" théorie, le message proposé ne devrait pas apparaitre... Eh bien si !)
* 1 - Comment se fait-il donc que, ici, le test en vienne à détecter un <regroupement> ? (En fait, c'est le <regroupement> "frère du parent" qui est détecté ici)
* 2 - Comment faire pour que le test porte vraiment sur le vrai parent ?
En vous remerciant par avance pour toute suggestion de votre part... et pour votre intérêt !
Fichier XML:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?xml version="1.0" encoding="UTF-8"?> <enregistrements> <r code="111" t="titre1"> <r code="333" t="Titre recherché"/> </r> <regroupement code="222">titre2 </regroupement> </enregistrements>
Fichier XSL:
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
28
29
30
31
32
33
34
35 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" doctype-system="http://www.w3.org/TR/html4/loose.dtd"/> <xsl:template match="/"> <html> <head> <title></title> </head> <body bgcolor="#FFFFFF"> <xsl:apply-templates select="//r[@code='333']" /> </body> </html> </xsl:template> <xsl:template match="r"> <!-- <xsl:if test="parent::*/parent::*/regroupement"> --> <xsl:if test="../../regroupement"> <span id="Titre1"> regroupement détecté... Pourquoi ? </span> </xsl:if> </xsl:template> </xsl:stylesheet>
Partager