使用XSLT标准库中的日期函数

ZDNet软件频道 时间:2003-12-11 作者:ZDNet China |  我要评论()
本文关键词:架构 XSLT
XSLT-SL项目使得我们有了丰富的函数库可以用在XSL stylesheets中。下面我们就来研究几个数据函数,看看我们怎么在stylesheets中使用它们。
本文译自Builder.com,未经许可请勿转载
XSLT-SL项目使得我们有了丰富的函数库可以用在XSL stylesheets中。这些函数包括字符串操作,节点处理,URL处理以及日期函数。下面我们就来研究几个数据函数,看看我们怎么在stylesheets中使用它们。

日期名称(Day name)

day name函数可以让我们指定一个日期并返回该日期的名称(比如星期一、星期二之类)。这可以使你的XML文档更加规范,便于阅读。

Listing A 是我们将要在本文中用到的XML文档例子。Listing B 说明了day name函数在XSL stylesheet中的用法。

Listing A:

mydoc.xml
<?xml version="1.0" ?>
<MyDoc>
  <SomeDate>
    <Year>2003</Year>
    <Month>1</Month>
    <Day>1</Day>  
  </SomeDate>
  <SomeTime>
    <Hour>12</Hour>
    <Minute>30</Minute>
    <Second>00</Second>
    <TZ>-05:00</TZ>
  </SomeTime>
</MyDoc>


Listing B:

getday.xsl
<?xml version="1.0"  ?>
<xsl:stylesheet version="1.0"
    xmlns:xsl=http://www.w3.org/1999/XSL/Transform
    xmlns:dt="http://XSLTsl.org/date-time">

<xsl:import href="http://XSLTsl.sourceforge.net/modules/stdlib.xsl"/>

<xsl:template match="/">
  <MyDoc>
    <xsl:variable name="dow">
      <xsl:call-template name="dt:calculate-day-of-the-week">
        <xsl:with-param name="year" select="MyDoc/SomeDate/Year"/>
        <xsl:with-param name="month" select="MyDoc/SomeDate/Month"/>
        <xsl:with-param name="day" select="MyDoc/SomeDate/Day"/>
      </xsl:call-template>
    </xsl:variable>
    <DayOfWeek>
      <xsl:value-of select="$dow" />
    </DayOfWeek>
    <NameOfDay type="long">
      <xsl:call-template name="dt:get-day-of-the-week-name">
        <xsl:with-param name="day-of-the-week" select="$dow"/>
      </xsl:call-template>         
    </NameOfDay>
    <NameOfDay type="abbreviated">
      <xsl:call-template name="dt:get-day-of-the-week-abbreviation">
        <xsl:with-param name="day-of-the-week" select="$dow"/>
      </xsl:call-template>         
    </NameOfDay>
  </MyDoc>
</xsl:template>
</xsl:stylesheet>


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134