Table of contents
-
MSXML 5.0 SDK
- Roadmap to the MSXML SDK
- What's New
- Installing and Registering the MSXML 5.0 SDK
- GUID and ProgID Information
- Dependencies in MSXML 5.0
- Tips for Converting Samples to VBScript
- Using Language Filtering
- Sample XML File (books.xml)
- Copyright and Legal Information
- XML Developer's Guide
-
DOM Developer's Guide
- Starter Kit
-
Concepts
- Introduction to the DOM
- How the DOM Works
-
Working with XML Document Parts
- Working with the Document
- Working with Elements
- Working with Attributes
- Working with Text Nodes
- Working with CDATA Sections
- Working with Processing Instructions
- Working with Comments
- Working with Entities
- Working with Entity References
- Working with Document Fragments
- Working with the Document Type
- Working with Namespaces
- Working with Notations
- Persistence and the DOM
- White Space and the DOM
- Enforcing Character Encoding with DOM
-
How Do I?
-
Program with DOM in C/C++
- Get Ready to Work with MSXML (C/C++)
- Set Up My Visual C++ Project
- Include Headers and Libraries Manually
- Load an XML DOM Object from an XML File (C/C++)
- Save an XML DOM Object to a File (C/C++)
- Perform XSL Transformations (C/C++)
- Create an XML Document Dynamically (C/C++)
- Query XML DOM Nodes (C/C++)
- Validate an XML Document or Fragment (C/C++)
- Manage Object Lifetime Using Reference Counting on Interface Pointers (C/C++)
- Use OnReadyStateChange in Visual C/C++ Applications
-
Program with DOM in C/C++ Using Smart Pointer Class Wrappers
- Get Ready to Work with MSXML (Smart)
- Load an XML DOM Object from an XML File (Smart)
- Save an XML DOM Object to a File (Smart)
- Perform XSL Transformations (Smart)
- Create an XML Document Dynamically (Smart)
- Query Nodes from DOM (Smart)
- Validate an XML Document or Fragment (Smart)
- Make XML Requests Over HTTP (Smart)
-
Program with DOM in Visual Basic
- Set Up My Visual Basic Project
- Instantiate an XML DOM Object (Visual Basic)
- Load an XML File into a DOM Object (Visual Basic)
- Serialize an XML DOM Object to a File (Visual Basic)
- Perform XSL Transformations (Visual Basic)
- Create an XML Document Dynamically (Visual Basic)
- Query XML DOM Nodes (Visual Basic)
- Make XML Requests Over HTTP (Visual Basic)
- Validate an XML Document or Fragment (Visual Basic)
- Use the OnReadyStateChange Property (Visual Basic)
- Program with DOM in JScript
-
Program with DOM in C/C++
-
DOM Reference
- XML DOM Enumerated Constants
-
XML DOM Objects/Interfaces
- IXMLDOMAttribute
- IXMLDOMCDATASection
- IXMLDOMCharacterData
- IXMLDOMComment
- IXMLDOMDocument/DOMDocument
- IXMLDOMDocument2
- IXMLDOMDocument3
- IXMLDOMDocumentFragment
- IXMLDOMDocumentType
- IXMLDOMElement
- IXMLDOMEntity
- IXMLDOMEntityReference
- IXMLDOMImplementation
- IXMLDOMNamedNodeMap
- IXMLDOMNode
- IXMLDOMNodeList
- IXMLDOMNotation
- IXMLDOMParseError
- IXMLDOMParseError2
- IXMLDOMParseErrorCollection
- IXMLDOMProcessingInstruction
- IXMLDOMSchemaCollection/XMLSchemaCache
- IXMLDOMSchemaCollection2/XMLDOMSchemaCollection
- IXMLDOMSelection
- IXMLDOMText
-
XML DOM Properties
- allErrors Property
- async Property
- attributes Property
- baseName Property
- childNodes Property
- context Property
- data Property (IXMLDOMCharacterData)
- data Property (IXMLDOMProcessingInstruction)
- dataType Property
- definition Property
- doctype Property
- documentElement Property
- entities Property
- errorCode Property
- errorParametersCount Property
- errorXPath Property
- expr Property
- filepos Property
- firstChild Property
- implementation Property
- input Property
- item Property
- lastChild Property
- length Property (IXMLDOMCharacterData)
- length Property (IXMLDOMNamedNodeMap)
- length Property (IXMLDOMNodeList)
- length Property (IXMLDOMParseErrorCollection)
- length Property (XMLSchemaCache/IXMLSchemaCollection)
- line Property
- linepos Property
- name Property (IXMLDOMAttribute)
- name Property (IXMLDOMDocumentType)
- namespaces Property
- namespaceURI Property (IXMLDOMNode)
- namespaceURI Property (XMLSchemaCache/IXMLSchemaCollection)
- _newEnum Property
- next Property
- nextSibling Property
- nodeName Property
- nodeType Property
- nodeTypedValue Property
- nodeTypeString Property
- nodeValue Property
- notationName Property
- notations Property
- ondataavailable Property
- onreadystatechange Property (DOMDocument)
- onreadystatechange Property (IXMLHTTPRequest)
- onreadystatechange Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- ontransformnode Property
- output Property
- ownerDocument Property
- ownerTemplate Property
- parentNode Property
- parsed Property
- parseError Property
- prefix Property
- preserveWhiteSpace Property
- previousSibling Property
- publicId Property (IXMLDOMEntity)
- publicId Property (IXMLDOMNotation)
- readyState Property (DOMDocument)
- readyState Property (IXMLHTTPRequest)
- readyState Property (IXSLProcessor)
- readyState Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- reason Property
- resolveExternals Property
- responseBody Property (IXMLHTTPRequest)
- responseBody Property (ServerXMLHTTPRequest/IServerXMLHTTPRequest)
- responseStream Property (IXMLHTTPRequest)
- responseStream Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- responseText Property (IXMLHTTPRequest)
- responseText Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- responseXML Property (IXMLHTTPRequest)
- responseXML Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- schemas Property
- specified Property
- srcText Property
- startMode Property
- startModeURI Property
- status Property (IXMLHTTPRequest)
- status Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- statusText Property (IXMLHTTPRequest)
- statusText Property (ServerXMLHTTP/IServerXMLHTTPRequest)
- stylesheet Property (IXSLProcessor)
- stylesheet Property (IXSLTemplate)
- systemId Property (IXMLDOMEntity)
- systemId Property (IXMLDOMNotation)
- tagName Property
- target Property
- text Property
- url Property (DOMDocument)
- url Property (IXMLDOMParseError)
- validateOnLoad Property
- validateOnParse Property
- value Property
- xml Property
- Second-level DOM Properties
-
XML DOM Methods
- abort Method (DOMDocument)
- abort Method (IXMLHTTPRequest)
- abort Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- add Method
- addCollection Method
- addObject Method
- addParameter Method
- appendChild Method
- appendData Method
- clone Method
- cloneNode Method
- createAttribute Method
- createCDATASection Method
- createComment Method
- createDocumentFragment Method
- createElement Method
- createEntityReference Method
- createNode Method
- createProcessingInstruction Method
- createProcessor Method
- createTextNode Method
- deleteData Method
- errorParameters Method
- get Method
- getAllResponseHeaders Method (IXMLHTTPRequest)
- getAllResponseHeaders Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- getAttribute Method
- getAttributeNode Method
- getDeclaration Method
- getElementsByTagName Method (DOMDocument)
- getElementsByTagName Method (IXMLDOMElement)
- getNamedItem Method
- getOption Method
- getProperty Method (IXMLDOMDocument2)
- getProperty Method (IXMLDOMSelection)
- getQualifiedItem Method
- getResponseHeader Method (IXMLHTTPRequest)
- getResponseHeader Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- getSchema Method
- hasChildNodes Method
- hasFeature Method
- importNode Method
- insertBefore Method
- insertData Method
- item Method (IXMLDOMNamedNodeMap)
- item Method (IXMLDOMNodeList)
- load Method
- loadXML Method
- matches Method
- nextNode Method (IXMLDOMNamedNodeMap)
- nextNode Method (IXMLDOMNodeList)
- nodeFromID Method
- normalize Method
- open Method (IXMLHTTPRequest)
- open Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- peekNode Method
- remove Method
- removeAll Method
- removeAttribute Method
- removeAttributeNode Method
- removeChild Method
- removeNamedItem Method
- removeNext Method
- removeQualifiedItem Method
- replaceChild Method
- replaceData Method
- reset Method (IXMLDOMNamedNodeMap)
- reset Method (IXMLDOMNodeList)
- reset Method (IXMLDOMParseErrorCollection)
- reset Method (IXSLProcessor)
- save Method
- selectNodes Method
- selectSingleNode Method
- send Method (IXMLHTTPRequest)
- send Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- setAttribute Method
- setAttributeNode Method
- setNamedItem Method
- setOption Method
- setProperty Method
- setProxy Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- setProxyCredentials Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- setRequestHeader Method (IXMLHTTPRequest)
- setRequestHeader Method (ServerXMLHTTP/IServerXMLHTTPRequest)
- setStartMode Method
- setTimeouts Method
- splitText Method
- substringData Method
- transform Method
- transformNode Method
- transformNodeToObject Method
- validate Method
- validate Method (IXMLDOMSchemaCollection2/XMLDOMSchemaCollection)
- validateNode Method
- waitForResponse Method
- XML DOM Events
- MSXML Helper APIs
-
XML Digital Signature
- XML Digital Signature Developer's Guide
-
XML Digital Signature Reference
- XML Digital Signature Interfaces
- XML Digital Signature Properties
-
XML Digital Signature Methods
- createKeyFromCertContext Method
- createKeyFromCSP Method
- createKeyFromHMACSecret Method
- createKeyFromHMACSecretBinary Method
- createKeyFromNode Method
- createSAXProxy Method
- getCSPHandle Method
- getStoreHandle Method
- getVerifyingCertificate Method
- getVerifyingCertificateContext Method
- setDebugOutput Method
- setReferenceData Method
- setStoreHandle Method
- sign Method
- verify Method
- XML Digital Signature Enumerated Types
- Supported Transforms and Their Namespace URIs
-
XML Digital Signature Elements
- <ds:CanonicalizationMethod> Element
- <ds:DigestMethod> Element
- <ds:DSAKeyValue> Element
- <ds:DigestValue> Element
- <ds:KeyInfo> Element
- <ds:KeyName> Element
- <ds:KeyValue> Element
- <ds:Manifest> Element
- <ds:MgmtData> Element
- <ds:Object> Element
- <ds:PGPData> Element
- <ds:Reference> Element
- <ds:RetrievalMethod> Element
- <ds:RSAKeyValue> Element
- <ds:Signature> Element
- <ds:SignatureMethod> Element
- <ds:SignatureProperties> Element
- <ds:SignatureProperty> Element
- <ds:SignatureValue> Element
- <ds:SignedInfo> Element
- <ds:SPKIData> Element
- <ds:Transform> Element
- <ds:Transforms> Element
- <ds:X509Data> Element
-
XML Schemas
- XML Schemas Overview
-
XSD Schema Developer's Guide
-
Concepts
- Schema Structures
- Data Types in Schemas
- Using Namespaces in Schemas
- Validation
- How Do I?
-
Concepts
-
XML Schema Reference (XSD)
- XML Schema Examples
- XML Schema Element Map
-
XML Schema Elements
- all
- annotation
- any
- anyAttribute
- appinfo
- attribute
- attributeGroup
- choice
- complexContent
- complexType
- documentation
- element
- extension (simpleContent)
- extension (complexContent)
- field
- group
- import
- include
- key
- keyref
- list
- notation
- redefine
- restriction (simpleType)
- restriction (simpleContent)
- restriction (complexContent)
- schema
- selector
- sequence
- simpleContent
- simpleType
- union
- unique
- XML Data Types Reference
- XML Schema Regular Expressions
- XML Schema Instance Attributes
- XDR Schema Developer's Guide
- XDR Schema Reference
- DTD Developer's Guide
- DTD Reference
- SOM Developer's Guide
-
SOM Reference
- XML SOM Enumerated Constants
- ISchema Interface
- ISchemaAny Interface
- ISchemaAttribute Interface
- ISchemaAttributeGroup Interface
- ISchemaComplexType Interface
- ISchemaElement Interface
- ISchemaIdentityConstraint Interface
- ISchemaItem Interface
- ISchemaItemCollection Interface
- ISchemaModelGroup Interface
- ISchemaNotation Interface
- ISchemaParticle Interface
- ISchemaStringCollection Interface
-
ISchemaType Interface
- baseTypes Property
- derivedBy Property
- enumeration Property
- final Property
- fractionDigits Property
- length Property
- maxExclusive Property
- maxInclusive Property
- maxLength Property
- minExclusive Property
- minInclusive Property
- minLength Property
- patterns Property
- totalDigits Property
- variety Property
- whitespace Property
- isValid Method
-
XSLT Developer's Guide
- Starter Kit
-
Concepts
-
Understanding the XSLT Process
-
XSLT Document Map
- Sample Files for the XSLT Document Map
- XML Declaration in an XSLT File
- XSLT Style Sheet Declaration
- Namespace Prefix Declarations
- Namespace Prefixes in XSLT
- Output Method Declarations
- XSLT Variables and Parameters
- Template Rules
- Literal Result Elements in XSLT Files
- XPath Expressions
- Comments in XSLT
- <xsl:for-each> Loops
- XPath Functions and XSLT Functions
- Conditional Statements
- External Document References
- The XSLT Processor
- Using XSLT with Cascading Style Sheets
- XSLT Output
-
XSLT Document Map
- Template-Driven Transformations
- Data-Driven Transformations
-
Displaying Transformation Results
- Displaying XML Files in a Browser
- Using the Default Style Sheet
- Using an External Style Sheet
- Using Cascading Style Sheets to Display Results
- Using Namespaces with CSS
- XSLT Requirements for Viewing XML in a Browser
- Accessing XML and XSLT Documents from Script
- Serving Out XML Files from an HTTP Server
- Using XSLT with the DOM or SAX
- Using XPath Expressions to Select Nodes
- Using XSLT Variables and Parameters
- Sorting with XSLT
- Working with Namespaces and Prefix Aliases
- Using msxsl:node-set() to Process Result-Tree Fragments
- Using Named Template Rules in XSLT
- Inserting Automatic Numbering Using XSLT
-
Importing and Including Style Sheets
- Initial Example for Importing Style Sheets
- Using <xsl:include> to Insert an XSLT File
- Using <xsl:import> to Insert an XSLT File with Lower Precedence
- Deciding Whether to Import or Include an XSLT File
- Avoiding Conflicting Rules by Using <xsl:apply-imports>
- Finished Example for Importing and Including
- Using XSLT Keys to Increase Performance
- Creating Interactive XSLT
-
Controlling White Space with XSLT
- How White Space is Handled in XML Files
- How the MSXML Processor Parses White Space
- Inserting White Space Using <xsl:text>
- Preserving or Stripping White Space
- Example of <xsl:preserve-space> and <xsl:strip-space>
- Overriding <xsl:preserve-space> and <xsl:strip-space>
- Preserving Markup Characters by Using CDATA Sections
- Stripping White Space Using normalize-space()
- Controlling White Space with the DOM
- How the Browser Handles the preserveWhiteSpace Property
- Controlling White Space Using the Style Sheet
- Controlling White Space Using the MSXML Processor
-
Understanding the XSLT Process
- How Do I?
-
XSLT Reference
-
XSLT Elements
- <xsl:apply-imports> Element
- <xsl:apply-templates> Element
- <xsl:attribute> Element
- <xsl:attribute-set> Element
- <xsl:call-template> Element
- <xsl:choose> Element
- <xsl:comment> Element
- <xsl:copy> Element
- <xsl:copy-of> Element
- <xsl:decimal-format> Element
- <xsl:element> Element
- <xsl:fallback> Element
- <xsl:for-each> Element
- <xsl:if> Element
- <xsl:import> Element
- <xsl:include> Element
- <xsl:key> Element
- <xsl:message> Element
- <xsl:namespace-alias> Element
- <xsl:number> Element
- <xsl:otherwise> Element
- <xsl:output> Element
- <xsl:param> Element
- <xsl:preserve-space> Element
- <xsl:processing-instruction> Element
- <msxsl:script> Element
- <xsl:sort> Element
- <xsl:strip-space> Element
- <xsl:stylesheet> Element
- <xsl:template> Element
- <xsl:text> Element
- <xsl:transform> Element
- <xsl:value-of> Element
- <xsl:variable> Element
- <xsl:when> Element
- <xsl:with-param> Element
- XSLT Functions
- XSLT Syntax
-
XSLT Elements
-
XPath Developer's Guide
- Starter Kit
-
Concepts
- Introduction to the XPath Tree Model
- Basic Syntax of XPath Expressions
- Understanding XPath Usage in XSLT
- Using XPath with the DOM
- Context and Navigation in XPath
- Navigating XML Data with XPath Axes
- Filtering XML Data Using XPath Predicates
-
Using Functions in XPath Expressions
- Introduction to XPath Functions
- Processing Node-Sets by Using Node-Set Functions
- Processing Text Strings by Using String Functions
- Testing an Expression by Using Boolean Functions
- Using Numeric Functions to Perform Math Operations in XPath
- Using Numeric Operators to Perform Math Operations in XPath
- Using XSLT Functions in XPath Expressions
- Sample XML Data File for XPath Functions
- Useful Patterns for XPath Expressions
-
How Do I?
- Work with Lists of Items Using XPath
-
Use XPath Axes to Navigate through XML Data
- Navigating Along the child Axis
- Navigating Along the descendant Axis
- Navigating Along the parent Axis
- Navigating Along the ancestor Axis
- Navigating Along the following Axis
- Navigating Along the preceding Axis
- Navigating Along the following-sibling Axis
- Navigating Along the preceding-sibling Axis
- Navigating Along the attribute Axis
- Navigating Along the namespace Axis
- Navigating Along the self Axis
- Navigating Along the descendant-or-self Axis
- Navigating Along the ancestor-or-self Axis
- Using Abbreviations in XPath Expressions
- Sample XML File for Navigating XPath Axes
- Sample XSLT File for Navigating XPath Axes
- Construct Complex XPath Searches
-
XPath Reference
- XPath Syntax
-
XPath Functions
- Node-Set Functions
- String Functions
- Boolean Functions
- Number Functions
-
Microsoft XPath Extension Functions
- Defining Namespace Prefixes for Extension Funtions
- Using XPath Extension Functions for XSD Support
- ms:type-is Function
- ms:type-local-name([node-set]) Function
- ms:type-namespace-uri ([node-set]) Function
- ms:string-compare Function
- ms:schema-info-available Function
- ms:utc Function
- ms:namespace-uri Function
- ms:local-name Function
- ms:number Function
- ms:format-date Function
- ms:format-time Function
-
SAX2 Developer's Guide
-
Starter Kit
- What is SAX?
- Frequently Asked Questions about SAX2
- JumpStart for Creating a SAX2 Application
- Creating C++ Applications Using SaxAppWizard
- Concepts
- How Do I?
-
Starter Kit
-
SAX2 Reference
- IMXAttributes Interface
- IMXSchemaDeclHandler Interface
- IMXWriter Interface
-
ISAXAttributes Interface
- getIndexFromName Method
- getIndexFromQName Method
- getLength Method (C/C++)
- getLocalName Method
- getName Method (C/C++)
- getQName Method
- getType Method
- getTypeFromName Method
- getTypeFromQName Method
- getURI Method
- getValue Method
- getValueFromName Method
- getValueFromQName Method
- length Property (Visual Basic)
- ISAXContentHandler Interface
- ISAXDeclHandler Interface
- ISAXDTDHandler Interface
- ISAXEntityResolver Interface
- ISAXErrorHandler Interface
- ISAXLexicalHandler Interface
- ISAXLocator Interface
- ISAXXMLFilter Interface
-
ISAXXMLReader Interface
- getFeature Method
- putFeature Method
- getProperty Method
- putProperty Method
- parse Method
- parseURL Method
- baseURL Property (Visual Basic)
- contentHandler Property (Visual Basic)
- dtdHandler Property (Visual Basic)
- entityResolver Property (Visual Basic)
- errorHandler Property (Visual Basic)
- secureBaseURL Property (Visual Basic)
- getBaseURL Method (C/C++)
- putBaseURL Method (C/C++)
- getContentHandler Method (C/C++)
- putContentHandler Method (C/C++)
- getDTDHandler Method (C/C++)
- putDTDHandler Method (C/C++)
- getEntityResolver Method (C/C++)
- putEntityResolver Method (C/C++)
- getErrorHandler Method (C/C++)
- putErrorHandler Method (C/C++)
- getSecureBaseURL Method (C/C++)
- putSecureBaseURL Method (C/C++)
- MXValidator CoClass
- SAX2 C++ Common Notices
- SAX2 Visual Basic Common Notices
- XML Glossary