Übersicht über das XML-Schemaobjektmodell (SOM)

Aktualisiert: November 2007

Das SOM (Schemaobjektmodell) in Microsoft .NET Framework ist eine umfangreiche API, mit der Sie Schemata programmgesteuert erstellen, bearbeiten und validieren können. Das SOM arbeitet mit XML-Schemadokumenten auf ähnliche Weise, wie das DOM (Document Object Model) mit XML-Dokumenten arbeitet. XML-Schemadokumente sind gültige XML-Dateien, die sobald sie in das SOM geladen werden, eine Bedeutung zur Struktur und Gültigkeit von anderen XML-Dokumenten tragen, die dem Schema entsprechen.

Ein Schema ist ein XML-Dokument, dass eine Klasse von XML-Dokumenten definiert, indem die Struktur oder das Modell von XML-Dokumenten für ein bestimmtes Schema angegeben wird. Ein Schema gibt die Einschränkungen des Inhalts der XML-Dokumente an und beschreibt das Vokabular (Regeln oder Grammatik), dem kompatible XML-Dokumente folgen müssen, um für dieses bestimmte Schema gültig zu sein. Die Validierung eines XML-Dokuments ist der Vorgang, durch den sichergestellt wird, dass das Dokument der vom Schema angegebenen Grammatik entspricht.

In .NET Framework bietet Ihnen die SOM API die folgenden Möglichkeiten zum Erstellen, Bearbeiten und Validieren von Schemata.

  • Laden und Speichern gültiger Schemata in und aus Dateien.

  • Erstellen von speicherinternen Schemata mithilfe stark typisierter Klassen.

  • Interagieren mit der XmlSchemaSet-Klasse zum Zwischenspeichern, Kompilieren und Abrufen von Schemata.

  • Interagieren mit der Create-Methode der XmlReader-Klasse zum Validieren von XML-Instanzdokumenten anhand von Schemata.

  • Erstellen von Editoren zum Erstellen und Verwalten von Schemata.

  • Dynamisches Bearbeiten eines Schemas, das zur Verwendung beim Validieren eines XML-Instanzdokuments kompiliert und gespeichert werden kann.

Das Schemaobjektmodell (SOM)

Das SOM besteht aus zahlreichen Klassen im System.Xml.Schema-Namespace, die den Elementen in einem XML-Schema entsprechen. Das <xsd:schema>...</xsd:schema>-Element wird beispielsweise der System.Xml.Schema.XmlSchema-Klasse zugeordnet, und alle Informationen, die in einem <xsd:schema/>-Element enthalten sein können, können mit der XmlSchema-Klasse dargestellt werden. Similarly, the <xsd:element>...</xsd:element> and <xsd:attribute>...</xsd:attribute> elements map to the System.Xml.Schema.XmlSchemaElement and System.Xml.Schema.XmlSchemaAttribute classes respectively.Diese Zuordnung wird für alle Elemente eines XML-Schemas vorgenommen, wodurch ein XML-Schemaobjektmodell im System.Xml.Schema-Namespace erstellt wird. Dies wird im folgenden Diagramm veranschaulicht.

System.Xml.Schema-Objektmodell

Weitere Informationen zu den einzelnen Klassen im System.Xml.Schema-Namespace finden Sie in der Referenzdokumentation zum System.Xml.Schema-Namespace in der .NET Framework-Klassenbibliothek.

Siehe auch

Konzepte

Lesen und Schreiben von XML-Schemata

Erstellen von XML-Schemata

Durchlaufen von XML-Schemata

Bearbeiten von XML-Schemata

Einfügen oder Importieren von XML-Schemata

"XmlSchemaSet" zur Kompilierung von Schemata

Post-Schema-Compilation Infoset