XSLT current()Función


XSLT 函数参考对象Referencia completa de funciones XSLT

Definición y uso

La función current() devuelve un conjunto de nodos que contiene únicamente el nodo actual. Normalmente, el nodo actual y el nodo de contexto son el mismo.

<xsl:value-of select="current()"/>

Igual a

<xsl:value-of select="."/>

Sin embargo, hay una diferencia. Veamos la siguiente expresión XPath: "catalog/cd". La expresión selecciona los elementos secundarios <catalog> del nodo actual, y luego selecciona los elementos secundarios <cd> del nodo <catalog>. Esto significa que, en cada paso del cálculo, "." tiene un significado diferente.

La siguiente línea:

<xsl:apply-templates select="//cd[@title=current()/@ref]"/>

Procesará todos los elementos cd cuyo valor del atributo title sea igual al valor del atributo ref del nodo actual.

A diferencia de esto:

<xsl:apply-templates select="//cd[@title=./@ref]"/>

Esto procesará todos los elementos cd donde los atributos title y ref tengan el mismo valor.


Sintaxis

node-set current()

Ejemplo 1

<?xml version="1.0" encoding="ISO-8859-1"?>
<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>

、 、 。


XSLT 函数参考对象Referencia completa de funciones XSLT Otras extensiones