XML DOM (Document Object Model) wird zum Zugreifen auf und Aktualisieren von
Inhalt, Stil und Struktur von XML-Dokumenten über eine programmatische
Schnittstelle verwendet. Diese Schnittstelle hat die Form eines Objektmodells mit Objekten,
Eigenschaften, Methoden und Ereignissen, mit deren Hilfe die
Komponenten eines XML-Dokuments dargestellt und bearbeitet werden können. DOM speichert die Daten
eines XML-Dokuments in einer hierarchischen Baumstruktur, in der die Struktur des Dokuments nachgeahmt
wird.
Mithilfe von DOM kann auf eine beliebige Komponente eines XML-Dokuments zugegriffen werden,
einschließlich der Elemente, Attribute, Verarbeitungsanweisungen, Kommentare und
Entitätsdeklarationen. Jedes beliebige XML-Dokument kann in das DOM geladen werden. In diesem Fall wird es von Anfang bis Ende gelesen und als logisches Modell von Knoten im DOM gespeichert.
Mithilfe der DOM-Programmierschnittstelle können Anwendungen die Baumstruktur traversieren
und seine Knoten bearbeiten. Jeder Knoten ist als spezifischer Knotentyp gemäß den aufgelisteten XML DOM-Konstanten definiert, mit deren Hilfe zudem gültige übergeordnete und untergeordnete Knoten für jeden Knotentyp definiert werden. Bei den meisten XML-Dokumenten werden die Knotentypen Element, Attribut und Text am häufigsten verwendet. Attribute nehmen eine besondere Stellung im Objektmodell ein, da sie nicht als untergeordnete Knoten eines übergeordneten Knotens gelten. Stattdessen werden sie als Eigenschaften von Elementen behandelt.
In der folgenden Tabelle sind einige DOM-Objekte aufgeführt, die in einem XML-Dokument verwendet werden können. Zudem sind die XML-Knotentypen genannt, die diese DOM-Objekte darstellen.
| DOM-Objekt | XML-Knotentyp |
| XMLDOMDocument | Stellt das XML-Dokument
als Ganzes dar. Dieses Objekt stellt Eigenschaften und Methoden bereit, mit deren Hilfe Sie
den Inhalt und die Struktur eines XML-Dokuments durchsuchen, abfragen und ändern können. |
| XMLDOMNode | Stellt einen einzelnen Knoten in der
Dokumentstruktur dar. Dieses Objekt wird als Basisobjekt für den Datenzugriff in XML DOM
verwendet. Es bietet Unterstützung für Datentypen, Namespaces und XML-Schemas. |
| XMLDOMNodeList | Stellt eine Auflistung von Knoten dar.
Dieses Objekt ermöglicht die Iteration und indizierte Zugriffsoperationen in der Liveauflistung
von IXMLDOMNode. |
| XMLDOMElement | Stellt ein Element des
XML-Dokuments dar. |
| XMLDOMAttribute | Stellt ein Attribut des
XML-Dokuments dar. |