Freigeben über


Übersicht über das Schemaobjektmodell

Das Schemaobjektmodell (SOM) stellt eine Reihe von Klassen im System.Xml.Schema-Namespace zur Verfügung, die in vollem Maße der XML-Schemaempfehlung des W3C (World Wide Web Consortium) entspricht. Diese Klassen eröffnen Ihnen die Möglichkeit, ein Schema aus einer Datei auszulesen oder programmgesteuert im Speicher ein Schema zu erstellen, das kompiliert und überprüft oder in eine Datei geschrieben werden kann.

Das SOM stellt folgende Funktionen bereit:

  • Laden und Speichern von gültigen XSD (XML Schema Definition)-Schemas aus bzw. in Dateien.
  • Einfaches Erstellen von Schemas im Speicher mit Hilfe von Klassen mit starker Typbindung.
  • Ablegen von Schemas im Cache und Abrufen dieser Schemas in Zusammenarbeit mit der XmlSchemaCollection-Klasse.
  • Überprüfen der Schemaentsprechung von XML-Instanzdokumenten in Zusammenarbeit mit der XmlValidatingReader-Klasse (über die XmlSchemaCollection-Klasse).
  • Möglichkeit für Toolentwickler, Editoren zwecks Erstellung und Wartung von Schemas zu erstellen.
  • Dynamisches Bearbeiten eines Schemas, das zur Verwendung beim Überprüfen von XML-Instanzdokumenten kompiliert und gespeichert werden kann.

Die Klassen im System.Xml.Schema-Namespace ergänzen die vom XmlValidatingReader während des Analysevorgangs vorgenommene Überprüfung.

Die XmlSchema-Klasse verwendet bei der programmgesteuerten Erstellung eines SOM die Klassen aus dem System.Xml.Schema-Namespace. Das SOM entspricht den Regeln für das Schreiben wohlgeformter XML-Dokumente, die in der Empfehlung des W3C für XML (Extensible Markup Language) 1.0 festgelegt wurden. Das SOM bearbeitet XSD-Dokumente auf ähnliche Weise wie das DOM (Document Object Model) XML-Dokumente bearbeitet.

Die XmlSchema-Klasse überprüft XML-Schemas und erstellt die Überprüfungsinformationen neu; das Ergebnis ist das für das Schema zutreffende Post-Schema-Validation Infoset.

Sie können jedes beliebige Schema, das programmgesteuert erstellt wurde, mit Hilfe der in der XmlSchema-Klasse enthaltenen Compile-Methode überprüfen. Mit der Compile-Methode wird festgestellt, ob ein Schema semantisch korrekt ist. Beispielsweise überprüft die Compile-Methode, ob die Struktur eines XML-Schemas in Ordnung ist, ob die Beschränkungen ordnungsgemäß angewandt und die Typen richtig abgeleitet wurden.

Während des Überprüfungsvorgangs wird ein Überprüfungsrückruf verwendet, sobald der Parser eine Warnung oder einen Fehler produziert. Der ValidationEventHandler für die Compile-Methode wird zur Überprüfung der semantischen Korrektheit eines XML-Schemas verwendet.

Über das Erstellen von Schemas hinaus können Sie diese auch mit Hilfe der XmlSchema.Read-Methode aus einer Datei heraus laden. Der ValidationEventHandler wird immer dann aufgerufen, wenn bei der Überprüfung auf syntaktische und semantische Korrektheit mit der XmlSchema.Read-Methode ein Fehler auftritt. Weitere Informationen dazu finden Sie unter Ereignishandlerrückruf bei der XmlValidatingReader-Gültigkeitsprüfung.

SOM-Hierarchie

Das folgende Diagramm stellt die Klassenhierarchie des Schemaobjektmodells (SOM) dar.

SOM-Klassenhierarchie

Siehe auch

XML-Schemaobjektmodell (SOM) | XML-Schemareferenz (XSD) | Gültigkeitsprüfung von XML mit Schemas