Re: [xml] doing an xml diff



On Tue, Jul 20, 2004 at 03:31:08PM +0200, Petr Pajas wrote:
Aamer Akhter <aakhter gmail com> writes:

Hello,

This question isn't specific to libxml2:

Is there a list/review of XML diff utilities/libraries that anyone is
aware of? There seem to bunch out there but they seem to be in a state
of disrepair, or provide a huge change set for just simple leaf
element node disappearing.

I don't know of such a list. I only may share my personal
experience. I've tried all Java tools I could find, the single Python
xmldiff, several Perl modules and the Microsoft xmldiff/patch
toolkit. Except for the last one, all had their problems and if they
produced any output on my (largish) files within a reasonable long
time and resources then the result resulting change set was
inadequate (some of them even say: remove the whole 1st document and replace
it with the 2nd one).

On the other hand, I have very good experience with the MS toolkit,
which is surprisingly provided including source code (although I
didn't examine the EULA), is written in C# and runs even on Linux
under Mono both without compilation and Mono-compiled. It seems
reasonably fast (parses and compares >10Mb files in just a few
seconds) and the change set also seems adequate and reasonably small.

  I remember seeing an IBM paper published at a web conf a couple
years ago about xml diff, and IIRC they published the code on alphaworks
  http://www.alphaworks.ibm.com/tech/xmldiffmerge
a small XML diff API would be a nice addition to libxml2 or xmllint
if it's too big to go into libxml2 itself. I remember asking for an
implementation a few years ago, but nobody really got interested in
writing this.

Daniel

-- 
Daniel Veillard      | Red Hat Desktop team http://redhat.com/
veillard redhat com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]