Different open source tools, most of which use the Xerces implementation (DOM Level 1 and 2) as a base. Xerces itself is available in Java, C++, Perl, and COM.
xml.apache.org