Subject: RE: using a variable in sort block
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Wed, 16 Jul 2003 17:06:09 +0100
|
Didn't we have the same question on the list a week or two ago?
I can't see anything illegal in your stylesheet, there is rule against
using a result tree fragment in a sort key. This sounds like a
non-conformance in your XSLT processor.
On the other hand, what you are trying to do is pointless. If you define
a sortkey with select="$x", then whatever the value of $x, it will be
the same for all the items you are sorting, so there is no point in
sorting them.
You are imagining, of course, that it does select="dyn:evaluate($x)" -
but it doesn't.
Michael Kay
> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of
> Greg Johnson
> Sent: 15 July 2003 18:52
> To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx
> Subject: using a variable in sort block
>
>
> What are the restrictions on using xsl:variables?
> Am I not allowed to use it in an xsl:sort element?
> I get the following error for the folowing xsl fragment:
>
> <xsl:variable name="sortby">ARRIVED</xsl:variable>
> <xsl:variable name="sortorder">descending</xsl:variable>
>
> <xsl:template match="REPORT">
> <h1>
> <xsl:value-of select="$sortby"/>
> </h1>
> <xsl:apply-templates select="INTERCHANGE">
> <xsl:sort select="{$sortby}" order="{$sortorder}" />
> <!-- ERROR HERE --> </xsl:apply-templates> </xsl:template>
>
> ----
>
> Error in XPath Expression: Cannot use result tree fragment.
>
> ----
>
> The <xsl:value-of select="$sortby"/> outputs "ARRIVED"
> correctly, but dies inside the "sort" element.
>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|