动态创建xslt路径

Wil*_*her 0 xml xslt

我有以下问题:考虑像这样的xml:

<root>
    <bar>
        <status>456</status>
    </bar>
    <foo>
        <status>123</status>
    </foo>
    <tablename>foo</tablename>
</root>
Run Code Online (Sandbox Code Playgroud)

如何选择节点的值status,但只选择父节点等于tablename?的值?

非常感谢!

Mar*_*nen 5

使用/root/*[local-name() = /root/tablename]/status.

  • 在谓词中,上下文是左侧选择的节点,因此相对路径`*[local-name()= root/tablename]`将本地名称与`root`子元素的孙子`tablename`值进行比较,例如你的XML需要`<foo> <root> <tablename> foo </ tablename> </ root> <status> ... </ status> </ foo>`. (2认同)