Does anyone know of a true XML plugin ?
Chris
09-Nov-2007, 10:24 AM
You might find our HTML Tidy and XML Tidy add on helpful for comparing XML files. It will standardize the formatting of XML files before opening them for comparison.
You can download the add on from: http://www.scootersoftware.com/support.php?c=kb_morerules.php
dr_barnowl
13-Nov-2007, 03:41 AM
A "true" XML plugin would be one that is schema-aware ; able to distinguish between sequence / group, compare elements on ID (or sort by other comparators), and is a different kettle of fish to BC which concentrates on being a good line-based tool.
The XML tidy stuff goes some way there, especially with the attribute sorting enabled (the attribute sorting feature of tidy was written specifically for this purpose), but it's not a complete XML comparison solution. There is room to improve the preprocessing rules, but in the end, BC will always be comparing 2 text files ; unless you write a custom XML comparator with it's own UI, which would almost be an additional full application (although the directory comparisons would productively use it's output).
Altova DiffDog takes things a bit further, and has additional settings ; it can ignore namespace prefixes, and child element order. It can also present the comparison in the excellent Altova XML grid control. Some of the things DiffDog can do can be done with intelligent use of settings on tidy, some cannot. For my own use, once tidy could sort attributes, I found the text-based compare in BC sufficient. I can see how some may find child element ordering useful. You have to ask yourself if it's worth the extra $69 a seat that DiffDog costs ; you may well be able to add to the XML compare rules with a step that runs your documents through an XSLT sheet that sorts your elements appropriately.
I myself would like to see a much better XML-Tidy, particularly because I am involved with a number of tools that consume and save XML documents that are the same schema, but all these apps output the XML with different formatting and order. It plays merry hell with source control systems, creating patches and deltas that are much larger than necessary, makes text-based comparison tools virtually useless (when using raw input) and makes merge awkward (because you can't just merge a change and have a small patch - if you used a prettifier, the patch will be the whole file).
vBulletin® v3.7.1, Copyright ©2000-2013, Jelsoft Enterprises Ltd.