1.0 版中的 XSLT ../name()

XSLT ../name() in version 1.0

我作为初学者为 2.0 版编写了 xslt,它是有效的

    <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''

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

dll 的第 3 方,用于在 python 上生成 html,就像 Saxon 的工作一样,但对我来说是不可能的 谢谢

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