Processing XML Data In-Memory

The Microsoft .NET Framework includes three models for processing XML data: the XmlDocument class, the XPathDocument class, and LINQ to XML (C#) and LINQ to XML (Visual Basic).

The XmlDocument class implements the W3C document object model (DOM) level 1 core and the core DOM level 2 recommendations. The DOM is an in-memory (cache) tree representation of an XML document. With the XmlDocument and its related classes, you can construct XML documents, load and access data, modify data, and save changes.

The XPathDocument class is a read-only, in-memory data store that is based on the XPath data model. The XPathNavigator class offers several editing options and navigation capabilities using a cursor model over XML documents contained in the read-only XPathDocument class as well as the XmlDocument class.

LINQ to XML is a model introduced in the .NET Framework version 3.5 for processing XML data. It's an in-memory model that leverages Language-Integrated Query (LINQ). LINQ extends the language syntax of C# and Visual Basic to provide new query capabilities.

In This Section

Process XML Data Using the DOM Model
Discusses using the XmlDocument, and its related classes to process XML data.

Process XML Data Using the XPath Data Model
Discusses using the XPathDocument, XmlDocument, and XPathNavigator classes to process XML data.

Process XML Data Using LINQ to XML
Provides a brief overview of LINQ to XML and provides links to the LINQ to XML documentation.

XML Documents and Data