FREE Web Template Download
HTML CSS JAVASCRIPT SQL PHP BOOTSTRAP JQUERY ANGULARJS TUTORIALS REFERENCES EXAMPLES Blog
 

XSLT current() Function


XSLT Function Reference Complete XSLT Function Reference

Definition and Usage

The current() function returns a node-set that contains only the current node. Usually the current node and the context node are the same.

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

is equal to

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

However, there is one difference. Look at the following XPath expression: "catalog/cd". This expression selects the <catalog> child nodes of the current node, and then it selects the <cd> child nodes of the <catalog> nodes. This means that on each step of evaluation, the "." has a different meaning.

The following line:

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

will process all cd elements that have a title attribute with value equal to the value of the current node's ref attribute.

This is different from

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

that will process all cd elements that have a title attribute and a ref attribute with the same value.


Syntax

node-set current()

Example 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>

View the XML file, View the XSL file, and View the result.


XSLT Function Reference Complete XSLT Function Reference