XmlSchemaValidator Constructor
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Initializes a new instance of the XmlSchemaValidator class.
public:
XmlSchemaValidator(System::Xml::XmlNameTable ^ nameTable, System::Xml::Schema::XmlSchemaSet ^ schemas, System::Xml::IXmlNamespaceResolver ^ namespaceResolver, System::Xml::Schema::XmlSchemaValidationFlags validationFlags);
public XmlSchemaValidator (System.Xml.XmlNameTable nameTable, System.Xml.Schema.XmlSchemaSet schemas, System.Xml.IXmlNamespaceResolver namespaceResolver, System.Xml.Schema.XmlSchemaValidationFlags validationFlags);
new System.Xml.Schema.XmlSchemaValidator : System.Xml.XmlNameTable * System.Xml.Schema.XmlSchemaSet * System.Xml.IXmlNamespaceResolver * System.Xml.Schema.XmlSchemaValidationFlags -> System.Xml.Schema.XmlSchemaValidator
Public Sub New (nameTable As XmlNameTable, schemas As XmlSchemaSet, namespaceResolver As IXmlNamespaceResolver, validationFlags As XmlSchemaValidationFlags)
Parameters
- nameTable
- XmlNameTable
An XmlNameTable object containing element and attribute names as atomized strings.
- schemas
- XmlSchemaSet
An XmlSchemaSet object containing the XML Schema Definition Language (XSD) schemas used for validation.
- namespaceResolver
- IXmlNamespaceResolver
An IXmlNamespaceResolver object used for resolving namespaces encountered during validation.
- validationFlags
- XmlSchemaValidationFlags
An XmlSchemaValidationFlags value specifying schema validation options.
Exceptions
One or more of the parameters specified are null
.
An error occurred while compiling schemas in the XmlSchemaSet parameter.
Examples
For an example of the XmlSchemaValidator constructor, see the XmlSchemaValidator class reference topic.
Remarks
The following are important notes to consider when using the XmlSchemaValidator constructor.
The contents of the XmlSchemaSet parameter are copied into an internal XmlSchemaSet object when the ProcessInlineSchema or the ProcessSchemaLocation validation options are set. As a result, changes to the input XmlSchemaSet object during validation do not affect the outcome of validation.
If the XmlSchemaSet parameter specified is not compiled, its Compile method is called.
The IXmlNamespaceResolver parameter is especially important for validating
xs:QName
types. The XmlSchemaValidator class does not copy the in-scope namespaces from the IXmlNamespaceResolver object but instead holds a reference to it. This allows new namespaces to be added to the IXmlNamespaceResolver object during the validation process.
Important
The ProcessInlineSchema and ProcessSchemaLocation validation flags of an XmlSchemaValidator object are not set be default. Additionally, the XmlResolver property of an XmlSchemaValidator object is null
by default. As a result, external schemas referenced in include, imports, or redefine elements are not resolved by default.