[XSLT]Question sur le current()...
Salut,
Il doit y avoir quelque chose que je ne saisi pas, j'ai bien lu la page d'erwy traitant du current() mais il y a un petit je-ne-sais-quoi qui manque à m'allumer...
Bon, maintenant que j'ai mon noeud dans une variable, disons $monNoeud. Je voudrais connaître son name(). Bon, j'ai essayé $monNoeud[name()], $monNoeud/name(), $monNoeud::name() et j'évite de parler de tout les arrangements de /parent::* et de /child::* que j'ai essayé...
Dans ce même noeud, j'ai des attributs. Là aussi, je ne comprend pas, j'essaie d'accéder à ces attributs avec $monNoeud[@monAttribut] et toujours rien...
Voici une version allégée de mon code:
xml:
Code:
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 36 37 38 39 40 41 42 43 44 45 46 47
|
<list>
<itemDescription>
<title displayText="Titre" />
<description displayText="Description" />
<link displayText="Lien" />
<attachment displayText="Document" />
<id displayText="Identifiant" />
<name displayText="Nom" />
<language displayText="Langue" />
<date displayText="Date" />
<priority displayText="Priorité" />
</itemDescription>
<item>
<title>Titre 1</title>
<description>Description 1</description>
<link>Lien 1</link>
<attachment>Document 1</attachment>
<id>ID1</id>
<name>Nom 1</name>
<language>FR</language>
<date>01/01/1950</date>
<priority>1</priority>
</item>
<item>
<title>Titre 2</title>
<description>Description 2</description>
<link>Lien 2</link>
<attachment>Document 2</attachment>
<id>ID2</id>
<name>Nom 2</name>
<language>FR</language>
<date>02/01/1950</date>
<priority>2</priority>
</item>
<item>
<title>Titre 3</title>
<description>Description 3</description>
<link>Lien 3</link>
<attachment>Document 3</attachment>
<id>ID3</id>
<name>Nom 3</name>
<language>EN</language>
<date>03/01/1950</date>
<priority>3</priority>
</item>
</list> |
xsl:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
<xsl:template name="HEADER">
<tr>
<xsl:for-each select="//itemDescription/*">
<xsl:call-template name="FILTER">
<xsl:with-param name="itemNode" select="current()" />
</xsl:call-template>
</xsl:for-each>
</xsl:template>
<xsl:template name="FILTER">
<xsl:param name="itemNode" />
<xsl:value-of select="$itemNode[@displayText]"/> <-------- ICI
<xsl:value-of select="$itemNode[name()]"/> <-------- ICI
</xsl:template> |