我正在使用xslt 1.0,我正在尝试将当前日期和时间打印到我的节点。以下是示例xslt
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:tcm="http://www.tridion.com/ContentManager/5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:em="http://www.emirates.com/tridion/schemas" xmlns:tcmse="http://www.tridion.com/ContentManager/5.1/TcmScriptAssistant" exclude-result-prefixes="em xlink tcmse tcm">
<xsl:output method="xml" version="1.0" encoding="UTF-16" indent="yes"/>
<!-- Common XSLT Templates-->
<xsl:include href="tcm:228-190524-2048"/>
<!-- root match-->
<xsl:template match="root">
<sitedata>
<resources>
<PublishedDate>
<xsl:value-of select="$publishedDate"/>
</PublishedDate>
</resources>
</sitedata>
</xsl:template>
在上面的XSLT中,代替 $ publishedDate 我想要系统当前的日期和时间
请建议!!
答案 0 :(得分:4)
XSLT 1.0没有提供任何标准方法来获取当前日期/时间。您可以调用扩展函数(取决于您的处理器),也可以将其作为参数值传递给样式表。
答案 1 :(得分:1)
以下是使用msxsl.exe command-line utility (对于MSXML)执行此操作的方法:
XSLT代码(testParams.xsl):
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:param name="vDate" select="xyz"/>
<xsl:template match="/">
"<xsl:value-of select="$vDate"/>"
</xsl:template>
</xsl:stylesheet>
XML文档(t.xml)(假,被忽略):
<t/>
<强>命令行强>:
msxsl t.xml testParams.xsl -o con vDate='%date%'
<强>结果强>:
"Sun 10/02/2011"