Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Communicating delta's of an XML document from client to a server.

2 views
Skip to first unread message

Jan Brunia

unread,
Sep 22, 2002, 5:10:25 PM9/22/02
to
Hi,

Imagine you have a client application which hold an XML document.
It allows the user via a GUI to make modifications upon it, how would
you update the server application, holding the original of the document,
about it? Is always the whole document communicated or also only the
editted parts. In case of small documents, it wouldn't hurt to sent it
completly,
but in case of big ones, sending the edits only would be benifitial due
to smaller bandwidth. I'm curious in that situation how the schema would
like, and if all, a schema is possible or necessary.

Jan

Kenny MacLeod

unread,
Sep 22, 2002, 5:24:19 PM9/22/02
to

My first thought here was that if the client could identify the nodes of the
document that had changed, then it could send XML fragments representing
those nodes, along with an XPath expression telling the server where this
node should be placed within the whole document. The server could then just
replace the node with the new version.

How does that sound?
kenny

Jan Brunia

unread,
Sep 22, 2002, 5:52:54 PM9/22/02
to
Hi Kenny,

Quick response! :)

Sounds cool to me, and what about the schema? Due to sending only parts,
the original schema cannot be used anymore.

Jan

"Kenny MacLeod" <usenet.2....@spamgourmet.com> wrote in message
news:amlcdp$7093n$1...@ID-149587.news.dfncis.de...

Jan Brunia

unread,
Sep 22, 2002, 5:54:51 PM9/22/02
to
.. too quick. I forgot something :)

How would you indicate a node has been created or deleted?

Jan

"Kenny MacLeod" <usenet.2....@spamgourmet.com> wrote in message
news:amlcdp$7093n$1...@ID-149587.news.dfncis.de...

Henrik Motakef

unread,
Sep 22, 2002, 6:13:51 PM9/22/02
to
"Jan Brunia" <j.j.b...@speed.a2000.nl> writes:

Just some pointers, no idea if anything of this is useful for you:

The "XML Fragment Interchange" W3C Spec:
<http://www.w3.org/TR/xml-fragment>

A Python XML diff:
<http://www.logilab.org/xmldiff/>

This one (optionally) uses the XUpdate format:
<http://xmldb.org/xupdate/index.html>

Another XML diff for .NET:
<http://www.gotdotnet.com/team/xmltools/xmldiff/overview.html>

hth
Henrik

Kenny MacLeod

unread,
Sep 22, 2002, 6:46:47 PM9/22/02
to
Jan Brunia wrote:
> Hi Kenny,
>
> Quick response! :)
>
> Sounds cool to me, and what about the schema? Due to sending only
> parts, the original schema cannot be used anymore.

Don't use a schema, then. Or only apply the schema to the modified document
once the server has applied the delta.

Kenny MacLeod

unread,
Sep 22, 2002, 6:48:00 PM9/22/02
to
Jan Brunia wrote:
> .. too quick. I forgot something :)
>
> How would you indicate a node has been created or deleted?

OK then, send the new node, the XPath expression, and a create/update/delete
flag indicating the required action.

Dare Obasanjo

unread,
Sep 22, 2002, 10:45:57 PM9/22/02
to
For communicating deltas I'd suggest using the XML Diff and Patch API
available at http://www.gotdotnet.com/team/xmltools/xmldiff/overview.html

I'm not really sure what schema details you are inquiring about however.

--
This posting is provided "AS IS" with no warranties, and confers no rights.

"Jan Brunia" <j.j.b...@speed.a2000.nl> wrote in message
news:5lqj9.7023$Mh3.1...@amsnews03.chello.com...

Jan Brunia

unread,
Sep 24, 2002, 4:04:46 PM9/24/02
to
Hi,

This is allreally good info to pursue: XML Diff and XUpdate.

What I meant about needing a schema was for the delta's communicated,
just like is used for XML Diff where is indicated what is deleted, created
etc.

Thank you all!!

Jan


"Dare Obasanjo" <da...@NO.SPAM.microsoft.com> wrote in message
news:uCsOusqYCHA.2260@tkmsftngp09...

0 new messages