gpt4 book ai didi

xml - 如何选择特定命名空间中的元素?

转载 作者:行者123 更新时间:2023-12-03 16:56:06 26 4
gpt4 key购买 nike

我在选择属于特定命名空间的元素时遇到问题。我的 xpath 表达式在 XMLSpy 中工作,但在使用 Xalan 库时失败..

<item>
<media:content attrb="xyz">
<dcterms:valid>VALUE</dcterms:valid>
</media:content>
</item>

我的表情是 ./item/media:content/dcterms:valid .我已经将这两个 namespace 定义都添加到了我的 XSLT 中。同样,这会在 XMLSpy 中选择正确的值,但在通过 Xalan 库运行时会失败。

有任何想法吗?

最佳答案

您需要实现 org.apache.xml.utils.PrefixResolver 将前缀映射到命名空间 URI,然后将实例传递给 XPath您使用的实例。这将允许您在 XPath 表达式中使用与文档中不同的前缀(您可能无法控制)。

例如,您可以创建一个使用一对映射的实现(一个映射从前缀 -> 命名空间 URI,一个从 URI 映射到前缀)。

在 JAXP 中,要实现的等效接口(interface)是 javax.xml.namespace.NamespaceContext .

关于xml - 如何选择特定命名空间中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/187231/

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