如何将文本读取为 xpath 表达式


如果

有人能帮助我找到一种将文本读取为 xpath 表达式的方法,我将不胜感激

例如,这是我的XML文档

<abc>
    <XYZ>
        <include>/citizen[./marital_status[text() ='married']]</include>
    </XYZ>
</abc>

我正在写一个样式表

    <xsl:template match="abc">
        <xsl:call-template name="evaluate">
            <xsl:with-param name="include">
                <xsl:apply-templates select="$include"/>
            </xsl:with-param>
        </xsl:call-template>
    </xsl:template>

这里的问题是<include>元素的文本是我想成为 <xsl:apply-templates select="$include"/> 中的 xpath 表达式的东西。 这将给我已婚的公民,但在这里我只是得到字符串本身"/citizen[./marital_status[text() ='married']]"结果。有什么可能的方法吗?

提前致谢

检查您选择的 XSLT 处理器中可用的内容:查看它是否具有某种 xx:evaluate() 扩展函数。如果没有,或者如果您想要一个可移植的解决方案,另一种方法是生成包含相关表达式的样式表(或样式表模块),然后编译并执行样式表。

相关内容

  • 没有找到相关文章

最新更新