20.12.2 | Die wichtigsten DOM-Interfaces |
In diesem Abschnitt werden die wichtigsten DOM-Schnittstellen kurz vorgestellt. Ausführlichere Beschreibungen können der Referenz entnommen werden.
Node ist das Basis-Interface von DOM. Es repräsentiert einen allgemeinen Knoten im Parse-Baum und definiert im Wesentlichen Methoden zur Navigation im Baum. Weiterhin sind dort Methoden zum Einfügen und Löschen von Knoten sowie zum Ändern der Daten eines Knotens vereinbart. Darüber hinaus definiert Node eine Reihe von Konstanten für die verschiedenen Knotentypen des Parse-Baums (z. B. ELEMENT_NODE für einen Elementknoten oder COMMENT_NODE für einen XML-Kommentar). Die meisten der anderen DOM-Interfaces sind von Node abgeleitet.
Die wichtigsten Methoden von Node sind:
- short getNodeType()
Liefert den Typ des Knotens zurück. Rückgabewert ist eine der erwähnten Konstanten.- Node getParentNode()
Liefert den Vaterknoten zurück.- Node getNextSibling()
Liefert den in der Dokumentenreihenfolge nächsten Geschwisterknoten zurück oder null, falls es keinen weiteren Geschwisterknoten mehr gibt.- Node getFirstChild()
Liefert den ersten Tochterknoten zurück oder null, falls der Knoten keine Tochterknoten hat.- NodeList getChildNodes()
Liefert eine NodeList, die alle Tochterknoten enthält. Falls der Knoten keine Tochterknoten hat, ist die Liste leer.
Element repräsentiert einen Elementknoten und dürfte damit wohl das am häufigsten verwendete Interface von DOM sein.
Die wichtigsten Methoden sind:
- String getTagName()
Liefert den Namen des Elements zurück, das dieser Elementknoten repräsentiert.- String getAttribute(String name)
Liefert den Wert des durch name bezeichneten Attributs zurück.- NodeList getElementsByTagName(String name)
Liefert eine NodeList zurück, die alle Elementknoten enthält, die rekursiv unter diesen Knoten liegen und den Tag-Namen name haben. Gibt es keine solchen Knoten, ist die Liste leer.
Diese Schnittstelle repräsentiert ein einzelnes Attribut eines Elementknotens. Die wichtigsten Methoden sind:
- String getName()
Liefert den Namen des repräsentierten Attributs zurück.- String getValue()
Liefert den Wert des repräsentierten Attributs zurück.- boolean getSpecified()
Liefert true, falls der Wert des Attributs explizit im Dokument angegeben wurde, oder false, wenn nicht. Letzteres kann nur bei Attributen der Fall sein, die in der DTD als #IMPLIED oder #FIXED vereinbart sind. Es ist zu beachten, dass ein im Dokument spezifiziertes Attribut trotzdem leer sein kann.
Text repräsentiert einen Textknoten. Textknoten enthalten die Zeichendaten von Elementen, deren Inhalt CDATA oder gemischter Inhalt ist. Die wichtigsten Methoden sind:Es ist zu beachten, dass CDATA-Attribute keine Textknoten erzeugen. Attributwerte werden grundsätzlich über die Methode getValue() von Attr abgerufen.
- String getData()
Liefert den Text zurück.- int getLength()
Liefert die Länge des Texts zurück.