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

Re: [xsl] calculate UTC


Subject: Re: [xsl] calculate UTC
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Sun, 24 Jun 2012 15:20:20 -0300

At 2012-06-24 17:35 +0100, henry human wrote:
thanks, I need only the difference and your script bello helps:
<xsl:value-of select="timezone-from-dateTime(xsd:dateTime(concat(MSG/DTE,'T',TME)))- implicit-timezone()"/>
But the result must be only the difference in hhmm format.
result sample: 0212
?

Then I've already done the heavy lifting and all you need to do is format it by converting it to a time. Durations cannot be formatted directly, so I added the value of the timezone duration to midnight. You may want to deal with negative values if that is important to you.


I hope the code below helps.

. . . . . . . Ken

~/t/ftemp $ cat henry2.xml
<?xml version="1.0" encoding="UTF-8"?>
<STSF>
<DTE>2012-06-14</DTE>
<TME>06:20:00.0Z</TME>
</STSF>
~/t/ftemp $ xslt2 henry2.xml henry2.xsl
<?xml version="1.0" encoding="UTF-8"?>
Local time zone: -PT3H
Time zone difference: PT3H
Formatted time zone difference: 03:00
File time in local time: 2012-06-14T03:20:00-03:00
~/t/ftemp $ cat henry2.xsl
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  exclude-result-prefixes="xsd"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  version="2.0">

<xsl:output indent="yes"/>

<xsl:template match="STSF">
Local time zone: <xsl:value-of select="implicit-timezone()"/>
Time zone difference: <xsl:value-of
    select="timezone-from-dateTime(xsd:dateTime(concat(DTE,'T',TME)))
            - implicit-timezone()"/>
Formatted time zone difference: <xsl:value-of
    select="format-time( xsd:time('00:00:00')+
            timezone-from-dateTime(xsd:dateTime(concat(DTE,'T',TME)))
            - implicit-timezone(), '[H01]:[m01]')"/>
File time in local time: <xsl:value-of
                          select="adjust-dateTime-to-timezone(
                                  xsd:dateTime(concat(DTE,'T',TME)),
                                  implicit-timezone())"/>
  <xsl:text>&#xa;</xsl:text>
</xsl:template>

</xsl:stylesheet>
~/t/ftemp $


-- Public XSLT, XSL-FO, UBL and code list classes in Europe -- Oct 2012 Contact us for world-wide XML consulting and instructor-led training Free 5-hour lecture: http://www.CraneSoftwrights.com/links/udemy.htm Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Google+ profile: https://plus.google.com/116832879756988317389/about Legal business disclaimers: http://www.CraneSoftwrights.com/legal


Current Thread
Keywords