Savino, Matt C wrote:
Create SAX events directly from the DB query result.
Doesn't XSLT ultimately need it's source XML in a DOM object to run?
It depends. One point is that DOM is an interface, and there
exist heavyweight and leightweight implementations. Some
XSLT processors can work directly from an arbitrary DOM tree
as long as read interface is supported.
Many XSLT processors prefer to build their own internal
representation of the XML tree for efficiency rather than
using a DOM implementation from a library, quite a few do
this even if they are fed a DOM tree. The internal XML tree
representation may or may not resemble a DOM implementation,
and may or may not use or provide a DOM conformant interface.
Some processors, specifically Xalan, are capable of "streaming
processing". They analyze the templates and start processing
immediately once a sufficiently large subtree is read.
Subtrees which has been processed are discarded, so there is
never a complete DOM in memory. This work especially well
if you are creating a (HTML-) table from a DB query result.