- 第一个文档是源文件,例如,我想让XML文档看起来像什么。因此第二个文档是我想要查找差异的文档,并且它不应包含第一个文档中没有的额外节点。
- 在发现太多重大差异时必须抛出异常,并且应该很容易被人类查看描述所理解。
- 子元素顺序很重要,属性可以按任意顺序排列。
- 某些属性是可忽略的;特别是xsi:schemaLocation和xmlns:xsi,尽管我希望能够传入哪些属性是可忽略的。
- 命名空间的前缀必须匹配属性和元素。
- 元素之间的空格无关紧要。
- 元素将只有子元素或InnerText,但不会同时存在。
在我刚开始写这个东西时:是否有人编写过这样的代码,是否可能在这里共享它?
顺便问一下,你会如何称呼第一个和第二个文档?我一直称它们为“源”和“目标”,但感觉不太对,因为源是我想要目标看起来像什么,否则就会抛出异常。