You can't normally use an XML parser for SGML documents.
If you have 130MB of data I'd suggest that you don't use DOM-style parsers unless you have a LOT of memory. There are a lot of SGML parsers around. Try James Clark's SP. I haven't tried it myself yet (but I will soon), but as far as I know it fully conforms to the latest SGML annices.
Alternatively, you can use an SGML-to-XML converter. IIRC, James Clark made one (www.jclark.com).
An XML parser is required to stop and flag an error if the parsed document isn't 100% valid XML. In XML, all attribute values MUST be literals, that is, attribute="value". Also, the markup most likely contains unclosed elements, which is forbidden in XML.
Good luck!