Hi Allistair,
I have a looping for-each and need to sort the list. There are 2
values that I would like to sort by and both show the same HTML
output so it would be good if I could just set the
<xsl:sort select={$orderBy}" order="ascending" />
where orderBy variable is set to "@forename" or "@surname".
Unfortunately, attributes that contain XPath expressions (such as the
select attribute of <xsl:sort>) are never attribute value templates.
The traditional way around this is to use something like:
<xsl:sort select="@*[name() = $orderBy]" order="ascending" />
where $orderBy is 'forename' or 'surname'. In other words, select the
attribute whose name is specified by $orderBy.
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list