> I missed the point of this email?
> but I sort of assumed the following.
>
> Assumptions:
> 1. Files are very large and machine generated.
> 2. The source of the files is a third party.
> 3. You don't want humans to ever look at the files.
> 4. Breaking the files up arbitrarily (which you would have to do if
> your processing is memory bound) is not an option.
> 5. All your machines have different memory profiles and hence
> can handle
> different size files in xalan.
>
> Solutions:
>
> 1. get the user to break up the large file into smaller piece
> but if you are going to pre-parse a large file you might as well
> not use xalan and just do the transforms yourself in SAX.
You can't 'do transformations in sax', all transforms are based on a
dom-like structure, it just depends on how much of your xml source is in
that dom structure.
It doesn't matter that the files are large and machine generated, or
that the source of the file is a third party. You will however need to
have a human (developer) look at the file and analyse its structure. If
the file is of the form:
<root>
<section>
large section of xml
</section>
<section>
another large section
</section>
...
</root>
..and each <section> can be transformed independently of the other, then
you can break up your input into <section>'s and transform them
individually and reform the result at the end of all the
transformations. This is quite a common technique to process large
repetitive machine generated xml using xslt.
The point I was making was that if it *isn't* possible to break up a
50mb xml file, then the designer of that xml needs to rethink their
data.
The developers of Xalan and STX are trying to do this sort of thing for
you, but until then you will need to analyse the xml for yourself :)
cheers
andrew