ABAP - Schlüsselwortdokumentation →  ABAP - Referenz →  Daten- und Kommunikationsschnittstellen →  ABAP und XML →  Klassenbibliotheken für XML →  iXML-Bibliothek →  iXML-Bibliothek - Zugriff auf das DOM → 

iXML-Bibliothek - Schreibende Zugriffe auf das DOM

Die schreibend Zugriffe erlauben es, ein XML-Dokument von Grund auf im Speicher aufzubauen oder ein vorhandenes Dokument zu modifizieren. Die wesentlichen Methoden für den Aufbau eines DOM erlauben das Anlegen von Elementen und das Hinzufügen von Attributen zu Elementen. Die Methoden sind im Interface IF_IXML_DOCUMENT deklariert und werden hier kurz vorgestellt. Weitere Methoden erlauben es, Elemente aus einem DOM zu entfernen, wofür auf die Dokumentation des Interface verwiesen sei (siehe auch Beispiel zum Rendern).

Hinweise

Knoten hinzufügen

Knoten werden in der Regel als Unterknoten zu bestehenden Knoten hinzugefügt. Um ein Element zu erzeugen kann mit einer Referenzvariablen document vom Typ IF_IXML_DOCUMENT, die auf ein XML-Dokument zeigt, folgende Methode aufgerufen werden:

element = document->create_element_ns( name = ... ).

Der statische Typ der Referenzvariable element ist dann IF_IXML_ELEMENT und sie zeigt auf ein Element namens name, das noch nicht Teil der Baumstruktur ist. Um das Element in die Baumstruktur einzufügen kann folgender Aufruf verwendet werden:

parent->append_child( element ).

Dabei ist parent eine Referenzvariable, die auf ein bestehendes Knotenobjekt des XML-Dokuments zeigt. Als Einstieg in ein leeres Dokument kann für parent eine Referenzvariable document für das Dokument selbst angegeben werden.

Die mit CREATE_ELEMENT_NS erzeugten Elemente sind leer. Um Inhalt zu erzeugen kann folgende Methode verwendet werden:

DATA(text) = document->create_text( ... ).

Der statische Typ der Referenzvariable text ist dann IF_IXML_TEXT und sie zeigt auf literalen Inhalt, der noch nicht Teil der Baumstruktur ist. Dieser kann mit der Methode APPEND_CHILD in ein Element eingefügt werden.

Elemente hinzufügen

Die obigen Schritte um ein Element mit Inhalt hinzuzufügen

können auch wie folgt durch einen einzigen Methodenaufruf erledigt werden:

element = document->create_simple_element_ns(
            name   = ...
            value  = ...
            parent = ... ).

Das Element wird erzeugt, mit dem an value übergebenen Inhalt erzeugt und als Unterknoten dem an parent übergebenen Knoten angehängt. Die zuvor beschriebenen Einzelschritte werden deshalb in der Regel nur für speziellere Aufgaben benötigt.

Attribute hinzufügen

Um einen Element eines XML-Dokuments, auf das eine Referenzvariable element zeigt, ein Attribut hinzuzufügen kann folgende Methode verwendet werden:

element->set_attribute_ns( name = ... value = ... ).

Es wird ein Attribut namens name mit dem an value übergebenen Wert erzeugt.

Beispiele

Siehe: