XML Processing Options

 

See the following tables for a list of Microsoft technologies you can use to process XML data.

OptionProcessing typeDescription
LINQ to XML 
(System.Xml.Linq namespace)
In-memory- Based on the .NET Framework Language-Integrated Query (LINQ) technology.
- Provides query experience that is similar to SQL for objects, relational data, and XML data.
- Provides inituive document creation and transformation capabilities.
- Use this option if you're writing new code.
System.Xml.XmlReaderStream-based- Provides a fast, non-cached, forward-only way to access XML data.
- You can create objects by using the XmlReader.Create method, and specify the set of features to enable on the object by using the XmlReaderSettings class.
System.Xml.XmlWriterStream-based- Provides a fast, non-cached, forward-only way to generate XML data.
- You can create objects by using the XmlWriter.Create method, and specify the set of features to enable on the object by using the XmlWriterSettings class.
System.Xml.XmlDocumentIn-memory- Implements the W3C Document Object Model (DOM) Level 1 Core and DOM Level 2 Core recommendations.
- You can create, insert, remove, and modify nodes by using methods and properties based on the familiar DOM model.
- Use this option if you're modifying existing code that utilizes the W3C DOM.
System.Xml.XPath.XPathNavigatorIn-memory- Offers several editing options and navigation capabilities using a cursor model.
- XML documents can be contained in an XPathDocument or XmlDocument object.
- Provides excellent performance for read-only processing of XML.
- Use this option if you're modifying existing code with XPath queries or XSLT transformations.
XslCompiledTransformIn-memory- Provides options for transforming XML data using XSL transformations.
- The XSLT Compiler (xsltc.exe) lets you reference pre-compiled transformations in your app.
OptionDescription
XmlLite- A fast, secure, non-caching, forward-only XML parser that helps you build high-performance XML apps.
- Works with any language that can use dynamic link libraries (DLLs); we recommend using C++.
MSXML- COM-based technology for processing XML that is included with the Windows operating system.
- Provides a native implementation of the DOM with support for XPath and XSLT.
- Contains the SAX2 event-based parser.

Process XML Data Using the DOM Model
Process XML Data Using the XPath Data Model
XSLT Compiler (xsltc.exe)

Show: