[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] Converting date formats


Subject: RE: [xsl] Converting date formats
From: "Hewko, Doug" <Doug.Hewko@xxxxxxxxxxxxxxx>
Date: Thu, 7 Jun 2001 15:19:23 -0400

Thanks for the help. Do you have an example? I am very new to XML (just
starting to learn even what a DTD is for) and am unable to get the previous
suggestions to work. When I entered the "xsl:variable" solution, I got a
"can not use xsl:variable there" type message.

-----Original Message-----
From: Gary Frederick [mailto:gary.frederick@xxxxxxxxx]
Sent: June 7, 2001 2:41 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Converting date formats


Others gave the direct way to translate dates. You can also use the XSLT 
Standard Library
   http://xsltsl.sourceforge.net/

=====
I use it to print events for a calendar. The input is iCalendar 
converted to XML.

...
<DTSTART>
   <param kind="TZID">CT(America/Chicago)</param>
   <value>20010609T090000</value>
</DTSTART>


The stylesheet parts are
...
<xsl:call-template name="DATE">
   <xsl:with-param name="this-date" select="DTSTART/value"/>
</xsl:call-template>
...
<xsl:template name="DATE">
   <xsl:param name="this-date"/>

   <xsl:call-template name="dt:format-date-time">
     <xsl:with-param name="year" select='substring($this-date, 1, 4)' />
     <xsl:with-param name="month" select='substring($this-date, 5, 2)'/>
     <xsl:with-param name="day" select='substring($this-date, 7, 2)'/>
     <xsl:with-param name="hour" select='substring($this-date, 10, 2)'/>
     <xsl:with-param name="minute" select='substring($this-date, 12, 2)'/>
     <xsl:with-param name="second" select='substring($this-date, 14, 2)'/>
     <xsl:with-param name="time-zone"></xsl:with-param>
     <xsl:with-param name="format" select="'%Y-%m-%dT %H:%M:%S'" />
   </xsl:call-template>
</xsl:template>



It's overkill if you just want to convert the date. Perhaps you want to 
format dates in several ways...

Gary


Hewko, Doug wrote:

> In my XML document, I have a date stored in ISO format:
> <LASTUPDATED FORMAT="ISODATE">20010125</LASTUPDATED>
> 
> How can I convert this in my XSL file to dd/mm/yyy format (with the
dashes)?
> 
> I am currently using the command:
> 			<td><xsl:value-of select="LASTUPDATED"/></td>
> 
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread
Keywords