Subject: [xsl] Sorting problem... From: "David M. Goudreau" <david_goudreau@xxxxxxxxxxxxxxxxx> Date: Tue, 13 Feb 2001 18:29:03 -0800 |
Hi list - I'm trying to sort some concatenated strings in a dropdown box in my XSL. (I'm also sure there's a more compact way to write my XSL, frankly). My XML is: <root sub_id="84"> <folder name="c" cdate="2/13/01" id="f_49"> <folder name="m" cdate="2/13/01" id="f_42" /> </folder> <folder name="y" cdate="2/13/01" id="f_45" /> <folder name="d" cdate="2/13/01" id="f_43" /> <folder name="r" cdate="2/13/01" id="f_44" /> <folder name="d" cdate="2/13/01" id="f_49"> <folder name="t" cdate="2/13/01" id="f_42"> <folder name="z" cdate="2/13/01" id="f_42"> </folder> </folder> </root> I want my output to look alphabetical like the following: -c --c:m -d --d:t ---d:t:z -r -y My XSL looks like this: <xsl:template match="root"> <xsl:apply-templates/> </xsl:template> <xsl:template match="folder"> <xsl:if test="count(ancestor::node())='2'"> <option> <xsl:attribute name="value"> <xsl:value-of select="@id"/> </xsl:attribute> -<xsl:value-of select="@name"/> </option> </xsl:if> <xsl:if test="count(ancestor::node())='3'"> <option> <xsl:attribute name="value"> <xsl:value-of select="@id"/> </xsl:attribute> --<xsl:value-of select="../@name"/>:<xsl:value-of select="@name"/> </option> </xsl:if> <xsl:if test="count(ancestor::node())='4'"> <option> <xsl:attribute name="value"> <xsl:value-of select="@id"/> </xsl:attribute> ---<xsl:value-of select="../../@name"/>:<xsl:value-of select="../@name"/>:<xsl:value-of select="@name"/> </option> </xsl:if> <xsl:apply-templates/> </xsl:template> The results are not currently sorted at all. Thanks much for your help! -dmg XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Microsoft CLR (was: XSLT , Adam Van Den Hoven | Thread | Re: [xsl] Sorting problem..., cutlass |
RE: [xsl] XPATH and MSXML, Ciaran Byrne | Date | RE: [xsl] XSLT 1.1 comments, Joshua Allen |
Month |