Função XSLT atual()
❮ Referência da Função XSLTDefinição e uso
A função current() retorna um conjunto de nós que contém apenas o nó atual. Normalmente, o nó atual e o nó de contexto são os mesmos.
<xsl:value-of select="current()"/>
é igual a
<xsl:value-of select="."/>
No entanto, há uma diferença. Observe a seguinte expressão XPath: "catalog/cd". Essa expressão seleciona os nós filho <catalog> do nó atual e, em seguida, seleciona os nós filho <cd> dos nós <catalog>. Isso significa que em cada etapa da avaliação, o "." tem um significado diferente.
A seguinte linha:
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
irá processar todos os elementos cd que possuem um atributo title com valor igual ao valor do atributo ref do nó atual.
Isso é diferente de
<xsl:apply-templates select="//cd[@title=./@ref]"/>
que processará todos os elementos cd que possuem um atributo title e um atributo ref com o mesmo valor.
Sintaxe
node-set current()
Exemplo 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>
Visualize o arquivo XML , Visualize o arquivo XSL e Visualize o resultado .
❮ Referência da Função XSLT