RE: [xsl] producing month list in xslt 2.0

Subject: RE: [xsl] producing month list in xslt 2.0
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 28 Jul 2006 22:35:14 +0100
<xsl:variable name="one-month" as="xs:yearMonthDuration" 
              select="xs:yearMonthDuration('P1M')"/>

<xsl:for-each select="0 to 11">
  <xsl:variable name="month" 
     select="month-from-year(current-date() + . * $one-month)"/>

Michael Kay
http://www.saxonica.com
 

> -----Original Message-----
> From: David Murphy [mailto:david@xxxxxxxxxxxxxx] 
> Sent: 28 July 2006 16:54
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] producing month list in xslt 2.0
> 
> Hello
> 
> I'd like to be able to display the next 12 months for use in 
> a calendar application.
> 
> What I have so far:
> 
> <xsl:param name="thisMonth"  select="xs:date(format-date(xs:date($m),
> '[Y]-[M01]-01'))"/>
> 
> <xsl:param name="lastMonth"  select="$thisMonth - 
> xdt:yearMonthDuration('P1M')"/>
> 
> <xsl:param name="nextMonth"  select="$thisMonth + 
> xdt:yearMonthDuration('P1M')"/>
> 
> Is there a way to loop through the next or previous 12 months 
> (wrt the current focus month, $thisMonth) using the built-in 
> date time functions, or am I required to call a counter 
> template to loop from 1 to 12?
> 
> Thanks for any guidance, David

Current Thread