PRB: Loading Large XML Files into the XML DOM Drains System Resources (266228)



The information in this article applies to:

  • Microsoft XML 2.0
  • Microsoft XML 2.5
  • Microsoft XML 2.6
  • Microsoft XML 3.0
  • Microsoft XML 3.0 SP1
  • Microsoft XML 4.0

This article was previously published under Q266228

SYMPTOMS

System resources can be drained when a large XML file is loaded into the XML Document Object Model (DOM). This behavior is noticeable when a large XML file is opened in Internet Explorer or loaded into the XML DOM programmatically by code.

CAUSE

The XML parser must parse the file sequentially into the DOM, and this can be time and resource intensive for large XML files. This is an inherent attribute of any XML parser because XML is always plain text, and the text must be parsed one character at a time.

RESOLUTION

Limit the size of XML documents. Store large datasets in a faster data source, and load segments of the data into XML documents as needed. Alternatively, the Microsoft Simple API for XML (SAX) implementation allows more flexibility in dealing with the XML DOM, and can be used to improve performance dramatically in dealing with large datasets. For more information, see the "References" section of this article.

STATUS

This behavior is by design.

Modification Type:MajorLast Reviewed:9/30/2003
Keywords:kbprb KB266228