我的目标:我需要使用 XSL 样式表将 XML 文档中的“出生日期”元素转换为“年龄”值并生成 XHTML 页面。我正在使用 Web 浏览器(例如 IE/FF)直接打开 XML 文档。
我知道 XSLT 2.0 具有内置的日期和时间功能,但我认为目前没有浏览器支持此功能。所以,我一直在尝试使用 EXSLT 函数,但没有成功。
这是我的示例测试文件:
测试.xml
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<test>
</test>
测试.xsl
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:date="http://exslt.org/dates-and-times">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:value-of select="date:date-time()"/>
</xsl:template>
</xsl:stylesheet>
IE8 上的错误:
Namespace 'http://exslt.org/dates-and-times' does not contain any functions.
FF4 错误:
Error during XSLT transformation: An unknown XPath extension function was called.
这是否意味着主要 Web 浏览器不支持 EXSLT?我必须使用像 SAXON/Xalan 这样的 XSLT 处理器吗?难道我做错了什么?有替代方法吗?