编写 XPath 查询需要了解 DTD 吗?

Does writing XPath Queries require to know DTD?

我正在为某些 XML 文件编写一些 XPath 查询。然而,这些文件的 DTD 不可用,尽管我对 XML 文件的结构有一些基本的想法。

我想知道我们是否应该假设在编写 XPath 查询时 DTD 始终可用?

(我是 XPath 的新手,如果我问的问题不对,请纠正我)。

访问 DTD 将对您理解预期或预期的数据结构的能力产生影响(尽管除非情况允许您知道数据都将是 DTD 有效的,否则数据可能具有实际上是不同的结构)。

拥有或不拥有 DTD 对 XQuery、XSLT 或其他 XPath 处理器处理查询的能力没有影响。 (一些 XQuery 处理器可能期望或需要一个 XSD 模式,一些 XQuery 处理器和一些 XSLT 2.0 或 3.0 处理器将利用一个模式(如果可用的话),但我不知道任何类型的 XPath 处理器期望、需要或使用 DTD。)