RE: [xsl] RE: Incremental transformations with Xalan and performance issues?

Subject: RE: [xsl] RE: Incremental transformations with Xalan and performance issues?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sun, 5 Dec 2004 00:19:58 -0000
> Do you happen to know if anyone has tried to build an XSLT 
> engine that does incremental 
> transformations on incoming SAX events, without requiring the 
> building of a tree?  

There's been academic work on doing this with XPath, which is a precondition
to solving it at the XSLT level. This generally takes the traditional
academic form of ignoring the parts of the problem that are too difficult,
like positional predicates on reverse axes. In general I think it's safe to
say that it's not possible, and the best that you can achieve is to identify
some subset of XSLT that can be processed in this way. I think the people
doing STX took the right approach: in a serial transformation, you only get
the chance to look at each node once, and that means you need to remember
information from that node until it's needed, which means you need a
stateful language rather than a purely functional one.

> 
> I'm using Xalan (inside Cocoon), and for this task have not 
> yet figured out a way to use 
> Saxon due to some extensions I'm using.  More specifically, I 
> need to get/put stuff into 
> the session and using something like this (in Xalan):
> 
In general extension functions do make a stylesheet non-portable. However,
there's usually a way of getting round this. People do use Saxon with
Coccoon, but it's not something I can advise you on. Perhaps someone else
can help?

Michael Kay
http://www.saxonica.com/ 

Current Thread