Subject: RE: [xsl] Sorting issue, sorting by description given code From: Jarno.Elovirta@xxxxxxxxx Date: Wed, 29 Oct 2003 08:51:18 +0200 |
Hi, > Aim: To output a list of those Group names for which a Point > belongs to, > sorted alphabetically. > > From above we have three points, so the desired result would be thus > > Group List... > > DEFAULT > LOTS > TREES You're almost there, see the inline comments. <xsl:key name="groups" match="Point" use="@group" /> <!-- Add new key for sorting --> <xsl:key name="x" match="Group" use="@num" /> <xsl:template match="SEEDB"> <table class = "style1" border="1" cellspacing="0" cellpadding="2" width="650"> <tr > <th align="center">Point Groups</th> </tr> <xsl:for-each select="Points/Point[generate-id(.) = generate-id(key('groups',@group)[1])]"> <!-- Sort according to the name --> <xsl:sort select="key('x', @group)/@name" data-type="text"/> <xsl:apply-templates select="."/> </xsl:for-each> </table> </xsl:template> <xsl:template match="Point"> <tr> <td align="center"> <!-- You had a variable $group here, you want to use current() function --> <xsl:value-of select="/SEEDB/Groups/Group[@num = current()/@group]/@name"/> </td> </tr> </xsl:template> > sort the nodeset, and then output, but I wanted to avoid this if > possible, since I am led to believe that some parsers don't have an > equivalent "msxsl:node-set" function. Well, almost, if not all XSLT processors have some sort of e:node-set extension. See <http://exslt.org/> for the common extension for RTF -> node-set conversion. Cheers, Jarno - Assemblage 23: Pages XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Sorting issue, sorting by des, Tony Rowe | Thread | [xsl] xsl:element name value with A, Arvind Bassi |
[xsl] non-breaking whitespace, Saverio Perugini | Date | RE: [xsl] Displaying and using huge, Jarno . Elovirta |
Month |