首页 > 解决方案 > 1.0 版中的 XSLT ../name()

问题描述

我以初学者 xslt 的身份写了 2.0 版,它可以工作

    <xsl:template name="ParamOrTpItem">
            <xsl:param name="prefix"/>
            <xsl:choose>
                <xsl:when test="../name()='or'">
....

此模板用于显示条件,它是递归调用。我想通过 python 和 lxml 生成 html,所以我切换到 1.0 版,因为它是 lxml 的必需品

xsl:when : could not compile test expression '../name()='or''

我可以在测试表达式语法中使用name()../Atribute,但对于 XSLT 1.0,组合../name()是不可能的。你能建议我解决这种情况吗,我想升级name()

dll 的第 3 方,用于像撒克逊一样在 python 上生成 html,但对我来说是不可能的,谢谢

标签: xsltexpressionlevelup

解决方案


使用name(..) = 'or'../self::or。同样对于 Python,现在有一个模块可以将 Saxon 9.9 C 与 Python 一起使用。


推荐阅读