Is there any better IDOMImplementation other than MSXML?

Posted by Chau Chee Yang on Stack Overflow See other posts from Stack Overflow or by Chau Chee Yang
Published on 2010-03-13T03:25:31Z Indexed on 2010/03/13 3:27 UTC
Read the original article Hit count: 542

Filed under:
|

There are 3 IDOMImplementation available in Delphi:

  1. MSXML
  2. Xerces XML
  3. ADOM XML v4

MSXML is the default IDOMImplementation.

My test is count the time need to load a 10MB xml file. I use a Delphi unit generated from a XSD using XML data binding to load the xml file. This unit has 3 common function:

function Getmenubar(Doc: IXMLDocument): IXMLMenubarType;
function Loadmenubar(const FileName: WideString): IXMLMenubarType;
function Newmenubar: IXMLMenubarType;

I learn from the web that some comment that MSXML's overhead is high that it doesn't perform if compare to other XML parser. However, my study shows that MSXML is the best among others. Xerces XML 2nd and ADOM XML v4 the worst:

  1. MSXML - 0.6410 seconds
  2. Xerces XML - 2.4220 seconds
  3. ADOM XML v4 - 67.50 seconds

I also come across with OmniXML that claim to have much better performance compare to MSXML but I never success using it with the unit generated by XML data binding.

Is there any other vendor that implement IDOMImplementation of Delphi that work much better than MSXML? I am using Delphi 2010 and Windows 7.

© Stack Overflow or respective owner

Related posts about delphi

Related posts about Xml