RE: [xsl] how to sort by different attributes in a table

Subject: RE: [xsl] how to sort by different attributes in a table
From: "Shen, Ching" <Shenc@xxxxxxxx>
Date: Mon, 30 Aug 2004 16:42:03 -0500
Michael:
Thanks for the suggestion. Unfortunately, you change didn't work.
Here Sort=1,2,3.... which is column position number
But @[local-name()] = A, B, C, ... which is column name

Any further suggest?


-----Original Message-----
From: Michael Kay [mailto:mhk@xxxxxxxxx]
Sent: Monday, August 30, 2004 4:06 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] how to sort by different attributes in a table


This is a FAQ.

Use <xsl:sort select="@*[local-name() = $Sort]"/>

The reason your attempt doesn't work is that a sort key such as $Sort that
doesn't depend on the context node will have the same value for each of the
nodes in the node-set being sorted. The system can't guess that you want to
treat the value of this variable, e.g. "HOSTNAME", as an XPath expression.

Michael Kay



> -----Original Message-----
> From: Shen, Ching [mailto:Shenc@xxxxxxxx]
> Sent: 30 August 2004 20:54
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] how to sort by different attributes in a table
>
>
> I have a xml file which looks like
> <Rows>
>   <Row>
>     <Columns A=3D"HOSTNAME" B=3D"IPADDRESS" C=3D"BRAND/MODEL" />
>   </Row>
>  <Row>
>     <Columns A=3D"AA" B=3D"23" C=3D"ibm" />
>   </Row>
> ......
> </Rows>
>
>
> I have all attributes list in a table as columns and I need a
> xsl syntax =
> which will allow me to sort by selected attribute, when they click =
> attribute header,=20
>
> i. e. when user click 2nd column header, all xml file will sorted by =
> <xsl:sort select=3D"*/@B" />
>
> The following syntax failed to work and I run out clue. Here  header =
> link set to Sort=3D{position()}=20
>
>     <xsl:apply-templates select=3D"*/*">
>                 <xsl:sort select=3D"*/@Columns[$Sort]" />
>     </xsl:apply-templates>
>
> Does anybody have done this before and can help me out with
> right syntax?
> Your suggestions will be greatly appreciated
>
>
> Thank you!
>
> Ching

Current Thread