Validierungstypen von "XmlValidatingReader"

Aktualisiert: November 2007

Die ValidationType-Eigenschaft bestimmt den Typ der vom XmlValidatingReader durchgeführten Validierung. Diese Eigenschaft muss vor dem Aufruf der Read-Methode festgelegt werden. Wenn für die Validierung externe DTDs (Document Type Definition) oder Schemata erforderlich sind, wird die XmlResolver-Eigenschaft verwendet.

Hinweis:

Die XmlValidatingReader-Klasse ist in .NET Framework Version 2.0 veraltet. Mit der XmlReaderSettings-Klasse und der Create-Methode können Sie eine XmlReader-Instanz zur Validierung erstellen. Weitere Informationen finden Sie unter Validieren von XML-Daten mit "XmlReader".

ValidationType-Enumeration

Die ValidationType-Eigenschaft kann auf einen der Werte der ValidationType-Enumeration festgelegt werden. Im folgenden Abschnitt werden die ValidationType-Werte beschrieben.

ValidationType.Auto

Dies ist der Standardwert der ValidationType-Eigenschaft. In der folgenden Tabelle sind die Validierungsregeln für den Wert Auto der ValidationType-Eigenschaft aufgeführt.

DTD oder Schema

ValidationType.Auto

Weder DTD noch Schema

Analysiert XML ohne Validierung. Es werden keine Ausnahmen ausgelöst. Es werden keine Typinformationen bereitgestellt.

DTD

Führt eine DTD-Validierung durch. Standardattribute und -Entitäten werden erweitert. Allgemeine Entitäten werden nur dann analysiert, wenn sie verwendet (erweitert) werden. Es werden keine Typinformationen bereitgestellt.

XML-Schema (Verweis oder inline)

Führt eine XSD-Validierung (XML Schema Definition Language) durch. Validiert mit dem Schema. Standardattribute werden erweitert. Es werden Typinformationen bereitgestellt.

XDR-Schema (Verweis oder inline)

Führt eine XDR-Schemavalidierung (XML-Data Reduced) durch. Validiert mit dem Schema. Standardattribute werden erweitert. Es werden Typinformationen bereitgestellt.

DTD und XML-Schema oder XDR-Schema (Verweis oder inline)

Führt entsprechend dem ersten Vorkommen des Validierungstyps eine DTD-/XML-Schema-/XDR-Validierung durch. DTD-Validierung hat immer Vorrang vor anderen Validierungstypen.

ValidationType.DTD

Wenn der Wert ValidationType.DTD angeben wurde, validiert XmlValidatingReader das Dokument entsprechend der DTD. In der folgenden Tabelle sind die Validierungsregeln für den Wert ValidationType.DTD der ValidationType-Eigenschaft aufgeführt.

DTD oder Schema

ValidationType.DTD

Weder DTD noch Schema

Gibt für das Stammelement eine No DTD found-Warnung zurück. Es werden keine Ausnahmen ausgelöst. Es werden keine Typinformationen bereitgestellt.

DTD

Führt eine DTD-Validierung durch. Standardattribute und -Entitäten werden erweitert. Allgemeine Entitäten werden nur dann analysiert, wenn sie verwendet (erweitert) werden. Es werden keine Typinformationen bereitgestellt.

XML-Schema (Verweis oder inline)

Gibt für das Stammelement eine No DTD found-Warnung zurück. Eine XmlException für gemischte Validierungstypen wird ausgelöst, wenn ein Schema gefunden wurde.

XDR-Schema (Verweis oder inline)

Gibt für das Stammelement eine No DTD found-Warnung zurück. Eine XmlException für gemischte Validierungstypen wird ausgelöst, wenn ein Schema gefunden wurde.

DTD und XML-Schema oder XDR-Schema (Verweis oder inline)

Führt eine DTD-Validierung durch. Standardattribute und -Entitäten werden erweitert.

ValidationType.Schema

Wenn der Wert ValidationType.Schema festgelegt wurde, validiert XmlValidatingReader das Dokument entsprechend dem XML-Schema. In der folgenden Tabelle sind die Validierungsregeln für den Wert ValidationType.Schema der ValidationType-Eigenschaft aufgeführt.

DTD oder Schema

ValidationType.Schema

Weder DTD noch Schema

Gibt eine No schema found-Warnung für jedes Element zurück.

DTD

Eine XmlException für gemischte Validierungstypen wird ausgelöst.

XML-Schema (Verweis oder inline)

Führt eine XML-Schemavalidierung durch. Validiert mit einem Schema. Standardattribute werden entsprechend dem Schema erweitert. Es werden Typinformationen bereitgestellt.

XDR-Schema (Verweis oder inline)

Eine XmlException für gemischte Validierungstypen wird ausgelöst.

DTD und XML-Schema oder XDR-Schema (Verweis oder inline)

Führt eine XML-Schemavalidierung durch. Standardattribute werden entsprechend dem Schema erweitert. Es werden Typinformationen bereitgestellt. Wenn eine DTD oder ein XDR-Schema gefunden wird, wird eine XmlException für gemischte Validierungstypen ausgelöst.

ValidationType.XDR

Wenn der Wert ValidationType.XDR festgelegt wurde, validiert XmlValidatingReader das Dokument entsprechend den XDR-Schemata (einschließlich Inlineschemata). In der folgenden Tabelle sind die Validierungsregeln für den Wert ValidationType.XDR der ValidationType-Eigenschaft aufgeführt.

DTD oder Schema

ValidationType.XDR

Weder DTD noch Schema

Gibt am Schluss die Warnung zurück, dass keine Validierung stattgefunden hat.

DTD

Eine XmlException für gemischte Validierungstypen wird ausgelöst.

XML-Schema (Verweis oder inline)

Eine XmlException für gemischte Validierungstypen wird ausgelöst.

XDR-Schema (Verweis oder inline)

Führt eine XDR-Validierung durch. Validiert mit einem Schema. Standardattribute werden entsprechend dem Schema erweitert. Es werden Typinformationen bereitgestellt.

DTD und XML-Schema oder XDR-Schema (Verweis oder inline)

Führt eine XDR-Validierung durch. Standardattribute werden entsprechend dem Schema erweitert. Es werden Typinformationen bereitgestellt. Wenn eine DTD oder ein XML-Schema gefunden wird, wird eine XmlException für gemischte Validierungstypen ausgelöst.

ValidationType.None

Der Wert ValidationType.None generiert einen nicht validierenden Parser gemäß der Empfehlung "World Wide Web Consortium (W3C) Extensible Markup Language (XML) 1.0". Standardattribute werden wiedergegeben, und allgemeine Entitäten können aufgelöst werden. Es werden keine Validierungsfehler gemeldet. In der folgenden Tabelle sind die Validierungsregeln für den Wert ValidationType.None der ValidationType-Eigenschaft aufgeführt.

DTD oder Schema

ValidationType.None

Weder DTD noch Schema

Analysiert XML ohne Validierung. Es werden keine Ausnahmen ausgelöst. Es werden keine Typinformationen bereitgestellt.

DTD

Es wird ein zu XML 1.0 kompatibler nicht validierender Parser generiert. Es wird keine DTD-Validierung durchgeführt. Standardattribute und -Entitäten werden entsprechend der DTD erweitert. Es werden keine Typinformationen bereitgestellt.

XML-Schema (Verweis oder inline)

Analysiert XML ohne Validierung. Es werden keine Ausnahmen ausgelöst. Standardattribute werden nicht entsprechend dem Schema erweitert. Es werden keine Typinformationen bereitgestellt.

XDR-Schema (Verweis oder inline)

Analysiert XML ohne Validierung. Es werden keine Ausnahmen ausgelöst. Standardattribute werden nicht entsprechend dem Schema erweitert. Es werden keine Typinformationen bereitgestellt.

DTD und XML-Schema oder XDR-Schema (Verweis oder inline)

Es wird ein zu XML 1.0 kompatibler nicht validierender Parser generiert. Es wird keine DTD-Validierung durchgeführt. Standardattribute und -Entitäten werden entsprechend der DTD erweitert. Es werden keine Typinformationen bereitgestellt.

Der XmlValidatingReader löst eine InvalidOperationException aus, wenn die ValidationType-Eigenschaft nach dem ersten Aufruf der Read-Methode festgelegt wird.

Siehe auch

Konzepte

Lesen von XML mit dem "XmlReader"

Weitere Ressourcen

Verwenden der "XmlReader"-Klasse