Diving Into DCP Files for XML Compare
What are the default settings in a DCP file?
An empty DCP file will have these settings by default.
- Word by Word – Differences in all elements are resolved down to the word level
- Whitespace Normalisation – Sequences of whitespace characters are normalised to a single space character
- Table Processing – Elements conforming to the HTML and CALS specifications are recognised and processed specially to keep the output valid, provided the input is valid.
- Comparison Order – The comparator matches elements based on their document order.
- Change Gathering – When sibling elements or text in the comparison result file are a mix of added and deleted content, it is by default reordered to show all deleted content followed by all added content.
All of these settings and more can be tweaked by using special deltaxml attributes. Full details can be found on Document Comparator Guide in the section on Customizing a comparison.
Understanding the DCP Schema File
w3schools provides a great introductory tutorial about XML Schemas. There are currently just two schema (XSD) files in XML Compare’s samples/dcp
directory. You can choose in the DCP file whether you want validation against XML schema 1.0 or 1.1 by including the appropriate file as explained in a comment at the start of the DCP file. v1.1 has some additional constraints, improving your editing experience, and is preferred. However some editors that our customers use to change DCP files may not support schema 1.1. For example, with the oXygen XML Editor, versions from 14.2 onwards support scheme 1.1, see www.oxygenxml.com/xml_editor/whatisnew14.2.html
Choosing an Extension Point
In most cases you can put your filter in the INPUT_A_PRE_TABLE or the INPUT_B_PRE_TABLE extension points for the input pipelines or the OUTPUT_FINAL extension point for the output pipeline as required.
In more complex cases, where you want custom table processing or filters to adjust the formatting, then you need to refer to the JavaDoc or get DeltaXML support
Adding external filters to the DCP file
The Custom Filters section of the Document Comparator Guide, explains how to add XSLT filters to the pipeline, using a filter that creates a key from an xml:id attribute as an example
Other Articles
A Beginner’s Guide to XML Comparison
For more information about pipelines and the differences between DXP and DCP see here
For in-depth information about DXP start here.