【问题标题】:Xalan date extension problemXalan 日期扩展问题
【发布时间】:2011-06-03 09:10:27
【问题描述】:

我正在尝试使用 xalan 的 ubuntu cli 版本:

Xalan version 1.10.0
Xerces version 2.8.0

我的问题是如何使用日期函数。我试过这样:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
                xmlns:xs="http://www.w3.org/2001/XMLSchema"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:date="http://exslt.org/dates-and-times" extension-element-prefixes="date">

<xsl:import href="date/date.xsl" />
<xsl:output method="text" indent="yes" />
date: <xsl:value-of select="date:date()" />
</xsl:stylesheet>

它给了我这个信息:

XSLException Type is: XalanXPathException
Message is: The function number 'http://exslt.org/dates-and-times:date' is not available. (file:///home/user/test.xsl, line x, column y)

我需要更改哪些文件或哪些内容才能使这些日期功能正常工作?

【问题讨论】:

    标签: xslt xalan exslt


    【解决方案1】:

    文档显示它具有该子集的内置 beta 实现,但它并没有说您不能从 exslt.org 导入和使用这些函数。为什么你不能? Xalan-c++ 不支持导入函数吗?

    请注意,我 能够让模板正常工作。只是不是函数。

    【讨论】:

      【解决方案2】:

      来自http://xml.apache.org/xalan-c/extensionslib.html

      Xalan-C++ 包括测试版 四个函数的实现 EXSLT 命名空间(有些是 呼叫分机已经在 Xalan 命名空间)。

      http://xml.apache.org/xalan-c/apiDocs/XalanEXSLTDateTimeImpl_8hpp.html 看来,似乎只实现了date:date-time()

      【讨论】:

        【解决方案3】:

        您需要使用更高版本的 Xalan

        来自Xalan J.2.7.1 documentation

        EXSLT 扩展

        Xalan-Java 支持 EXSLT 主动提供一套 标准扩展功能和 XSLT 用户的元素。 Xalan-Java 包括实现 以下 EXSLT 扩展模块:

        EXSLT 常用函数 EXSLT 数学 函数 EXSLT 设置函数

        EXSLT 日期和时间函数

        EXSLT 动态函数

        EXSLT 字符串函数

        EXSLT func:function 和 func:result 元素(参见 EXSLT - 函数:函数)

        【讨论】:

        • 这不是 Xalan-Java!它是 Xalan c++,是最新版本。
        • 那么,如果 Xalan C++ 没有实现 EXSLT 日期,您可以使用带有 JS 的 &lt;xalan:script&gt; 元素或 XSelerator 附带的 date_time 库,并且是纯 XSLT(无扩展功能)。
        • 确实,Xselerator26.msi 包含由 Martin "Marrow" Rowlinson 实现的纯 xsl 实现的 Samples\Libraries\datetime_lib.xsl。 “没有使用限制”。见stackoverflow.com/questions/7346178/…
        • @Vadzim,是的,但是由于不再提供 XSelerator(如果有新的开发,请纠正我),我没有提到这个事实,因为人们无法找到XSelerator 并且会感到沮丧。
        • 我写了上面的评论,并为这些人提供了仍然有效的下载链接。 )
        猜你喜欢
        • 2013-12-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-12
        相关资源
        最近更新 更多