【发布时间】:2010-09-12 10:56:09
【问题描述】:
我有一个这样开头的 XML 文件:
<Elements name="Entities" xmlns="XS-GenerationToolElements">
我必须打开很多这样的文件。它们中的每一个都有不同的命名空间,但一次只能有一个命名空间(我永远不会在一个 xml 文件中找到两个命名空间)。
使用 XPath 我希望有一种自动方式将给定的命名空间添加到命名空间管理器。 到目前为止,我只能通过解析 xml 文件来获取命名空间,但我有一个 XPathNavigator 实例,它应该有一种很好且干净的方式来获取命名空间,对吧?
-- 或者--
鉴于我只有一个命名空间,以某种方式让 XPath 使用 xml 中唯一存在的命名空间,从而通过始终附加命名空间来避免代码混乱。
【问题讨论】:
-
这些总是在默认命名空间中吗?或者你有没有: xmlns:myns="namespace-uri" 你是否将文件完整地读入 DOM 文档或使用 XmlValidatingReader 之类的东西进行解析?
-
它们总是在默认命名空间中。我还没有完全阅读文件,因为我陷入了这个问题;我想当您询问“进入 DOM 文档或使用 XmlValidatingReader 之类的东西进行解析”时,我并不完全理解;我只会使用 XPath 来读取 XML;这很糟糕吗?
标签: xml xpath namespaces