XPathNavigator.CheckValidity(XmlSchemaSet, ValidationEventHandler) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Verifica che i dati XML nella classe XPathNavigator siano conformi allo schema XSD (XML Schema Definition Language) specificato.
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
Parametri
- schemas
- XmlSchemaSet
La classe XmlSchemaSet contenente gli schemi utilizzati per convalidare i dati XML contenuti nella classe XPathNavigator.
- validationEventHandler
- ValidationEventHandler
L'oggetto ValidationEventHandler che riceve le informazioni sugli avvisi e gli errori relativi alla convalida degli schemi.
Restituisce
true
se non si sono verificati errori di convalida degli schemi; in caso contrario, false
.
Eccezioni
Si è verificato un errore di convalida degli schemi e non è stato specificato un oggetto ValidationEventHandler per la gestione degli errori di convalida.
La classe XPathNavigator è posizionata in corrispondenza di un nodo che non è un elemento, un attributo o il nodo radice oppure non sono disponibili informazioni sul tipo per eseguire la convalida.
Il metodo CheckValidity(XmlSchemaSet, ValidationEventHandler) è stato chiamato con un parametro XmlSchemaSet quando la classe XPathNavigator non era posizionata in corrispondenza del nodo radice dei dati XML.
Commenti
Il CheckValidity metodo verifica che i dati XML contenuti nell'oggetto XPathNavigator siano conformi a un tipo globale o a una dichiarazione nello schema o negli schemi forniti in XmlSchemaSet.
Il CheckValidity metodo non esegue l'aumento dell'infoset. Ciò significa che le impostazioni predefinite dello schema non vengono applicate, i valori di testo non vengono convertiti in valori atomici e non sono associate nuove informazioni sul tipo agli elementi di informazioni.
Gli
xsi:schemaLocation
schemi oxsi:noNamespaceSchemaLocation
gli hint nei dati XML di vengono ignorati.Se l'oggetto è posizionato in un nodo del documento, il processo di convalida include il controllo dell'univocità XPathNavigator e dei vincoli di riferimento (
xs:ID
,xs:IDREF
,xs:key``xs:keyref
, exs:unique
). In caso contrario, questi controlli vengono omessi.Se l'oggetto XmlSchemaSet passato come parametro è
null
e l'oggetto XPathNavigator viene posizionato in un nodo elemento, le informazioni sul tipo esposte dalla SchemaInfo proprietà della SchemaType proprietà vengono usate per verificare la validità del nodo. Se l'oggetto XmlSchemaSet passato come parametro ènull
e l'oggetto XPathNavigator viene posizionato nel nodo radice, viene utilizzata la SchemaInfo proprietà dell'elemento del documento , ovvero l'elemento figlio del nodo radice. In entrambi i casi, se la SchemaType proprietà della proprietà dell'elemento SchemaInfo ènull
e l'oggetto XmlSchemaSet passato come parametro ènull
, viene generata un'eccezione InvalidOperationException perché non sono presenti informazioni sul tipo da utilizzare per eseguire la convalida.