[Zope-CMF] Re: Generic Setup Delta Profiles
matt at elyt.com
Thu Feb 15 15:59:24 EST 2007
On 2/16/07, yuppie <y.2007- at wcm-solutions.de> wrote:
> Hi Matt!
> Matt wrote:
> > On 2/14/07, yuppie <y.2007--E2EsyBC0hj3+aS/vkh9bjw at public.gmane.org> 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:
> > intersection(a,b)
> > union(a,b)
> > intersection(a.skins.layers,b.skins.layers)
> > 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?
The output of the algebra would not be diffs per say, but either base
or extension profiles you would want to apply. The operations of the
algebra could certainly output an XSLT transform that represented the
operation. I would imagine you would want to persist the equation you
used for a given base profile so as to do further operations.
> > 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.
More information about the Zope-CMF