如何在Saxon-HE中获得EXSLT支持?

时间:2011-05-05 12:30:52

标签: xml xslt saxon exslt

我有一堆XSLT文件,我需要处理一些XML文件。我无法更改XSLT文件,因为它们来自第三方。 XSLT是2.0版。

我使用的是Mac OS X 10.6,看起来Saxon-HE是唯一可用的XSLT 2.0处理器。

大多数XSLT的工作正常,但是,有些人会提出有关缺失函数的错误,特别是month-in-year()和其他与日期/时间相关的函数。

根据 http://www.saxonica.com/documentation/extensions/exslt.xml关于EXSLT:

  

这些扩展可在Saxon-PE和Saxon-EE中“开箱即用”。它们不适用于Saxon-HE

无论如何我可以使用Saxon-HE的EXSLT功能吗?

如果可以的话,我很乐意转移到其他工具/处理器。

3 个答案:

答案 0 :(得分:6)

Saxon-B 9.1仍然适用于有这种要求的人。当您使用XSLT 2.0时,几乎不需要EXSLT扩展,但是您确实遇到过使用它们的样式表,如果您想坚持使用开源软件,Saxon-B仍可用于此目的。

答案 1 :(得分:1)

Saxon9 HE没有EXSLT扩展名。为了使用EXSLT,您需要恢复到Saxon 9.1或者完全选择不同的产品,例如Xalan(Java)或MSXML(Windows)或LibXSLT(C和脚本),所有这些只实现XSLT和XPath 1.0。也就是说,使用Saxon9 HE和XSLT 2.0,为什么还需要EXSLT?

好的,应该在回复之前阅读你的帖子。要求似乎是:

  • XSLT 2.0
  • EXSLT
  • 无法更改XSLT

如果这是假设的全部,那么看起来就像Saxon9 PE或EE一样。 (当然,或者Saxon 9.1。)

答案 2 :(得分:0)

无论您选择哪种处理器,它都不必本身支持EXSLT功能,它只需要是可扩展的,这样您就可以注册自己的功能,这样您就可以自己实现EXSLT功能。