【发布时间】:2017-06-17 02:46:18
【问题描述】:
对于同一文件的不同版本,我有许多 VTD+XML 索引,我希望实现类似 diff 的方法来返回版本之间已修改的节点的 x 路径,以及文本之间的差异在这些节点内。
我认为使用现有算法(例如 O(nd) difference)最好比较两个节点内的文本。因此,我设想的方法是同时遍历两个文档并存储与包含文本变体的任何节点相对应的 xpath。
问题是,一旦我遇到新的或删除的节点,我如何确定该节点实际上是插入/删除的节点还是现有节点的变体?
或者也许我应该采取另一种方法?
【问题讨论】:
-
知道两个文件是否不同与知道两个文件有多么不同是非常不同的......第一个可以使用像 SHA 或更高版本的哈希这样的一种方式来完成..第二个可以是更多的 CPU 密集型...特别是如果您想非常详细地了解差异在哪里...到目前为止同意我的观点吗?
-
是的,我同意。考虑到它们的 VTD+XML 索引,我正在寻找对两个 xml 文件有多么不同的非常精细的分析。
标签: xml-parsing vtd-xml