Re: [xml] Does xsltproc load entire XML into memory

On Mon, 2009-02-23 at 17:36 -0500, ABeylin axsone com wrote:
We normally deal with very large XML files and avoid loading them into
memory in our application by using SAX api.  However in scripts we
call xsltproc.

Am I understanding it correctly that xsltproc does in fact load entire
XML into memory?

And is that a part of a spec, or could it be redone by SAX parsing and
avoiding a large memory imprint.

In general it's pretty hard to implement a streaming XSLT engine.

there are people looking at a profile of XSLT that could be
streamed, but in the meantime i'd suggest considering alternatives --
if you only need to fetch small parts of the document, but multiple
times for a given large document, you could use XQuery with an
indexed implementation like dbxml, or if you need to read the
entire document only once, you could consider using STX, the
streaming xml transformation language, although I'm not up to speed
on implementations.

Hope this helps at least a little.


Liam Quin - XML Activity Lead, W3C,
Pictures from old books:

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]