I still don't see why "large document" == "need incremental parser". I can see why you would need a stream parser (e.g. *::SAX XML::Twig XML::Rules). Non-incremental stream parsers parse large documents just fine without parsing the entire document into memory.