Fonction XSLT courant()
❮ Référence des fonctions XSLTDéfinition et utilisation
La fonction current() renvoie un ensemble de nœuds qui contient uniquement le nœud actuel. Habituellement, le nœud actuel et le nœud de contexte sont identiques.
<xsl:value-of select="current()"/>
est égal à
<xsl:value-of select="."/>
Cependant, il y a une différence. Regardez l'expression XPath suivante : "catalog/cd". Cette expression sélectionne les nœuds enfants <catalog> du nœud actuel, puis elle sélectionne les nœuds enfants <cd> des nœuds <catalog>. Cela signifie qu'à chaque étape de l'évaluation, le "." a un sens différent.
La ligne suivante :
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
traitera tous les éléments cd qui ont un attribut title avec une valeur égale à la valeur de l'attribut ref du nœud actuel.
Ceci est différent de
<xsl:apply-templates select="//cd[@title=./@ref]"/>
qui traitera tous les éléments cd qui ont un attribut title et un attribut ref avec la même valeur.
Syntaxe
node-set current()
Exemple 1
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="catalog/cd/artist">
Current node: <xsl:value-of select="current()"/>
<br />
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Afficher le fichier XML , Afficher le fichier XSL et Afficher le résultat .
❮ Référence des fonctions XSLT