Is there anyone working on a binary version of XML?
Alan Kennedy
alank at iol.ie
Sun Mar 28 08:23:43 BST 1999
"Anders W. Tell" wrote:
> However in the case of DOM to DOM
> communication its possible to to much better than using XML text a content carrier.
>
Don't forget about IIOP, the CORBA "RPC" protocol. While not the absolutely optimal transport
protocol, it has been optimised by a group of experts (I think :-) for platform, transport,
endian, etc, independence.
This is why the DOM interfaces are defined in OMG IDL. You can take the DOM interface definitions
and feed them through an IDL compiler, which will generate client (local) and server (remote)
transport stubs. These stubs, which can be in any language supported with an IDL compiler, take
care of all parameter marshalling, etc, for transport across a network, between address spaces,
etc.
If you want to experiment with an IDL compiler for JAVA, OrbixWeb is pretty good, and you can get
a 60 day evaluation from the IONA web site, at
http://www.iona.com/info/products/orbixweb/index.html
There are free IDL compilers and ORBs available too.
This takes care of eliminating tags from the communication stream (although these would be
replaced by a wire representation of the method name and parameters), since a parsed DOM structure
could communicate directly with another (possibly remote) parsed DOM structure.
However, the actual element content would be still be transported in full representation, with no
compression.
To deal with situations such as this, OrbixWeb has a non-CORBA standard facility called
"transformers". This is basically a filter callback where you can process data being marshalled as
it goes outside an objects address space, to transform it in whatever way you wish, including
changing its representation. In this case, the obvious requirement is to compress the data in some
way. Note however that the remote DOM would have to have a comptatible "un-transformer" to
reconstitute the encoded element content.
As for what DOM to DOM communication actually means, I think that XLink is a prime use for such
communication, particularly the transclusion stuff.
But that's a whole other subject.
I think there are some very blurred boundaries here between a HTTP like client/server facility and
direct communication between persistent objects on separate machines.
If you take the view that XML documents are files that are to be transferred in whole or in part
between machines, then the HTTP style approach is the right one.
But if you take the OMG-CORBA approach of "Objects exist; you (the client) don't need to know
where or how they are stored. Simply refer to their object reference and they will be instantiated
for you and made available as if they were in your local address space."
I think the latter is going to be the way that things will go. Picture every XML document as being
available, fully parsed, and available to you (permissions excepted) as if it was in your local
address space. In this paradigm, HTTP style servers would no longer exist. Web servers would
simply be replaced by ORBs.
And CORBA is an *open* standard.
Alan.
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list