gpt4 book ai didi

xml - xslt 2.0 处理器是否优化仅选择序列中的第一项?

转载 作者:数据小太阳 更新时间:2023-10-29 02:28:50 25 4
gpt4 key购买 nike

例如,对于输入文档:

<root b="1" />

和样式表:

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/*">
<xsl:variable name="vTest" select="(@a, @b, @c)[1]" />
<xsl:value-of select="$vTest" />
</xsl:template>

</xsl:stylesheet>

XSLT 处理器是否通过不评估序列 (@a, @b, @c)[1] 中的 @c 项来进行优化?

以这种方式定义 vTest 的原因是尝试以更短的方式模拟 xsl:choose 逻辑。

我想这可能很难回答,我对 Saxon XSLT 2.0 处理器版本 9.5+ 特别感兴趣。

最佳答案

撒克逊肯定会做这个优化。但规范中没有任何内容可以保证这一点。并且在某些情况下可能不会发生,例如try/catch 中的执行策略可能会有所不同。但通常是的,大多数半途而废的 XSLT 处理器会在您编写 EXPR[1] 时避免完全计算 EXPR。

关于xml - xslt 2.0 处理器是否优化仅选择序列中的第一项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43257801/

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