XSLT current()-funktio
Määritelmä ja käyttö
current()-funktio palauttaa solmunjoukon, joka sisältää vain nykyisen solmun. Yleensä nykyinen solmu ja kontekstisolmu ovat samat.
<xsl:value-of select="current()"/>
On yhtä kuin
<xsl:value-of select="."/>
Mutta on olemassa yksi ero. Tarkastellaan seuraavaa XPath-lauseketta: "catalog/cd". Lauseke valitsee nykyisen solmun <catalog>-alisolmun ja sitten <catalog>-solmun <cd>-alisolmun. Tämä tarkoittaa, että "."-merkki on eri merkityksellä jokaisessa laskennan vaiheessa.
Alla oleva rivi:
<xsl:apply-templates select="//cd[@title=current()/@ref]"/>
Tämä käsittelee kaikkia cd-elementtejä, joilla title-ominaisuuden arvo on sama kuin nykyisen solmun ref-ominaisuuden arvo.
Tämä on erilainen:
<xsl:apply-templates select="//cd[@title=./@ref]"/>
Tämä käsittelee kaikkia cd-elementtejä, joilla title- ja ref-ominaisuudet ovat samat.
Syntax
node-set current()
Esimerkki
<?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"> Nykyinen solmu: <xsl:value-of select="current()"/> <br /> </xsl:for-each> </body> </html> </xsl:template> </xsl:stylesheet>
Tarkista XML-tiedosto,Tarkista XSL-tiedosto,Tarkista tulokset.