XSLT中的DateTime转换

时间:2017-02-02 07:41:10

标签: xslt xslt-1.0

如何将以下xml timestamp属性值更改为xs:dateTime Format。

<TimeValidations>
<timestamp>2017-01-30 09:30:10</timestamp>
</TimeValidations>

我需要将timestamp属性值(2002-05-30 09:30:10)转换为ISO 8601格式,如

2017-01-30T09:30:10(xs:dateTime) 

在XSLT 1.0中。任何人都可以帮我做这个转换吗?

1 个答案:

答案 0 :(得分:1)

也许我的想法过于简单,但如果您的格式与所需的格式不同,请始终只在T分隔日期和时间部分,您可以使用translate - 函数:< / p>

<xsl:template match="/TimeValidations/timestamp">
  <xsl:value-of select="translate(.,' ', 'T')"/>
</xsl:template>

当应用于xml时,它会产生2017-01-30T09:30:10。当然,您可以使用它来构造xs:datetime值。