Subject: Re: Sorting by date
From: sudheshna iyer <sudheshnaiyer@xxxxxxxxx>
Date: Tue, 27 May 2008 11:35:04 -0700 (PDT)
|
Excellent! Thank you very much for your help.
--- Martin Honnen <Martin.Honnen@xxxxxx> wrote:
> sudheshna iyer wrote:
> > I am using xsl:stylesheet version="1.0".
>
> Here is an XSLT 1.0 stylesheet that produces the
> result you described.
> You only need to complete the "translation table"
> for the months:
>
> <xsl:stylesheet
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> xmlns:dt="http://example.com/2008/data"
> version="1.0">
>
> <xsl:output method="text"/>
>
> <data xmlns="http://example.com/2008/data">
> <month s="Jan" n="01"/>
> <month s="Feb" n="02"/>
> <month s="Mar" n="03"/>
> <month s="Apr" n="04"/>
> <!-- add other months here -->
> </data>
>
> <xsl:template match="/">
> <xsl:apply-templates select="rss/channel/item">
> <xsl:sort data-type="number"
> order="descending"
> select="concat(substring(SortDate, 13, 4),
> document('')/xsl:stylesheet/dt:data/dt:month[@s =
> substring(current()/SortDate, 9, 3)]/@n,
> substring(SortDate, 6, 2))"/>
> </xsl:apply-templates>
> </xsl:template>
>
> <xsl:template match="item">
> <xsl:value-of
> select="concat(substring(SortDate, 13, 4), '-',
> document('')/xsl:stylesheet/dt:data/dt:month[@s =
> substring(current()/SortDate, 9, 3)]/@n, '-',
> substring(SortDate, 6, 2),
> '
', title, '
')"/>
> </xsl:template>
>
> </xsl:stylesheet>
>
>
> --
>
> Martin Honnen
> http://JavaScript.FAQTs.com/
|