gpt4 book ai didi

java - 如何确定 XML 文档中的所有命名空间

转载 作者:行者123 更新时间:2023-11-30 04:53:40 25 4
gpt4 key购买 nike

我正在尝试对具有多个命名空间的文档使用 XPath 查询,并且需要定义 NamespaceContext。检索我能想到的所有命名空间的唯一方法是迭代所有节点和属性并显式收集它们的命名空间 URI 和前缀。这看起来效率很低,我怀疑这是否是最佳实践。

应该怎么做?
谢谢您

最佳答案

因为命名空间既可以在 XML 文档的 header 中定义,也可以在元素本身中定义,所以你是对的;如果您需要文档中使用的每个命名空间,您将需要处理整个文档(如果您想 100% 完成,则包括所有导入)。

如果您希望人们能够像使用 XPath 式查询的数据库一样查询您的文档,那么您可能希望将文档加载到内存中的表示形式中,以便无论如何都可以快速查询。

鉴于无论如何您都必须将整个事情处理到内存中,这将是您解析所有 namespace 的机会。

注意:我忽略了您需要所有命名空间的“原因”,我只是假设您需要它们,在这种情况下,您处理整个文档的假设是正确的。

关于java - 如何确定 XML 文档中的所有命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9263577/

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