The ISAXXMLReader/IVBSAXXMLReader interface allows an application to set and query features and properties in Microsoft® XML Core Services (MSXML) 5.0 for Microsoft Office, register event handling for document processing, and initiate a document parse. MSXML provides the following CoClass that implements this interface.
(CLSID_SAXXMLReader50: 88d969c7-f192-11d4-a65f-0040963251e5)
With MSXML 4.0 and later, you can throw SAX events from a DOMDocument object by specifying the DOMDocument object as the input parameter for the parse method. For more information, see Convert DOM to SAX.
You can use the following methods to observe and control the behavior of the reader:
The Microsoft COM/Visual Basic® implementation of SAX2 supports the following features (for example, a property whose value is Boolean).
"exhaustive-errors""http://xml.org/sax/features/external-general-entities""http://xml.org/sax/features/external-parameter-entities""http://xml.org/sax/features/lexical-handler/parameter-entities""http://xml.org/sax/features/namespaces""http://xml.org/sax/features/namespace-prefixes""preserve-system-identifiers""schema-validation""server-http-request"The reader recognizes the "http://xml.org/sax/features/string-interning" and "schema-validation" features. However, you cannot set these features in the current SAX2 implementation.
The reader also provides methods (getProperty, putProperty) for getting and setting these properties.
"http://xml.org/sax/properties/lexical-handler""http://xml.org/sax/properties/declaration-handler""http://xml.org/sax/properties/dom-node""http://xml.org/sax/properties/xml-string""charset""schemas""schema-declaration-handler""xmldecl-encoding""xmldecl-version""xmldecl-standalone"| getFeature | Returns the Boolean value of a feature. |
| putFeature | Sets the value of a feature. |
| getProperty | Returns the value of a property (as a string), for any qualified Uniform Resource Identifier (URI). |
| putProperty | Sets the value of a property. |
| parse | Parses an XML document or a DOMDocument object. |
| parseURL | Parses an XML document from a system identifier. |
The IVBSAXXMLReader interface is implemented in the Simple API for XML (SAX2) applications to manage and execute the parsing of an XML document.
Typically, you create an instance of the reader in the Main form of a Visual Basic application. For example, first you declare a variable for holding a reference to the IVBSAXXMLReader50 interface. You then create an instance of the reader and assign the interface to the object variable as follows:
Dim reader As SAXXMLReader50
Set reader = New SAXXMLReader50
After you create an instance of the reader, you can create an instance of a ContentHandler or ErrorHandler, and then set them as properties of the reader object using the contentHandler and errorHandler properties.
The following code sample declares variables for the ContentHandler and ErrorHandler implementations, creates instances of these two handlers, and registers these handlers with the reader object by defining them as properties of the reader.
Dim reader As SAXXMLReader50
Dim contentHandler As ContentHandlerImpl
Dim errorHandler As ErrorHandlerImpl
Set reader = New SAXXMLReader50
Set contentHandler = New ContentHandlerImpl
Set errorHandler = New ErrorHandlerImpl
Set reader.contentHandler = contentHandler
Set reader.errorHandler = errorHandler
| baseURL | Sets the base URL for the current document. |
| contentHandler | Sets the current ContentHandler. |
| dtdHandler | Sets the current DTDHandler. |
| entityResolver | Sets the current EntityResolver. |
| errorHandler | Registers or returns the current ErrorHandler. |
| secureBaseURL | Sets the secure base URL for the document. |
An application can set and query features in the reader, register event handlers for document processing, and initiate a document parse. With this COM/C++ implementation of SAX2, the reader can use the following methods to register the corresponding handlers:
ContentHandler.DTDHandler.ErrorHandler.In addition to the preceding methods, the following also apply to the ISAXXMLReader interface.
| getBaseURL | Returns the base URL for the document. |
| putBaseURL | Sets the base URL for the document. |
| getContentHandler | Returns the current ContentHandler. |
| putContentHandler | Allows an application to register a ContentHandler. |
| getDTDHandler | Returns the current DTDHandler. |
| putDTDHandler | Allows an application to register a DTDHandler. |
| getEntityResolver | Returns the current EntityResolver. |
| putEntityResolver | Allows an application to register an EntityResolver. |
| getErrorHandler | Returns the current ErrorHandler. |
| putErrorHandler | Allows an application to register an ErrorHandler. |
| getSecureBaseURL | Returns the secure base URL for the document. |
| putSecureBaseURL | Sets the secure base URL for the document. |
MSXML 3.0 and later
Implementation: msxml5.dll, msxml2.lib
Header and LIB files: msxml2.h, msxml2.lib
Version 5.0 Dependent ProgID: SAXXMLReader50
Version 5.0 Dependent CLSID: 88d969c7-f192-11d4-a65f-0040963251e5
To view reference information for Visual Basic or C/C++ only, click the Language Filter button
in the upper-left corner of the page.