Leider gibt es keine universelle Lösung für dieses Problem. XML Diffing reagiert sehr empfindlich auf das, was Sie als anders betrachten. In einem Fall könnte die Reihenfolge der Kindknoten wichtig sein, und in einem anderen Fall (vielleicht sogar in der gleichen Datei) könnte es irrelevant sein.
Werfen Sie einen Blick auf XMLUnit. Obwohl es sich um Unit-Testing handelt, ist es eine vollständige XML-Differenzierungs-Engine. Sie müssen es (im Code) sagen, wie man bestimmt, dass zwei Knoten für einen Vergleich infrage kommen, und dann, was mit allen gefundenen möglichen Unterschieden zu tun ist (d. H. Ob sie real sind oder nicht, in Ihrer Anwendung). Er erkennt eine erschöpfende Liste von "difference Ereignisse" mit
- Attribut Reihenfolge
- Anzahl der Attribute
- Child-Knoten, um
- Anzahl der untergeordneten Knoten
- implizite vs explizite Attributwerte
- Kommentar Unterschiede
- doctype Unterschiede
- Namespac e Unterschiede
Und eine ganze Reihe mehr. Jeder dieser Punkte kann für Ihre Bewerbung wichtig oder unwichtig sein, und nur Sie können entscheiden. Es ist einen Blick wert, aber es wird etwas Arbeit brauchen, um zu bekommen, was Sie wollen.
Wahrscheinliche Lösungen: [Free Xml Diff/Merge-Tools] (http://StackOverflow.com/Questions/1871076), [XML Diff und Merge] (http://StackOverflow.com/Questions/430001) –