Is it possible to construct smaller data files with the same structure? Try doing something smaller and see how the memory requirement increases with data size.
Your stack trace surprises me rather:
Exception in thread "main" java.lang.OutOfMemoryError
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:203)
at java.util.jar.JarFile.<init>(JarFile.java:132)
at java.util.jar.JarFile.<init>(JarFile.java:70)
at sun.misc.URLClassPath$JarLoader.getJarFile(URLClas sPath.java:579)
because it's loading software at the time of the error. Usually you'll get an OutOfMemory error while building the tree representing the source document, which will show a very different kind of stack trace. That's not necessarily significant, just a bit odd.
Have you tried running with -t on the Saxon command line to see how far it gets before it fails?
Also, try running a trivial (identity) transform on the same source document. That should tell you whether the problem is in loading the source document into memory, or whether it's something that your stylesheet is doing (like creating huge amounts of temporary data in working storage).
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference