xml-xalan-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wolf, Chris (IT)" <Chris.W...@morganstanley.com>
Subject Piped transformations and multithreading
Date Mon, 27 Sep 2004 20:51:32 GMT
I notice that there are two styles of creating transformation pipelines:

1.) Chains of TransformerHandler
2.) Chains of XMLFilter

In case #1, the sample code, "Pipe.java", says in the code comments that
each pipeline stage will run concurrently in it's own thread (apparently
spawned by Xalan).  If this is really true, is it also true for case #2?

Doesn't opportunistic multi-threaded processing depend on the stylesheet
implementation?  For example, if a stylesheet makes random accesses of 
the input XML via XPaths, won't there have to be a DOM-type buffer built

up between stages to the extent necessary to satisfy these XPaths,
even if the initial input is a stream of SAX events?  
If so, is the buffering total (entire document in DOM buffer), or only 
to the extent needed to satisfy the particular XPath?

Another question is, if the stylesheets are designed to implement pure 
"push" processing, then each SAX event should result in a method call
to the next processing pipeline stage, thus the overhead of multiple
stages should be minimal with no inter-stage buffering, correct?

The on-line design docs do not seem to suggest answers to these 
questions.  Thanks for any help,


Chris Wolf 
NOTICE: If received in error, please destroy and notify sender.  Sender does not waive confidentiality
or privilege, and use is prohibited. 

To unsubscribe, e-mail: xalan-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-dev-help@xml.apache.org

View raw message