流式处理 XPath 评估
2022-09-03 15:18:18
是否有任何生产就绪库用于针对提供的 xml 文档进行流式处理 XPath 表达式计算?我的研究表明,大多数现有解决方案在计算 xpath 表达式之前将整个 DOM 树加载到内存中。
是否有任何生产就绪库用于针对提供的 xml 文档进行流式处理 XPath 表达式计算?我的研究表明,大多数现有解决方案在计算 xpath 表达式之前将整个 DOM 树加载到内存中。
XSLT 3.0 提供流式处理模式,这将成为 XSLT 3.0 W3C 规范成为 W3C 建议的标准。
在撰写此答案时(2011 年 5 月),Saxon 为 XSLT 3.0 流提供了一些支持。
这对于完整的 XPath 实现是否可行,因为 XPath 语法允许:
/AAA/XXX/following::*
和
/AAA/BBB/following-sibling::*
这意味着前瞻性要求?也就是说,从特定节点,您无论如何都必须加载文档的其余部分。
Nux 库(特别是 StreamingPathFilter)的文档说明了这一点,并引用了一些依赖于 XPath 子集的实现。Nux声称可以执行一些流查询功能,但鉴于上述情况,在XPath实现方面会有一些限制。