获取元素的值并使其成为 XSLT 中属性的值?
Posted
技术标签:
【中文标题】获取元素的值并使其成为 XSLT 中属性的值?【英文标题】:getting value of an element and make it the value of an attribute in XSLT? 【发布时间】:2021-10-23 09:57:34 【问题描述】:我正在使用 xslt 将 xml 文件转换为结构不同的 xml 文件。 我想获取旧文件中元素的值,并将其作为新文件中属性的值。但是,代码在属性中不起作用。这是我想看到的:
来自
<cell n="1">1285</cell>
到
<date value="1285">1285<date>
我在 XSLT 中写了这个
<date when="<xsl:value-of select="t:cell[1]"/>"><xsl:value-of select="t:cell[1]"/></date>
但它在属性中不起作用。任何帮助将不胜感激!
【问题讨论】:
【参考方案1】:你可以使用这个模板:
<xsl:template match="cell">
<date>
<xsl:attribute name="value"><xsl:value-of select="." /></xsl:attribute>
<xsl:value-of select="." />
</date>
</xsl:template>
它的输出是
<date value="1285">1285</date>
或者,在基于cell
上下文元素的一行(较短)中(使用属性值模板):
<xsl:template match="cell">
<date value="."><xsl:value-of select="." /></date>
</xsl:template>
【讨论】:
谢谢!但不是以上是关于获取元素的值并使其成为 XSLT 中属性的值?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 xslt 获取 XML 的属性值和代码作为 html 的值
在 Swift 中删除 Unwrapped 并使其成为可选? [复制]