MSXML 4.0 SP2 now available!
What is MSXML?MSXML, now known as Microsoft XML Core Services, is the COM based API to parse and process XML documents. The current release of this free software from Microsoft includes support for DOM Level 2.0, SAX 2.0, XPath, XSLT, and XSD Schemas.
Tip: Read Chapter 1: Introduction to MSXML from the book XML Application Development with MSXML 4.0.
Some HistoryMicrosoft Internet Explorer 4.0 was the first browser to have XML support. With this version, Microsoft shipped a very basic DOM based XML parser and named in MSXML 1.0. As XML standards evolved, Microsoft added and improved MSXML features and today it is much more than just a parser.
Tip: The MSXML 1.0 IDL file is available here.
Tip: Click here to learn how to use MSXML 1.0 DOM interfaces.
In early November 2000, Microsoft released a long awaited MSXML 3.0 full release. MSXML 3.0 featured complete implementation of XSLT & XPath W3C specifications, improved SAX2, DOM and namespace support, Server-safe HTTP access, quite a few bug fixes and performance improvements.
Tip: Click here for some introductory text on DOM and SAX support in MSXML 3.0.
Tip: MSXML 3.0 online SDK documentation is available here.
In October 2001, Microsoft released MSXML 4.0 and renamed it to Microsoft XML Core Services. The highlights of this release include performance improvements, true side-by-side functionality, DOM-SAX integration, complete support for XSD Schemas and improved HTTP data access support.
Tip: MSXML 4.0 online SDK documentation is available here.
In summary, today MSXML can be used to create, parse, and process XML documents using either DOM (memory mapped hierarchical tree-based API) or SAX (streaming event-based API). It can be used to validate XML documents either using XSD schemas or XDR schemas. It can be used to transform XML documents using XSLT and XPath. It supports client-side and server-side HTTP access; that is MSXML can be used to make HTTP requests and process response.
Tip: The article What's New in MSXML 4.0 from MSDN magazine and What's New in the October 2001 Microsoft XML Core Services (MSXML) 4.0 Release on MSDN Web site provide an excellent introduction to new features introduced in MSXML 4.0.
Tip: Also be sure to check out the article An Overview of MSXML 4.0 by Steven Livingstone (co-author of the book XML Application Development With MSXML 4.0.
MSXML is also available in languages other than English, such as Chinese (Traditional and Simplified), German, French, Italian, Japanese, Spanish and Korean.
From where can I download MSXML?Following are the links from where you may download various versions of MSXML:
- MSXML 4.0 SP2
- MSXML 4.0 Service Pack 2 (Microsoft XML Core Services): Localized (Chinese, Japanese, Korean, German, French, Italian, Spanish)
- MSXML 4.0 SP2 SDK
- MSXML (Microsoft XML Parser) 3.0 Service Pack 2
- MSXML Parser 3.0 SDK
- MSXML (Microsoft XML Parser) 3.0 Service Pack 2 Localized (Chinese, German, Japanese, Korean)
- Windows Installer 2.0 Redistributable for Windows NT 4.0 and 2000
- Windows Installer 2.0 Redistributable for Windows 95, 98, and Me
Tip: Check out the article "Creating Efficient MSXML Applications" for few nice tips on optimizing your MSXML code!
Replace mode Vs Side-by-Side modeThe side-by-side mode allows multiple versions of parsers to co-exist and its upto the application to chose which one to use, by using the version-dependent ProgIDs/GUIDs. MSXML Versions prior to 4.0 (2.5, 2.6 and 3.0) also support Replace mode. In this approach, by using the version independent GUIDs/ProgIDs and by updating the registry, application developers can make sure that their application always uses the newest version of parser installed. MSXML 4.0 does not support replace mode and can only be installed in side-by-side mode. The main reason for this is the various problems caused by replace mode. See KB Article Q303207 and Q278636 for more details.
Tip: MSXML 3.0 SP2 only installs in replace mode (IE 6.0 and Windows XP install MSXML 3.0 SP2). MSXML 4.0 does not support version-independent ProgIDs/GUIDs and replace mode; it can only be installed in side-by-side mode.
MSXML Versions On Your Machine
Tip: Check out the MSXML tools and utilities at Aaron Skonnard's XML Resource page.
MSXML Standards Conformance Reports
Tip: Check out XML Developer's Reference Guide.
- Microsoft XML Parser Conformance
- MSXML Conformance Update
- MSXML 3.0 XSLT and XPath Conformance Notes
- Microsoft on parser conformance
- XML DOM Level 1 implementations test suites from OASIS and NIST
- XML Processor Conformance Report: MSXML2.DOMDocument.3.0