MSXML: Difference between revisions

Content deleted Content added
mNo edit summary
+ More info on which version shipped with which product and wikifying. Removed third person. Note that MSXML6 doesn't yet ship with XPSP2. MS is working to ship MSXML6 in XPSP3.
Line 1:
'''Microsoft XML Core Services''' ('''MSXML''') is a set of services that allow applications written in [[JScript]], [[VBScript]], and Microsoft development tools to build Windows-native [[XML]]-based applications. It supports XML 1.0, [[Document Object Model|DOM]], [[SAX]], an [[XSL Transformations|XSLT]] 1.0 processor, [[XML schema]] support including [[XML Schema|XSD]] and [[XDR Schema|XDR]], as well as other XML-related technologies.
 
==Versions==
MSXML is a collection of distinct products, released and supported by Microsoft. The Theseproduct productsversions can be enumerated as follows:
 
* '''MSXML 6.0''' MSXML6 is the latest MSXML product from Microsoft, and (along with MSXML3) is shipped with [[SQL Server 2005]] and, [[Microsoft WindowsVisual Studio|Visual Studio 2005]], operating[[.NET Framework system3.0]] and [[Windows Vista]]. It also has support for native [[64-bit]] environments.
* '''MSXML 5.0''' MSXML5 is a binary developed specifically for [[Microsoft Office]]. It originally shipped with Office 2003 and also ships with [[Office 2007]].
* '''MSXML 4.0''' MSXML4 was shipped as a separate, downloadable SDK targeted at [[Independent Software VendorsVendor]]s and third parties.
* '''MSXML 3.0''' MSXML3 is a current MSXML product, represented by msxml3.dll. MSXML 3.0 SP2 first shipped with [[Windows XP]], and[[Internet isExplorer]] found6.0 onand [[Microsoft Data Access Components|MDAC]] 2.7. Windows operatingXP SP2 includes MSXML 3.0 SP5 as part of MDAC 2.81. Windows 2000 SP4 also ships with MSXML 3.0. By default, Internet Explorer version 6.0 and [[Internet Explorer 7.0|7.0]] use MSXML 3 to parse XML documents loaded in a systemswindow.
* '''MSXML 2.6''' This is an early version of MSXML, and is represented by msxml2.dll. This product is no longer supported by Microsoft, and the CLSIDs and ProgIDs it exposes have been subsumed by MSXML 3.0. MSXML 2.6 shipped with [[SQL Server]] 2000 and MDAC 2.6.
* '''MSXML 2.5''' This is an early version of MSXML, and is represented by msxml.dll. This productversion is also no longer supported by Microsoft, and the CLSIDs and ProgIDs it exposes have been subsumed by MSXML 3.0. MSXML 2.5 shipped with [[Windows 2000]] as part of [[Internet Explorer]] 5.01 and [[Microsoft Data Access Components|MDAC]] 2.5.
* '''MSXML 2.0a''' This version shipped with [[Internet Explorer]] 5.0. No longer supported.
* '''MSXML 1.0''' This version shipped with [[Internet Explorer]] 4.0. No longer supported.
 
For complete MSXML version information, see the [http://support.microsoft.com/kb/269238 MSXML Version List] at Microsoft.
 
== Developing software with MSXML ==
For new XML-related software development in C++, useMicrosoft recommends using MSXML 6.0 or [http://msdn2.microsoft.com/en-us/library/ms752872.aspx XmlLite]. For guidance on which version of MSXML to use in the browser, refer to the XmlXML Core Team Blog post,
[http://blogs.msdn.com/xmlteam/archive/2006/10/23/using-the-right-version-of-msxml-in-internet-explorer.aspx Using MSXML in the Browser] at MSDN.
 
Line 21 ⟶ 23:
* MSXML 5.0 contains an implementation of XML Digital Signatures.
 
All MSXML products are similar in that they are exposed programmatically as [[Component Object Model]] (COM) objects. YouDevelopers can program against MSXML objects from C++ or from scripts languages such as JScript and VBScript. Managed .NET Interop with MSXML COM components is not supported or recommended.
 
As with all COM components, you programmatically instantiate an MSXML object is programmatically instantiated by CLSID or ProgID. Each version of MSXML exposes its own set of CLSIDs and ProgIDs. For example, to create an MSXML 6.0 DOMDocument object, which exposes the [http://msdn2.microsoft.com/en-us/library/ms756987.aspx IXmlDomDocument], [http://msdn2.microsoft.com/en-us/library/ms761358.aspx IXmlDomDocument2], and [http://msdn2.microsoft.com/en-us/library/ms763789.aspx IXmlDomDocument3] COM interfaces, you use the ProgID "MSXML2.DOMDocument.6.0".
 
MSXML also supports version-independent ProgIDs. Version-independent ProgIDs do not have a version number associated with them. For example "Microsoft.XMLHTTP". These ProgIDs were first introduced in MSXML 1.0, however are currently mapped to MSXML 3.0 objects and the msxml3.dll.
 
== References ==
* [http://support.microsoft.com/kb/269238 List of Microsoft XML Parser (MSXML) versions]
 
== External links ==