Subject: Re: [xsl] Converting date formats From: Gary Frederick <gary.frederick@xxxxxxxxx> Date: Thu, 07 Jun 2001 15:40:06 -0500 |
Hi, Doug:
If you are new to XSLT, you really should start by going through a primer before trying to code anything productive. If you have any question, check out FAQ at http://www.laidback.org/dpawson/xsl/xslfaq.html first. In any case, here is a complete working XSL illustrate date formatting. I set current date into a variable and output it in the format you wanted. This is a good start point for you to massage this code into your own code: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <xsl:variable name="date" select="20010607"/> <xsl:value-of select="concat(substring($date, 7, 2),'/',substring($date, 5, 2),'/',substring($date, 1, 4))"/> </xsl:template> </xsl:stylesheet>
Hope this helps, Xiaocun
--- "Hewko, Doug" <Doug.Hewko@xxxxxxxxxxxxxxx> wrote:
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
__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 a year! http://personal.mail.yahoo.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Converting date formats, Xiaocun Xu | Thread | RE: [xsl] Converting date formats, Michael Kay |
[xsl] NIST Tests, Carmelo Montanez | Date | [no subject], Howard Lim |
Month |