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:keyxs:keyrefиxs:unique). В противном случае эти проверки опущены.Если переданный XmlSchemaSet в качестве параметра параметр
nullнаходится на XPathNavigator узле элемента, сведения о типе, предоставляемые SchemaInfo свойством свойства SchemaType , используются для проверки допустимости узла. Если переданный XmlSchemaSet в качестве параметра параметрnullнаходится на XPathNavigator корневом узле, SchemaInfo используется свойство элемента документа (т. е. дочерний элемент корневого узла). В обоих случаях, если SchemaType свойство свойства элемента SchemaInfo и XmlSchemaSetnullпередано в качестве параметраnull, возникает исключение, InvalidOperationException так как для выполнения проверки нет сведений о типе.