xml-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michal Mosiewicz <m...@interdata.com.pl>
Subject SAX
Date Wed, 10 May 2000 22:17:20 GMT
I've sent it already to sax@megginson.com, but I thought that it might
be worth to mention it here. I think that SAX could be much more robust,
if it was extended a little bit, and this list could be a good place to
discuss it.

First, what I notice in SAX that bothers me is that it lacks for
bidirectional communication. I.e. there is a data producer, that sends
the whole document as events, and there is a consumer, that is only
expected to listen for those events, and just to follow them.

IMHO, SAX event handlers also should return some informative codes
similiary to how it is implemented in Sun's taglibs, where tag handlers
may return things like SKIP_BODY or SKIP_PAGE. 

All the parts of the producer-transformer-serializer path could possibly
benefit from this:

1. Some content producers may send possibly more data that is needed to
get the final document, so transformations applied may shorten the
source content, or even get small parts of this. While this is maybe not
so necessary in case of simple sequentially read files, it may enhance
performance if the producer may ommit some parts - for example, if you
wrap database data in your XML or more general - if you can access
source document randomly.

2. We can optimize transformers, especially if you pipeline several
transformations, you can backtrace the events that don't produce any
result, and optimise the whole transformation pipeline. 

3. There is also potentially much larger gain in serializer part,
becouse this could allow for structure level caching of the result, i.e.
you could potentially decide to cache some fragments of the output, not
necessarily whole documents. Currently it's teoretically possible, but
document producer is not able to know if it is not required to provide
some data, becouse the cached output is still valid.

Does anybody know if there is any mailing list related strictly to SAX? 

-- Mike

View raw message