XPathNavigator.CheckValidity(XmlSchemaSet, ValidationEventHandler) メソッド

定義

XPathNavigator 内の XML データが、提供された XML スキーマ定義言語 (XSD) スキーマに準拠していることを検証します。Verifies that the XML data in the XPathNavigator conforms to the XML Schema definition language (XSD) schema provided.

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 データを検証するために使用するスキーマを格納している XPathNavigatorThe XmlSchemaSet containing the schemas used to validate the XML data contained in the XPathNavigator.

validationEventHandler
ValidationEventHandler

スキーマ検証の警告とエラーに関する情報を受け取る ValidationEventHandlerThe ValidationEventHandler that receives information about schema validation warnings and errors.

戻り値

Boolean

スキーマ検証エラーが発生しなかった場合は true。それ以外の場合は falsetrue if no schema validation errors occurred; otherwise, false.

例外

スキーマ検証エラーが発生しましたが、検証エラーを処理する ValidationEventHandler が指定されていませんでした。A schema validation error occurred, and no ValidationEventHandler was specified to handle validation errors.

要素、属性、およびルート ノードではないノードに XPathNavigator が配置されているか、または検証を実行するための型情報がありません。The XPathNavigator is positioned on a node that is not an element, attribute, or the root node or there is not type information to perform validation.

CheckValidity(XmlSchemaSet, ValidationEventHandler) が XML データのルート ノードに配置されていないときに、XmlSchemaSet パラメーターを使用して XPathNavigator メソッドが呼び出されました。The CheckValidity(XmlSchemaSet, ValidationEventHandler) method was called with an XmlSchemaSet parameter when the XPathNavigator was not positioned on the root node of the XML data.

注釈

  • メソッドは、に CheckValidity 含まれる XML データが XPathNavigator 、に用意されているスキーマまたはスキーマのグローバル型または宣言に準拠していることを確認し XmlSchemaSet ます。The CheckValidity method verifies that the XML data contained in the XPathNavigator conforms to a global type or declaration in the schema or schemas provided in the XmlSchemaSet.

  • メソッドは、 CheckValidity infoset 拡張を実行しません。The CheckValidity method does not perform infoset augmentation. これは、スキーマの既定値が適用されず、テキスト値がアトミック値に変換されず、情報項目に新しい型情報が関連付けられていないことを意味します。This means that schema defaults are not applied, text values are not converted to atomic values, and no new type information is associated with information items.

  • xsi:schemaLocation xsi:noNamespaceSchemaLocation の XML データ内のスキーマまたはヒントは無視されます。Schema xsi:schemaLocation or xsi:noNamespaceSchemaLocation hints in the XML data of are ignored.

  • XPathNavigatorがドキュメントノードに配置されている場合、検証プロセスには、一意性と参照の制約 ( xs:ID 、、 xs:IDREF xs:keyxs:keyref 、および) のチェックが含まれ xs:unique ます。If the XPathNavigator is positioned on a document node, the validation process includes checking of uniqueness and reference constraints (xs:ID, xs:IDREF, xs:key, xs:keyref, and xs:unique). それ以外の場合、これらのチェックは省略されます。Otherwise, these checks are omitted.

  • パラメーターとして渡されたがであり、が XmlSchemaSet null XPathNavigator 要素ノードに配置されている場合、プロパティのプロパティによって公開される型情報は、 SchemaInfo SchemaType ノードの有効性を確認するために使用されます。If the XmlSchemaSet passed as a parameter is null and the XPathNavigator is positioned on an element node, the type information exposed by the SchemaInfo property's SchemaType property is used to check the node's validity. パラメーターとして渡されたがであり、がルートノードに配置されている場合 XmlSchemaSet null XPathNavigatorSchemaInfo ドキュメント要素のプロパティ (つまり、ルートノードの子要素) が使用されます。If the XmlSchemaSet passed as a parameter is null and the XPathNavigator is positioned on the root node, the SchemaInfo property of the document element (that is, the element child of the root node) is used. どちらの場合も、 SchemaType 要素のプロパティのプロパティ SchemaInfo がであり null 、パラメーターとして渡されたがである場合 XmlSchemaSet nullInvalidOperationException 検証の実行に使用する型情報がないため、がスローされます。In both cases if the SchemaType property of the element's SchemaInfo property is null and the XmlSchemaSet passed as a parameter is null, an InvalidOperationException is thrown because there is no type information to use to perform validation.

適用対象