[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: XML Zebra, a path-based tool for generating diff fingerprints forXML Schemas
- From: "Anthony B. Coates \(XML-Dev\)" <abcoatesecure-xmldev@yahoo.co.uk>
- To: "Fraser Goffin" <goffinf@googlemail.com>, "xml-dev List" <xml-dev@lists.xml.org>
- Date: Sun, 17 Jan 2010 20:19:23 -0000
What next? Sorry, I haven't posted much documentation yet because that's
what the XML Prague presentation is, and I don't want to post that until
after the conference.
However, the "fingerprint" files are for detecting changes. So, generate
a fingerprint from some Schemas, make a change, and generate a new
fingerprint. Then diff the fingerprints and you will see how it pinpoints
the changes. In particular, change a type that is used in many places,
and see how the fingerprint changes in all of the places that the type is
used.
I've included a stylesheet and an XQuery for converting the XML
fingerprint file into a text file of paths. That can be easier to use if
you have text diff tools available rather than XML diff tools.
The fingerprint files can get large, if you have a large set of Schemas,
but that's just a reflection of the real complexity of the documents that
the Schemas allow.
Hope that helps.
Cheers, Tony.
PS thanks, I'll make a note on the site that you need Java 1.6.
On Sun, 17 Jan 2010 18:16:31 -0000, Fraser Goffin <goffinf@googlemail.com>
wrote:
> Interesting.
>
> Its perhaps worth pointing out that the Java version appears to
> require at least 1.6 (for XMLOutputFactory).
>
> I ran the example and it produced the paths.xml.
>
> Now what ??
>
> Fraser.
>
> 2010/1/17 Anthony B. Coates (XML-Dev) <abcoatesecure-xmldev@yahoo.co.uk>:
>> I have written a tool (in Scala) that can be used to check the
>> differences
>> between versions of a set of W3C XML Schemas. The tool can be run with
>> Scala, Java, or Apache Ant. The idea is that for each version, you
>> create
>> a fingerprint file that contains paths (like XPaths, but with an
>> extended
>> syntax). By comparing the two fingerprint files for two versions, you
>> can
>> see what has changed between the versions of the Schemas. The tools
>> makes
>> use of the XMLBeans API for examining the structure of W3C XML Schemas.
>>
>> How does this differ from just doing diffs of the individual Schema
>> files
>> themselves? The difference is that the path-based approach shows you
>> not
>> only what has changed, but also shows all of the places that are
>> directly
>> or indirectly impacted by the change. Also, the path-based approach
>> ignores restructurings that don't impact users, like renaming of Schema
>> types or moving of definitions to a different Schema file. Put another
>> way, the path-based approach allows you to evaluate how the Schemas have
>> changed from a user-impact perspective, rather than from a simple
>> file-change perspective.
>>
>> The software is open source, released under the Apache licence. For
>> more
>> details, and to download it, see
>>
>> http://www.xmlzebra.com/
>>
>> There will be a presentation about this software at the XML Prague 2010
>> conference, 13-14 March.
>>
>> http://www.xmlprague.cz/2010/index.html
>>
>> Feedback would be very welcome. Thanks,
>>
>> Cheers, Tony.
--
Anthony B. Coates
Director and CTO
Londata Ltd
UK: +44 (20) 8816 7700, US: +1 (239) 344 7700
Mobile/Cell: +44 (79) 0543 9026
Data standards participant: genericode, ISO 20022 (ISO 15022 XML),
UN/CEFACT, MDDL, FpML, UBL.
http://www.londata.com/
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]