RE: [xsl] Evaluating parameter in <xsl:when> vs evaluating parameter in <xsl:sort>.

Subject: RE: [xsl] Evaluating parameter in <xsl:when> vs evaluating parameter in <xsl:sort>.
From: "Andrew Welch" <awelch@xxxxxxxxxxxxxxx>
Date: Wed, 24 Jul 2002 14:09:44 +0100
I don't think you want to use xalan:evaluate at all here.  You are
creating the the variable to hold the value of <sortby>, then you want
to see if <sortby> value-of is 'name' otherwise use it as the basis for
a sort...

so you could should look like:

<xsl:variable name="sortParameter">
      <xsl:value-of select="sortby"/>
</xsl:variable>

<xsl:choose>
  <xsl:when test="$sortParameter = 'name'" >
    <xsl:for-each select="query">
      <xsl:sort select="$sortParameter" order="ascending"/>
           ......
  </xsl:when>
  <xsl:otherwise>
    <xsl:for-each select="query">
      <xsl:sort select="$sortParameter" order="descending"/>

If you really do need to evaluate the var as an xpath, post some more
code for more accuarate help

cheers
andrew


-----Original Message-----
From: Roelf Jansen [mailto:roelf@xxxxxxxxxxxx]
Sent: 24 July 2002 13:03
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] Evaluating parameter in <xsl:when> vs evaluating
parameter in <xsl:sort>.


Hi there

In the following snippet the " xalan:evaluate($sortParameter) " gets the
correct value when placed in the  <xsl:sort> tag but not does not
seem to do so when placed in the <xsl:when> tag.
Is there any reason why the evaluation in the <xsl:when> tag is not
working in my code?

....
<xsl:variable name="sortParameter">
      <xsl:value-of select="sortby"/>
</xsl:variable>

 <xsl:choose>
        <xsl:when test="xalan:evaluate($sortParameter) = 'name'" >
              <xsl:for-each select="query">
              <xsl:sort select="xalan:evaluate($sortParameter)"
order="ascending"/>
              ......
        </xsl:when>
<xsl:otherwise>
          <xsl:for-each select="query">
          <xsl:sort select="xalan:evaluate($sortParameter)"
order="descending"/>
....


Thanks in advance
Roelf



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list





---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.373 / Virus Database: 208 - Release Date: 01/07/2002
 

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.373 / Virus Database: 208 - Release Date: 01/07/2002
 

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread