Convalida del linguaggio XML con XmlValidatingReader
La classe XmlValidatingReader, un'implementazione della classe XmlReader, fornisce il supporto per la convalida XML. È possibile utilizzare la classe XmlValidatingReader per convalidare documenti e frammenti XML. Questa classe implementa i vincoli di validità definiti nella raccomandazione Extensible Markup Language (XML) 1.0 del World Wide Web Consortium (W3C) relativa agli schemi DTD (Document Type Definition), la specifica dello schema MSXML (Microsoft XML Core Services) per XDR (XML-Data Reduced) e la raccomandazione XML Schema per il linguaggio XSD (XML Schema Definition).
![]() |
---|
La classe XmlValidatingReader è obsoleta in .NET Framework versione 2.0.È possibile creare un'istanza di convalida del tipo XmlReader utilizzando la classe XmlReaderSettings e il metodo Create.Per ulteriori informazioni, vedere Convalida di dati XML con XmlReader. Se fosse stata utilizzata la classe XmlValidatingReader per espandere le entità, questa funzionalità sarebbe stata aggiunta alla classe XmlTextReader. |
La proprietà XmlValidatingReader.Schemas offre al lettore l'accesso agli schemi caricati nella classe XmlSchemaCollection incorporata. Dal momento che questi schemi sono memorizzati nella cache, il visualizzatore può convalidare uno schema senza doverlo ricaricare ogni volta. L'utilizzo di schemi memorizzati nella cache migliora in modo significativo le prestazioni.
La proprietà XmlValidatingReader.XmlResolver specifica l'oggetto XmlResolver utilizzato per risolvere le entità esterne (ad esempio percorsi della DTD e dello schema). Se si dispone di un tipo XmlResolver personalizzato o si accede a una risorsa di rete che richiede credenziali, utilizzare questa proprietà per specificare quale tipo XmlResolver utilizzare. Per risolvere riferimenti esterni in cui non è specificato un tipo XmlResolver, il lettore utilizza una classe XmlUrlResolver predefinita. La classe XmlUrlResolver risolve protocolli file e HTTP.
Il tipo XmlResolver viene anche utilizzato per elaborare elementi xs:include e xs:import in XML Schema. Se gli elementi xs:include o xs:import hanno un percorso relativo, il tipo XmlValidatingReader risolve tale percorso utilizzando la proprietà XmlValidatingReader.BaseURI. Per ulteriori informazioni sul tipo XmlResolver, vedere Risoluzione delle risorse mediante XmlResolver.
In questa sezione
Tipi di convalida della proprietà XmlValidatingReader
Vengono descritte le proprietà del tipo di convalida che è possibile impostare per determinare il tipo di convalida che si verificherà.Callback del gestore dell'evento di convalida di XmlValidatingReader
Viene descritto l'uso dell'evento ValidationEventHandler per la ricezione di informazioni sugli errori di convalida.Convalida rispetto alla DTD con XmlValidatingReader
Viene descritta l'implementazione della convalida della DTD.Convalida rispetto a XDR con XmlValidatingReader
Viene descritta l'implementazione della convalida dello schema XDR.Convalida con uno schema XDR inline
Viene fornito un esempio dell'utilizzo del tipo XmlValidatingReader per una convalida rispetto allo schema XDR inline.Convalida dello schema XML (XSD) con XmlValidatingReader
Viene descritta l'implementazione della convalida di XML Schema.Convalida con uno schema XML inline (XSD)
Viene fornito un esempio dell'utilizzo del tipo XmlValidatingReader per una convalida rispetto a XML Schema inline.Convalida dello schema XML (XSD) con più schemi
Viene fornito un esempio della convalida di frammenti XML rispetto a più origini di schemi.Lettura di frammenti XML con XmlValidatingReader
Viene descritto l'uso del tipo XmlValidatingReader per la lettura di frammenti XML.
Sezioni correlate
- Lettura di XML con XmlReader
Viene descritto come la classe XmlReader fornisce un accesso non memorizzato nella cache, forward only, di sola lettura ai dati XML tramite un flusso XML.