Two input files are used for an XML Compare comparison, referred to here as 'A' and 'B' files. Whilst it is often the case that 'B' is a modification of 'A', it is also possible that both inputs are derived independently from a common source. Using this terminology, a user-oriented set of high-level features is outlined below:
Find all the differences between any two XML files ('A' and 'B').
Apply changes to convert an 'A' XML file into the 'B' version (i.e. a diff 'patch').
Undo changes to convert a 'B' XML file into the 'A' version.
Display change information in either XML or HTML form, using a standard web browser.
Report changes only or changes+unchanged data.
Use XSLT input and output filters to pre and post process the XML data.
Handle large files without performance degradation.
Document Comparison Features and Benefits
Extensible pipeline with embedded functionality.
Text processing for differences on a word-by-word basis.
Special processing for formatting-elements.
HTML/CALS table structure aware.
Extension points for adding filter steps to the pipeline.
Ignoring changes to non-significant whitespace.
Handle moves of uniquely identifiable element. See Detecting and Handling Moves for more details.
Comparing two MathMLs. See MathML Comparison for more details