Introduction
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:
General Features
-
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 MathML. See MathML Comparison for more details.
-
Comparing SVG. See SVG Comparison for more details.
Data Comparison Features and Benefits
-
Extensible pipeline with embedded data-centric functionality
-
Omission of document-centric functionality allows for faster startup
-
Simplified extension points for adding filter steps to the pipeline
-
Handle moves of uniquely identifiable element. See Detecting and Handling Moves for more details.
Multi-Document Comparisons
XML Compare only supports the comparison of two XML documents at a time; multi-document comparison is however available in XML Merge and DITA Merge.