[jdom-interest] Comparing two XML files using JDOM
Michael Kay
mike at saxonica.com
Tue Mar 18 08:15:12 PDT 2008
First you need to define what you mean by duplicate - ie. what variations
you want to tolerate (e.g. order of attributes, choice of namespace
prefixes, insignificant whitespace, whether to ignore comments, use or
non-use of entities, Unicode normalization).
For many purposes a good approach is to convert both documents into XML
Canonical Form and then compare them lexically.
There's the deep-equal() function in XPath which defines one particular set
of rules, and Saxon has a saxon:deep-equal() function that allows you more
choice over the rules you want to apply.
Michael Kay
http://www.saxonica.com/
_____
From: jdom-interest-bounces at jdom.org [mailto:jdom-interest-bounces at jdom.org]
On Behalf Of vijayaraghavan.subramaniam at wipro.com
Sent: 18 March 2008 13:59
To: paul at activemath.org; frode at fritid.as; jdom-interest at jdom.org
Subject: RE: [jdom-interest] Comparing two XML files using JDOM
My objective to find duplicate xml files or elements & generate a report
(PDF)
_____
From: jdom-interest-bounces at jdom.org [mailto:jdom-interest-bounces at jdom.org]
On Behalf Of Paul Libbrecht
Sent: Tuesday, March 18, 2008 6:31 PM
To: frode at fritid.as; jdom-interest at jdom.org interest
Subject: Re: [jdom-interest] Comparing two XML files using JDOM
Oh but if it's just about equality, and not reporting differences, then I
have already implemented one.
Vijay, what was your objective?
paul
Le 18 mars 08 à 13:10, frode at fritid.as a écrit :
XMLUnit does comparisons, and you can plug in differnce-listners that can
'simulate' equal values even if they're not
Paul Libbrecht <paul at activemath.org>
Sent by: jdom-interest-bounces at jdom.org
03/18/2008 11:09 AM
To <vijayaraghavan.subramaniam at wipro.com>
cc jdom-interest at jdom.org
bcc
Subject Re: [jdom-interest] Comparing two XML files using JDOM
Mmmh... I doubt there... it's all loaded in memory, just as JDOM. Both seem
to be somewhat lightweight though (compared to monsters such as Xerces'
DOM).
You'd need quite an elaborate diff engine to do something that does not load
in memory, SAX or even StAX parsing is not enough there since you may need
to go backwards.
I have made no tests with big files.
Do you have a solution to propose?
Do others?
paul
Le 18 mars 08 à 09:47, <vijayaraghavan.subramaniam at wipro.com> a écrit :
Paul,
How about performance for parsing/comparing two large XML documents using
3dm tool?
Vijay
_____
From: Paul Libbrecht [mailto:paul at activemath.org]
Sent: Tue 3/18/2008 2:08 PM
To: Vijayaraghavan Subramaniam (WT01 -
Technology,Media,Transportation&Services)
Cc: jdom-interest at jdom.org
Subject: Re: [jdom-interest] Comparing two XML files using JDOM
I've never found such but 3dm is a tool that can do XML diffing and with a
few lines of code you plug the jdom document through a sax stream into 3dm.
paul
Le 18 mars 08 à 07:50, <vijayaraghavan.subramaniam at wipro.com> a écrit :
Hi All,
Is there any utility class exists in JDOM to compare two XML files.
Regards,
Vijay
The information contained in this electronic message and any attachments to
this message are intended for the exclusive use of the addressee(s) and may
contain proprietary, confidential or privileged information. If you are not
the intended recipient, you should not disseminate, distribute or copy this
e-mail. Please notify the sender immediately and destroy all copies of this
message and any attachments.
WARNING: Computer viruses can be transmitted via email. The recipient should
check this email and any attachments for the presence of viruses. The
company accepts no liability for any damage caused by any virus transmitted
by this email.
www.wipro.com
_______________________________________________
To control your jdom-interest membership:
http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com
The information contained in this electronic message and any attachments to
this message are intended for the exclusive use of the addressee(s) and may
contain proprietary, confidential or privileged information. If you are not
the intended recipient, you should not disseminate, distribute or copy this
e-mail. Please notify the sender immediately and destroy all copies of this
message and any attachments.
WARNING: Computer viruses can be transmitted via email. The recipient should
check this email and any attachments for the presence of viruses. The
company accepts no liability for any damage caused by any virus transmitted
by this email.
www.wipro.com
_______________________________________________
To control your jdom-interest membership:
http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com
<smime.p7s>
The information contained in this electronic message and any attachments to
this message are intended for the exclusive use of the addressee(s) and may
contain proprietary, confidential or privileged information. If you are not
the intended recipient, you should not disseminate, distribute or copy this
e-mail. Please notify the sender immediately and destroy all copies of this
message and any attachments.
WARNING: Computer viruses can be transmitted via email. The recipient should
check this email and any attachments for the presence of viruses. The
company accepts no liability for any damage caused by any virus transmitted
by this email.
www.wipro.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.jdom.org/pipermail/jdom-interest/attachments/20080318/6e69f593/attachment-0001.htm
More information about the jdom-interest
mailing list