You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Jon Smirl <jo...@mediaone.net> on 2000/06/03 22:38:28 UTC

considering xalan-c

I've currently implemented an XSL processing system in Java based around
XT/XP.  My Java implementation isn't fast enough so I'm exploring a C
version. The performance issues aren't entirely XML/XSL related, I have a
lot of other things coded in Java that contribute to the performance
problem.

My current design allows the chaining of stages in the XSL pipeline. My
first stage reads data out of the database and generates SAX events, these
events are scanned for a known PI. When the PI is found it is used to select
the appropriate compiled XSL sheet and the SAX events are then rerouted.

This XSL stage in turn generates output SAX events containing PIs. I monitor
this stream and select the next appropriate stage which may be another
stylesheet or an output stage. I'm currently using XML and HTML output
stages.  Another PI choice will cause the output events to be routed into
FOP which will produce PDF.

I really liked this model since at no point did I ever build a DOM tree. XT
builds an internal input tree which is optimized for XSL processing. FOP
also builds an internal tree which is optimized for PDF generation. Straight
XML generation was the best case since I used the SAX events from the DB
layer to directly generate XML text.

I would like to implement this model using xalan-c. I've been looking at the
source for xerces/xalan and I'm not sure it's really set up for this.
Xalan-c looks like it only takes DOM input and I can't find support for
constructing a DOM from SAX events.

PS - It looks like the Java version supports piping.

Jon Smirl
jonsmirl@mediaone.net