xsl-list
[Top] [All Lists]

Re: Sorting based on a calculated set of values

2003-01-13 11:31:08
Thanks for the answer Jeni.  On a related note, does anyone have information
on how this actually happens in an XML parser?   What I mean to ask is
whether the parser goes through the xml file once, doing the calculation and
sort at the same time, or does the xml tree get traversed multiple times in
a process such as this?

Thanks,
AWK


On 1/13/03 1:05 PM, "Jeni Tennison" <jeni(_at_)jenitennison(_dot_)com> wrote:

Hi Andrew,

And my out put is an HTML table table with four columns:
Col 1: the item id
Col 2: the a value
Col 3: the b value
Col 4: the product of a and b

Can I sort my output by the fourth column? I know how to sort by the
item id, a, or b, but don't know what I need to do to properly
address the calculated value "column".

You can sort by any expression you like by putting it in the select
attribute of xsl:sort. In this case you need:

<xsl:for-each select="item">
  <xsl:sort select="a * b" data-type="number" />
  <tr>
    <td><xsl:value-of select="@id" /></td>
    <td><xsl:value-of select="a" /></td>
    <td><xsl:value-of select="b" /></td>
    <td><xsl:value-of select="a * b" /></td>
  </tr>
</xsl:for-each>

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/




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



<Prev in Thread] Current Thread [Next in Thread>