OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: XML Overlays and Deltas: Existing methods? Ideas?

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.
>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!


1. http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-MutationEvent