gpt4 book ai didi

xslt - xsl :message terminate attribute defined by variable (setup like)

转载 作者:行者123 更新时间:2023-12-04 10:53:52 26 4
gpt4 key购买 nike

terminate 定义 xsl 变量<xsl:message> 的属性不起作用:

<xsl:variable name="TERMINATE_ON_ERROR" select="'no'" />

<xsl:message terminate="$TERMINATE_ON_ERROR">
<xsl:text>foo</xsl:text>
</xsl:message>
<!-- ... -->
<xsl:message terminate="$TERMINATE_ON_ERROR">
<xsl:text>bar</xsl:text>
</xsl:message>

这迫使我使用 terminate="no"对于所有情况:

<xsl:message terminate="no">
<xsl:text>foo</xsl:text>
</xsl:message>
<!-- ... -->
<xsl:message terminate="no">
<xsl:text>bar</xsl:text>
</xsl:message>

然后如果我改变主意而不是只更改单个变量,则替换所有这些变量。

我更喜欢 XSLT 1.0 的解决方案(使用 xsltproc)。

最佳答案

在 XSLT 2 ( https://www.w3.org/TR/xslt20/#message ) 和 3 ( https://www.w3.org/TR/xslt-30/#element-message ) 中, terminate属性允许属性值模板(例如 terminate="{$TERMINATE_ON_ERROR}" )但 XSLT 1 https://www.w3.org/TR/xslt-10/#message似乎不允许。

因此,在 XSLT 1 的情况下,主要的类似 XSLT 的方法是编写一个样式表来创建第二个样式表,为此您必须使用 xsl:namespace-alias ,如图 https://www.w3.org/TR/xslt-10/#section-Creating-Elements-and-Attributes .

关于xslt - xsl :message terminate attribute defined by variable (setup like),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59328587/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com