XPathNavigator.CheckValidity(XmlSchemaSet, ValidationEventHandler) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Проверяет соответствие данных XML в XPathNavigator указанной схеме языка определения схем XML (XSD).
public:
virtual bool CheckValidity(System::Xml::Schema::XmlSchemaSet ^ schemas, System::Xml::Schema::ValidationEventHandler ^ validationEventHandler);
public virtual bool CheckValidity (System.Xml.Schema.XmlSchemaSet schemas, System.Xml.Schema.ValidationEventHandler validationEventHandler);
abstract member CheckValidity : System.Xml.Schema.XmlSchemaSet * System.Xml.Schema.ValidationEventHandler -> bool
override this.CheckValidity : System.Xml.Schema.XmlSchemaSet * System.Xml.Schema.ValidationEventHandler -> bool
Public Overridable Function CheckValidity (schemas As XmlSchemaSet, validationEventHandler As ValidationEventHandler) As Boolean
Параметры
- schemas
- XmlSchemaSet
XmlSchemaSet, содержащий схемы, используемые для проверки данных XML в XPathNavigator.
- validationEventHandler
- ValidationEventHandler
ValidationEventHandler, получающий сведения об ошибках и предупреждениях при проверке схемы.
Возвращаемое значение
true
, если произошли ошибки при проверке схемы, иначе false
.
Исключения
Возникла ошибка при проверке схемы, и не задан ValidationEventHandler для обработки ошибок проверки.
XPathNavigator расположен на узле, который не является элементом, атрибутом или корневым узлом, или же отсутствует информация о типе для выполнения проверки.
Метод CheckValidity(XmlSchemaSet, ValidationEventHandler) был вызван с параметром XmlSchemaSet, в то время, когда XPathNavigator не расположен на корневом узле данных XML.
Комментарии
Метод CheckValidity проверяет, соответствуют ли XML-данные, содержащиеся в XPathNavigator глобальном типе или объявлении в схеме или схемах, предоставленных в .XmlSchemaSet
Метод CheckValidity не выполняет расширение набора сведений. Это означает, что значения схемы по умолчанию не применяются, текстовые значения не преобразуются в атомарные значения, а сведения о новом типе не связаны с информационными элементами.
Схема
xsi:schemaLocation
илиxsi:noNamespaceSchemaLocation
указания в XML-данных игнорируются.Если он XPathNavigator расположен на узле документа, процесс проверки включает проверку уникальности и ссылочных ограничений (
xs:ID
, ,xs:IDREF
, иxs:key``xs:keyref
т. дxs:unique
.). В противном случае эти проверки опущены.Если переданный XmlSchemaSet в качестве параметра параметр
null
XPathNavigator расположен на узле элемента, сведения о типе, предоставляемые свойством SchemaInfo свойства SchemaType , используются для проверки допустимости узла. Если переданный XmlSchemaSet в качестве параметра параметрnull
XPathNavigator расположен на корневом узле, SchemaInfo используется свойство элемента документа (то есть дочерний элемент корневого узла). В обоих случаях, если SchemaType свойство свойства элемента SchemaInfo и XmlSchemaSetnull
передано в качестве параметраnull
, возникает исключение, InvalidOperationException так как для выполнения проверки нет сведений о типе.