OK, since my whole endeavor is considerably less fun when only five other
people know about it, I'd like to join the list of people who are perverting
XML and the DOM for other uses:
"XMLNet is an API for streaming XML. Using XMLNet, information can be
transferred over the internet or other network in real time as a series of
XML documents immediately and with high frequency on a schedule determined
by a server, as opposed to relying upon requests from clients. These
documents are delivered, one after another, on continuously open sockets to
connected clients and delivered to objects in that client as Document Object
Model (DOM) Document's, an open standard for representing XML documents as
objects. Client objects can subscribe to any of these documents through the
well-known Observer design pattern simply by implementing an interface and
specifying what document or documents it would like to receive."
Did that make any sense? Basically the scheme is that client connects to a
server and specifies "rivers" of documents and specific documents to listen
for. As these documents become available they are sent directly to the
client. Whoever is writing code to support these documents need only
implement an interface and register with the client to receive whatever
document it is the object should expect, similar to java's event and bean
property change model.
Now, obviously if the server is sending documents like the *Bible* or *War
and Peace*, this isn't going to work very well. But if the server is
sending many smaller documents which describe changes in a system, for
example, this can be a very useful thing. A client connects and receives
documents which describe the entire system, and then the client receives
documents afterward which describe changes in the system in real time. I
won't impose my biases about what this could be useful for, like real time
news feeds, providing real-time metadata for TV or streaming media,
monitoring applications over the network, etc., because folks might come up
with all sorts of new and creative ways of using this if I don't taint them.
:)
Wow, that was considerably more coherent that what I put up on the web.
Anyway, I think the current version is stable enough to do some damage, and
you can find more information (actually the same information I just gave
you, except more obtuse) and a download at
http://home.earthlink.net/~arabbit/xmlnet/
If you'd like the source code for this or to actually use this or to become
involved with it, please drop me a line at arabbit@earthlink.net. If you
have comments, please drop me a line at the same email address --- I *crave*
feedback. And despite what your parents may have said about, "If you don't
have anything nice to say. . .", negative feedback is far and away the most
useful. Just don't mind me if I get defensive. :)
Oh, right, before I forget --- XMLNet only works with IBM's parser right
now. And it's written in Java. Isn't everything?
Paul Butkiewicz
arabbit@earthlink.nethttp://home.earthlink.net/~arabbit/