Alternative to xmllint to check xml validity

view full story

http://unix.stackexchange.com – Sometimes, I have to check the validity of some big xml files against a xsd file. The biggest xml file I received had a size close to 1.5GB. xmllint took all my RAM and almost all the swap space, for a total memory usage of 18GB. Consequently, the validation process lasted for 24 hours. My question: Is there an alternative to xmllint --schema that consumes less memory, perhaps making use of some streaming features instead of loading the file to memory? (HowTos)