[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: XML Overlays and Deltas: Existing methods? Ideas?
- From: Robin LaFontaine <robin@monsell.co.uk>
- To: Joel Bender <jjb5@cornell.edu>,"Bullard, Claude L (Len)" <clbullar@ingr.com>, xml-dev@lists.xml.org
- Date: Thu, 19 Apr 2001 09:37:00 +0100
Joel,
There is another interesting case of how deltas can be applied, which
may not be relevant to you but can be useful for data where the
processing is partially-automated, i.e. some hand coded changes
needed.
Consider XML file F being modified (by hand) to generate G. There
will be a delta file to represent the changes from F to G, call this
dFG.
Then a new version of F is produced, F'. How can the edits done to F
to generate G be applied to F'? If dFG can be applied to F' then it
should generate G' with all edits combined.
This will not always work, of course, but it can sure save a lot of
hand editing if it does 90% of the work in 90% of the cases! A check
could be made by applying dFF' to G also which would give the same
result if there are no conflicts.
I'm not sure which of the Xpath (cf your earlier email on XML Diff
and Sync) representation and the deltaXML (http://www.deltaxml.com)
representation is more 'robust' in applying dFG to F'.
Robin
At 6:09 PM -0400 4/18/01, Joel Bender wrote:
>At 3:41 PM -0500 4/18/01, Bullard, Claude L (Len) wrote:
>
> >Given two documents, they are similar or equivalent
> >if they are transformable into each other.
> >
> >[snip]
> >
> >The worst case pathology requires a complete replacement
> >of the document itself.
>
>With you so far...
>
> >To use a transform-based operation against a document
> >set, the documents must be closed, that is, a transform
> >must exist which will update/insert/append the information
> >and not violate similarity if the SAME operation is
> >applied to all.
>
>I'm not completely sure what you mean by "closed", but here is a
>guess. For any transform from A to B, if the same transform is
>applied to A' resulting in B' and A' equals A, then B' will equal B.
>All my applications will stay synchronized provided they all started
>out with the same A and they all get the same list of transforms in
>the same order.
>
>There is the degenerate case where any document could be transformed
>into B simply by replacing the entire contents, but I'm more
>interested in the smallest description that can be used to describe
>the transform.
>
> >So the delta update could be a transform based message type given
> >that such a transform exists for the class (in fact, the existence
> >of the transform proves the existence of the class in that sense).
>
>Yes, I envision the difference document containing one or more "op
>codes" that each represent some component of the transformation from
>A to B.
>
> >It seems to me in the theoretical that the XSLT transform can
> >represent the delta.
>
>I don't know enough about XSLT to have an opinion.
>
> >If I have a document loaded into the DOM, can't I listen for
> >transforms by type (ie., I have to identify which of the transform
> >messages are mine)?
>
>Thanks for the pointer, I just now found the DOM Level 2 Mutation
>Events [1]. I had been limiting my study of the DOM to Level 1. If
>there was a standard way of encoding a MutationEvent object in XML so
>that it can be sent to peers, archived, etc., that might work (Java
>serialization might work for some folks, but I'm not using Java). If
>there was a way to encode it as a mini XSLT transformation document,
>that might work too!
>
>I don't know enough about the listening mechanism yet to answer your
>question, but I suspect it's "yes". The Mutation Event Types are
>perfect labels for my "op codes" (they're a little long for my taste,
>but a good binary XML encoding would take care of that :-).
>
>Thanks for your help!
>
>
>Joel
>
>1. http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-MutationEvent
>
>------------------------------------------------------------------
>The xml-dev list is sponsored by XML.org, an initiative of OASIS
><http://www.oasis-open.org>
>
>The list archives are at http://lists.xml.org/archives/xml-dev/
>
>To unsubscribe from this elist send a message with the single word
>"unsubscribe" in the body to: xml-dev-request@lists.xml.org
-- -----------------------------------------------------------------
Robin La Fontaine, Monsell EDM Ltd
(XML file comparison, Engineering data exchange and management using XML)
Tel: +44 1684 592 144 Fax: +44 1684 594 504
Email: robin@monsell.co.uk http://www.deltaxml.com