[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: defining xml diff/changes in xml : XUpdate etc
Hi all, I'm the author of diffxml and DUL. Sorry in the delay replying - I only read the digest format infrequently. There are two diff formats that have been submitted to the IETF, mine (http://www.ietf.org/internet-drafts/draft-mouat-xml-patch-00.txt) and Jari Urpalainen's (http://www.ietf.org/internet-drafts/draft-urpalainen-simple-xml-patch-ops-01.txt).Jari's solution is considerably simpler than mine, but doesn't support operations on character data, e.g. inserting a node into the center of some text i.e: Changing <a>some text here<a/> to <a>some <b/>text here</a> Would take several operations as opposed to one in DUL. The IETF had a bof on the subject of xml patching - the notes can be found here: http://www3.ietf.org/proceedings/05nov/xmlpatch.html Basically there seems to be no current support for the creation of a standard. On a personal level I would like to continue my work on diffxml and DUL, but it is only an unpaid hobby for me and I currently have large demands on my time. I am however interested in the lists opinion on DUL. I have included answers to Michael Kay's questions below. Adrian. Michael Kay wrote: > All of this seems to be a bit short of requirements statements and use > cases. I would have thought that different requirements would prompt > different designs. For example: > * must the effect of applying diffs be independent of the order in which > they are applied? Surely impossible?? I can't add a node to a subtree that doesn't exist. Or do you have a completely different format in mind? > * how important is it to merge two diff files that relate to the same source > to create a merged diff file; and if so, how important is it to be able to > detect and/or resolve conflicts? I've never considered this - interesting. > * is it ever necessary to apply a diff file D that was defined against a > base file B to a slightly different base file B'? If so, what kind of > differences between B and B' should be tolerated? Good question. It is considered in my dissertation. Would require the addition of context data to DUL. > * do diff files need to be human-readable? I think not - they can be transformed into human readable formats. > * do diff files need to be small? Is XML ever? > * what kind of changes need to be diff'ed? Do they include, for example, > renaming of nodes? Do they include any bulk changes, such as deleting all > instances of a particular attribute? Do they include changes at the lexical > level, e.g. changing the expansion text of an internal entity? Do they > include DTD changes?DUL doesn't handle expressions like this, and I don't think it should - leave that to XQuery update. Entities are a hard question - there are even more questions if you consider whether they should be resolved or not. DTD changes are not supported in DUL. > * are there any assumptions about schema validity of the source and/or > target documents? Not in DUL. > * are any operations applied to diff files other than (a) applying a diff > file to a base document, (b) merging two diff files? Not quite sure what you're getting at. > * What exactly is the real requirement behind the statement that the diff > files must be XML? > Perhaps this is all covered by some kind of unstated assumption "we want it > to work like UNIX diff". But if that were the case, you could use UNIX diff. Not really... See my dissertation at diffxml.sf.net for more of a discussion. > Michael Kay > http://www.saxonica.com/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|