You decide which changes to keep
Once all differences have been identified, XML Merge then will allow you to manually accept or reject changes or apply custom rules to automatically determine whether to merge your changes or mark them up in the output file as unresolved changes.
Show the difference in a way that makes sense to you
The results are passed through a pipeline so you can transform the XML into whatever form is required by your systems or processes. This is all managed through the XML Merge API.
If you’re wanting to see all XML Merge has to offer book a one-to-one demo with a DeltaXML developer.
Ready to integrate into your products or processes
Accessed through Java or REST APIs integrate into any enterprise workflow or content management system.
Learn more about DeltaXML APIs →
Text formatting intelligence
In XML, text formatting uses structural markup like
strong to add styling to text content. XML Merge handles this markup with specific processing so that you have a clear understanding of where text remains unchanged despite formatting changes. Even where text remains the same, our merge delta format shows you how formatting changed between multiple versions.
Learn more about text formatting →
An easily processable delta format
Whether you choose to include all changes or just those that conflict across versions, the changes are output in our simple XML-based delta format for easy processing. Designed to be easily transformed using XSLT, our delta format sits lightly within the original XML content to ensure that your results are as close as possible to the original XML format.
Merge CALS and HTML tables with ease
XML tables are complex enough without having to worry about how to merge them. We process CALS and HTML tables to make sure that the results are valid against the table models while still delivering accurate merge results.
Find the change that matters to you, ignore the diffs that don’t
Comparison results can be configured to show in any form you need, whether for automated processing or human review.
Learn more about configurable outputs →
Alternative Merge Scenarios
When dealing with multiple documents, it’s important to understand their method of creation to ensure the best possible merge. Where a document is passed to multiple editors who all edit at the same time, Concurrent Merge should be used to bring all of the changes into a single place. If the document is passed from one person to the next and each makes successive changes, Sequential Merge provides the best results. We also provide a specific Three-Way merge model for Concurrent Merges created using a branch-and-merge model. This provides additional features specific to a three-way merge scenario.
Automatic or manual change resolution
When the aim of a merge is to reach a new version of a document, you’re often only interested in reviewing the conflicting changes. XML Merge allows you to automatically ‘accept’ changes that don’t conflict, only marking up those that are in conflict. This reduces the time needed to review the result. Of course if you do want to review all differences between the documents, including those which don’t conflict, that’s still possible. In fact you can determine which changes should be included in the result using our rule-based processing feature.
Learn more about rule based processing →
Integrate a more stable GIT merge solution
Version control systems such as Git typically use a line-based tool for merging content during a branch merge. If you’re having issues with invalid XML following a Git merge using XML Merge as the merge tool can save you a lot of time spent on conflict resolution.
See our GIT workflow XML Merge sample →
When change in XML is a standard
Merging XML in a version control system
Version control systems are increasingly used to store not only software source code, but also XML content such as sources for software documentation, alongside the source code. One of the main reasons for doing this is to enable the documentation to follow the same development workflow as the source code, typically using source branching to document new features as they are developed. When merging these branches back together, most version control systems use a line-based merge tool by default. These are generally good for software source code and developers are used to the techniques needed to resolve conflicts. However, when it comes to XML content, line-based merge tools can easily leave your XML in an invalid state, either against the schema you use or even leaving it badly formed so that it can no longer be parsed as XML.
It is possible to use XML Merge as the underlying merge tool in your version control system for XML content. This will prevent incorrect merges that lead to invalid XML and will eliminate false changes such as changing the order of attributes. Conflicts are represented in an intuitive, easy to resolve format that will result in well-formed XML to commit back into the repository.
Learn more about GIT integration →
Gathering changes from multiple editors or reviewers
When it comes to reviewing documentation, combining the suggested edits or comments from multiple reviewers can be a time-consuming task. You could make sure that only one person at a time is allowed to make review changes but even then, how do you know who made which changes? To speed things up, XML Merge enables a concurrent reviewing process. After sending a document out to as many reviewers as you like, XML Merge will merge the reviewed versions back together into a single document, allowing you to see where multiple people suggested the same changes, where there are conflicting changes, and where simple changes have been made. A configurable ‘rule-processing’ feature allows you to set which types of change to include in the result and which can be automatically accepted (or even rejected). Using XML Merge in this way gives you full control over the review workflow, saving you valuable time converting all of the review comments into a new revision.
When you need to find the difference between two versions of XML files without having to merge them, our XML Comparison solution comes in handy. Try our DeltaXML package which bundles up both XML Compare and XML Merge giving you the powerful comparison functionality you need coupled with dependable merging.
Frequently Asked Questions
What is XML Merge?
XML Merge is a complete toolkit for reliably recombining multiple XML documents or datasets into a single file.
How do I integrate or embed XML Merge?
XML Merge is optimised for integration into enterprise workflow and content management systems. All of its functionality is accessed through Java and REST APIs, which are fully documented and come with complete, working examples. On top of these API’s we have created plugins for popular XML authoring tools, including oXygen and FrameMaker for seamless content authoring and reviewing.
Can I ignore changes I know about?
Yes, with XML Merge you can apply custom rules to specify what is merged automatically and what is marked-up for further attention. Its sophisticated rules enable you to reference any aspect of the XML structure and attributes, to specify where conflicts may be automatically resolved and what should take priority.
How is XML Merge different from other diff tools?
Rather than comparing line-by-line, XML Merge identifies and matches up all the XML elements across your files, so it has a meaningful and dependable basis for comparing and merging your content.
This pairing process uses a combination of element names, parent names, position in the XML tree and the structure of child elements. It understands namespaces and prefixes and can be configured to use keys to guide alignment of content.
How are found differences represented?
XML Merge creates an output file which is based closely on your original ancestor file, with all the unresolved changes laid-out using precise, descriptive XML markup. This output file is passed through an XSLT pipeline, so you can apply transformations to generate the exact output that you require for internal workflow, wider distribution or in your product code.
How do I buy an XML Merge license?
So you’re only paying for what you need we offer a range of license models dependent on the system architecture you’re using and your current use case. Fill in our get a quote form to receive more details on your pricing options.