Hi Matt!

Matt wrote:

On 2/14/07, yuppie <y.2007--E2EsyBC0hj3+aS/[EMAIL PROTECTED]> wrote:

What kind of XML diff do you have in mind? Which libraries would this
depend on?

I guess I had something in mind along the lines of being able to
represent an algebra (maybe a form of set algebra) for profiles.

So at a broad level maybe something like:

union(a,b) - intersection(b,c)
... these haven't been well thought out.

So "union(base, extension)" would apply the extension profile to the base profile? And "snapshot - base" would create a diff between a snapshot and a base profile, so that union(base, diff) would be the same as the snapshot?

Considering order is important in various places, then these amount to
fragments of comparison rather than single element by element
comparison, which is sort of amounting to your idea of lots of small
files and layers.

So this is different than a line by line diff of canonical forms.

I still don't understand what your diffs look like. Are they XSLT files?

If I were actually try something like this, my toolist would be lxml which
offers up libxml's XSLT and RelaxNG support. I would hope that anyone
creating their own export import handler with an associated xml form
would also supply a relaxng schema of this.

GenericSetup and CMF currently just depend on Zope, nothing else. There was some discussion about shipping Zope 3 (and therefor Zope 2) with lxml. As long as this is not the case, it might be hard to convince people that GenericSetup should depend on lxml. Nevertheless I think exploring the possibilities lxml provides is worth the effort.



Zope-CMF maillist  -  Zope-CMF@lists.zope.org

See http://collector.zope.org/CMF for bug reports and feature requests

Reply via email to