gpt4 book ai didi

xml - 当被告知返回 false 时,模板返回 true()

转载 作者:行者123 更新时间:2023-12-02 21:15:31 25 4
gpt4 key购买 nike

为什么我从这个模板得到 true 作为返回值:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template name="return-false">
<xsl:value-of select="false()"/>
</xsl:template>
<xsl:template match="/">
<root>
<xsl:variable name="call-template">
<xsl:call-template name="return-false"/>
</xsl:variable>
<xsl:if test="$call-template = true()">
<FALSE/>
</xsl:if>
</root>
</xsl:template>
</xsl:stylesheet>
猜猜我在输出文档 FALSE 元素 上得到了什么。我想知道我应该哭还是应该笑我在这个简单例子中的挣扎。我的挫败感直冲云霄。

最佳答案

xsl:value-of 指令创建一个文本节点。

<xsl:value-of select="false()"/>

返回false()函数的字符串值,即字符串“false”。因此,$call-template 变量的内容是一个包含字符串“false”的文本节点。

http://www.w3.org/TR/xslt/#value-of

接下来,测试 test="$call-template = true()" 返回 true(),因为:

  • 您正在将文本节点与 bool 值进行比较;
  • 与 bool 值比较的节点首先被转换为 bool 值;
  • 当转换为 bool 值时,存在的节点将被评估为 true()

http://www.w3.org/TR/xpath/#booleans

关于xml - 当被告知返回 false 时,模板返回 true(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33830175/

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