Subject: RE: using exsl:node-set()
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Mon, 26 Jul 2004 11:14:54 +0100
|
You mean exslt.org, I think.
The node-set() function cannot be implemented using XSLT itself, it has to
be implemented by the vendor. All XSLT implementations that I know of
provide such a function, but it's sometimes in the vendor's namespace rather
than the EXSLT namespace.
Michael Kay
> -----Original Message-----
> From: Markus Hanel [mailto:markus.hanel@xxxxxx]
> Sent: 26 July 2004 10:58
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: using exsl:node-set()
>
> hallo,
> I make something wrong! I want to use the exsl:node-set()
> function but at
> www.exsl.org there is no download of the exsl.node-set.xsl
> stylesheet. But
> in the main download there are two stylesheets:
> exsl.node-set.1.xsl and
> exsl.node-set.2.xsl, but this not works.
>
> markus
>
> <?xml version="1.0" encoding="iso-8859-1"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> xmlns:exsl="http://exslt.org/common"
> extension-element-prefixes="exsl">
>
> <xsl:import href="exsl.node-set.1.xsl" />
> <xsl:import href="exsl.node-set.2.xsl" />
>
> <xsl:template match="/">
> <html>
> <head><title></title></head>
>
> <body>
> <xsl:apply-templates select="./table" />
> </body>
> </html>
> </xsl:template>
>
> <xsl:template match="table">
> <xsl:variable name="sorted-rows-rtf">
> <xsl:for-each select="./row">
> <xsl:sort select="sum(./cell/@points)" data-type="number"
> order="descending" />
> <xsl:copy-of select="." />
> </xsl:for-each>
> </xsl:variable>
>
> <xsl:variable name="sorted-rows"
> select="exsl:node-set($sorted-rows-rtf)/row" />
> <xsl:value-of select="sum($sorted-rows[position() <=
> 4]/cell/@points)"
> />
> </xsl:template>
> </xsl:stylesheet>
|