Edward(_dot_)Middleton(_at_)nikonoa(_dot_)net wrote:
Do you mean it creates a complete tree for the document before
processing, or just a tree containing the currently
processed portion
of the document?
It depends. AFAIK Saxon always produces a full in-memory
representation of the whole document. Xalan is capable of
"streaming processing". If told so it may hold only a portion
of the processed source in memory. With a generic
copy-through style sheet Xalan should be able to work on
input of arbitrary size.
J.Pietschmann
I can't speak with any authority about Xalan, but my understanding is
that it builds the tree concurrently with doing the transformation; by
the time you've finished, you will normally have the complete tree in
memory. This has benefits, but the memory you need still increases
linearly with document size.
The interesting challenge is to work out when you can discard parts of
the tree that won't be needed again. I think this could be done quite
easily for a small class of very simple stylesheets, but the general
problem is quite hard.
Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list