Document

(Auszug aus "XML in a Nutshell" von Elliotte Rusty Harold & W. Scott Means)

Das Interface Document repräsentiert ein vollständiges, wohlgeformtes XML-Dokument. Wenn das Document-Objekt selbst erst einmal mit Hilfe des Interfaces DOMImplementation erzeugt wurde, kann man auf beliebige Bereiche zugreifen, indem man die Methoden des Interfaces Node benutzt, von dem auch das Document-Interface abgeleitet ist.

In DOM sind Elemente und andere Knotentypen nur innerhalb eines Dokuments vorgesehen. Aus diesem Grund können sie auch nur mit Hilfe von Methoden des Document-Interfaces erzeugt werden.

 


Attribute

Die folgenden Attribute sind für das Document-Objekt definiert:

 


doctype: DocumentType

Dieses Attribut liefert eine Instanz des Interfaces DocumentType, die die Dokumenttyp-Deklaration für dieses Dokument wiedergibt. Enthält das Dokument keine DOCTYPE-Deklaration, ist dieses Property null. Vor DOM Level 3 konnte der mit einem Dokument verknüpfte DocumentType-Knoten nicht verändert und nicht direkt erzeugt werden. In Level 3-Implementierungen ist das Attribut doctype eine Abkürzung für den DocumentType-Knoten, der aktuell in die Knotenhierarchie des Dokuments eingebunden ist. Nur-lesbar.

Java-Bindung
public DocumentType getDoctype( );

Java-Beispiel

// Lies die DTD des Dokuments.
DocumentType docType = docIn.getDoctype(  );

if (docType == null) {
    System.out.println("Warnung: Es wurde keine DTD angegeben.");
}

 


documentElement: Element

Dieses Attribut enthält eine Referenz auf den Element-Node, d.h. auf das Wurzelelement des XML-Dokumentbaums. Dieses Attribut ist nur-lesbar.

Java-Bindung
public Element getDocumentElement( );

Java-Beispiel

// Finde das Wurzelelement.
Element elRoot = docIn.getDocumentElement(  );
System.out.println("Der Dokumenttyp ist '" + elRoot.getTagName(  ) + "'
                   document.");

 


documentURI: DOMString(3)

Der Ort des Dokuments oder null, wenn das Dokument mit der createDocument( )-Methode des DOMImplementation-Interfaces erzeugt wurde. Beim Setzen des Parameters erfolgt keine lexikalische Prüfung des URIs.

Java-Bindung
public String getDocumentURI( );
public void setDocumentURI(string documentURI);

 


domConfig: DOMConfiguration(3)

Liefert die Instanz des DOMConfiguration-Objekts zurück, die mit diesem Dokument verknüpft ist. DOMConfiguration steuert die Operationen der Methode normalizeDocument( ). Eine ausführliche Liste der Parameter und ihrer Auswirkungen auf das Verhalten von normalizeDocument( ) finden Sie bei der Beschreibung des DOMConfiguration-Interfaces. Nur-lesbar.

Java-Bindung
public DOMConfiguration getDomConfig( );

 


implementation: DOMImplementation

Liefert eine Referenz auf eine Instanz des Interfaces DOMImplementation, die dieses Dokument erzeugt hat. Es ist möglich, DOM-Objekte von mehreren DOM-Implementierungen (zum Beispiel unter Verwendung des SVG-Plugins von Adobe in Microsofts Internet Explorer) zu kombinieren. Nur-lesbar.

Java-Bindung
public DOMImplementation getImplementation( );

Java-Beispiel

// Ist unsere Implementierung konform mit DOM Level 1 XML?
DOMImplementation di = doc.getImplementation(  );
if (!di.hasFeature("XML", "1.0")) {
    return false;
}

 


inputEncoding: DOMString(3)

Gibt die Zeichenkodierung an, die festgestellt wurde, als das Dokument geparst wurde. Weitere Informationen zu Zeichenkodierungen finden Sie auf den Seiten unter Internationalisierung. Ist null, wenn die Kodierung nicht bekannt ist. Nur-lesbar.

Java-Bindung
public String getInputEncoding( );

 


strictErrorChecking: boolean(3)

Ist dieses Attribut auf false gesetzt, können DOM-Implementierungen Fehlerbedingungen (wie ungültige Zeichen in Identifiern) ignorieren, die normalerweise dazu führen würden, dass eine DOMException ausgelöst wird. Auch wenn die Exceptions nicht ausgelöst werden, ist das Verhalten der Implementierungen nach dem Auftreten eines Fehlers nicht definiert. Der Standardwert für dieses Attribut ist true.

Java-Bindung
public boolean getStrictErrorChecking( );
public void setStrictErrorChecking(boolean strictErrorChecking);

 


xmlEncoding: DOMString(3)

Liefert die Zeichenkodierung, die im encoding-Pseudo-Attribut der XML-Deklaration des ursprünglichen Dokuments angegeben wurde. Ist null, wenn die Kodierung nicht bekannt ist. Nur-lesbar.

Java-Bindung
public String getXmlEncoding( );

 


xmlStandalone: boolean(3)

Liefert den Wert des standalone-Pseudo-Attributs der XML-Deklaration des ursprünglichen Dokuments. Liefert false, wenn es in der Deklaration nicht angegeben wurde. Beachten Sie, dass dieser Wert den standalone-Wert der ursprünglichen Deklaration repräsentiert und auch falsch sein kann.

Java-Bindung
public boolean getXmlStandalone( );
public void setXmlStandalone(boolean xmlStandalone) throws DOMException;

 


xmlVersion: DOMString(3)

Liefert den Wert des version-Pseudo-Attributs der XML-Deklaration des Dokuments. Bei Dokumenten ohne XML-Deklaration ist dieser Wert standardmäßig "1.0". Wird dieser Wert in "1.1" geändert, beeinflusst das gemäß dem XML 1.1-Standard, wie sich Methoden (wie createElement( ), setAttribute( ) usw.) verhalten, die XML-Namen auf ungültige Zeichen prüfen. Weitere Informationen zu den Unterschieden zwischen XML 1.0 und 1.1 finden Sie unter XML-Grundlagen und der XML-Referenz.

Java-Bindung
public String getXmlVersion( );
public void setXmlVersion(string xmlVersion) throws DOMException;

 


Methoden

Die folgenden Methoden sind für Document-Objekte definiert:

 


adoptNode: adoptNode, source(3)

Ähnlich wie importNode( ) wird diese Methode verwendet, um einen DOM-Node von einer Document-Instanz in eine andere umzusiedeln. Der Quellknoten wird aus dem DOM-Baum seines Elterndokuments entfernt und vorbereitet, damit er in das Zieldokument eingefügt werden kann. Im Unterschied dazu wird bei der Methode importNode( ) nur eine Kopie des Quellknotens erstellt und das Original an seinem Ort belassen. Die folgende Tabelle erklärt das Verhalten dieser Methode bei den einzelnen Knotentypen:

Knotentyp Ergebnis
ATTRIBUTE_NODE Adoptiert das Quellattribut und alle seine Kinder. Das Attribut ownerElement wird auf null gesetzt und das specified-Flag auf true.
DOCUMENT_FRAGMENT_NODE Adoptiert den DocumentFragment-Knoten gemeinsam mit all seinen Kindern.
DOCUMENT_NODE Kann nicht adoptiert werden.
DOCUMENT_TYPE_NODE Kann nicht adoptiert werden.
ELEMENT_NODE Adoptiert das Element und die Kindknoten. Adoptiert die Attributknoten, deren specified-Flag gesetzt ist, und kann auf Basis der DTD oder des Schemas für das Zieldokument zusätzliche Attribute einfügen.
ENTITY_NODE Kann nicht adoptiert werden.
ENTITY_REFERENCE_NODE Adoptiert nur den EntityReference-Knoten. Sein Wert, wenn einer vorhanden ist, wird aus der DTD des Dokuments genommen, das die Adoption durchführt.
NOTATION_NODE Kann nicht adoptiert werden.
PROCESSING_INSTRUCTION_ NODE, TEXT_NODE, CDATA_SECTION_NODE, COMMENT_NODE Werden alle ohne Einschränkungen adoptiert.

Da der neu adoptierte Knoten nicht vom Zieldokument erzeugt wurde, kann es sein, dass die Namen der Elemente, Attribute usw. nicht der XML-Version des neuen Dokuments entsprechen (vgl. das Attribut xmlVersion). Erwägen Sie, die Methode normalizeDocument( ) einzusetzen, um sicherzustellen, dass adoptierte Knoten wohlgeformt sind.

Argument

  • source: Node

    Der zu adoptierende Knoten.

Exceptions

  • NOT_SUPPORTED_ERR

    Wird ausgelöst, wenn versucht wird, einen nicht unterstützten Knotentyp wie einen Document-Knoten zu adoptieren.

  • NO_MODIFICATION_ALLOWED_ERR

    Wird ausgelöst, wenn der Quellknoten nur-lesbar ist.

Java-Bindung
public Node adoptNode(Node source) throws DOMException;

 


createAttribute: name

Diese Methode erzeugt ein neues Objekt vom Typ Attr mit dem angegebenen Namen. Knoten vom Typ Attr sind komplexe Objekte, die selbst Kindknoten wie z.B. EntityReference- oder Text-Objekte haben können.

Argument

  • name: DOMString

    Der Name des XML-Attributs.

Rückgabewert
Das neue Attr-Objekt.

Exception

  • INVALID_CHARACTER_ERR

    Diese Exception zeigt an, dass der an die Methode createAttribute( ) übergebene Name kein gültiger XML-Name ist. 

Java-Bindung
public Attr createAttribute(String name) throws DOMException;

Java-Beispiel

// Eine Entity-Referenz wird erzeugt.
EntityReference er = doc.createEntityReference("entity_name");

// Bevor wir die Entity-Referenz explizit einbinden, müssen
// wir erst ein Attribut erzeugen.
Attr attr = doc.createAttribute("name");

// Jetzt können wir die Entity-Referenz an das Attribut anhängen.
attr.appendChild(er);

 


createAttributeNS: namespaceURI, qualifiedName(2)

Diese Methode hat denselben Zweck wie die Methode createAttribute, wird aber dann verwendet, wenn das Attribut in einem Namensraum ist.

Argumente

  • namespaceURI: DOMString

    Der mit dem Präfix des Namensraums im Parameter qualifiedName assoziierte URI.

  • qualifiedName: DOMString

    Der Name des zu instanziierenden Attributs, einschließlich des Namensraum-Präfix, das mit dem im Parameter namespaceURI angegebenen URI assoziiert wird.

Rückgabewert

Das neue Attr-Objekt wird mit den folgenden Attributwerten zurückgegeben:

Attribut Wert
Node.nodeName Der vollständig qualifizierte Name aus dem Parameter qualifiedName.
Node.namespaceURI Der URI des angegebenen Namensraums.
Node.prefix Das Präfix des Namensraums, der aus dem Parameter qualifiedName gelesen wurde.
Node.localName Der lokale Teil des vollständig qualifizierten Namens, d.h. der rechts vom :-Zeichen stehende Teil.
Attr.name Der qualifizierte Name.

Exceptions

  • INVALID_CHARACTER_ERR

    Gibt an, dass der Name im Argument createAttributeNS( ) kein gültiger XML-Name ist.

  • NAMESPACE_ERR

    Wird ausgelöst, wenn der Wert von qualifiedName nicht wohlgeformt ist oder zwar ein Präfix, aber kein namespaceURI vorhanden ist oder wenn das reservierte Präfix xml nicht korrekt benutzt wird.

Java-Bindung
public Attr createAttributeNS(String namespaceURI, String qualifiedName)
            throws DOMException;

 


createCDATASection: data

Erzeugt einen neuen CDATASection-Knoten mit dem angegebenen Text als Inhalt.

Argument

  • data: DOMString

    Der in das neue CDATASection-Objekt einzubettende Text.

Exception

  • NOT_SUPPORTED_ERR

    Ruft man diese Methode bei einem HTML-Dokument auf, wird diese Exception ausgelöst: In HTML gibt es keine CDATA-Abschnitte.

Java-Bindung
public CDATASection createCDATASection(String data) throws DOMException;

Java-Beispiel

// Wir verwenden eine CDATASection, um XML-Sonderzeichen einzubetten.
CDATASection cds = doc.createCDATASection("
<xml_beispiel>Beispieltext.</xml_beispiel>
");

 


createComment: data

Liefert einen neuen Knoten vom Typ Comment mit dem angegebenen String als Kommentartext. Details über die speziellen Restriktionen, die für Comment-Knoten gelten, finden Sie in der Objekt-Referenz zu Comment.

Argument

  • data: DOMString

    Der Text des Kommentars.

Einschränkungen bezüglich des Kommentartexts

Die XML-Spezifikation verlangt, dass nicht einmal die Zeichen -- im Text eines Kommentars erscheinen dürfen. Trotzdem gibt es einige DOM-Implementierungen, die doppelte Bindestriche im Kommentartext nicht als Syntaxfehler zurückweisen.

Java-Bindung
public Comment createComment(String data);

Java-Beispiel

// Füge Datum und Uhrzeit als Kommentar ein.
StringBuffer sb = new StringBuffer(  );
Date dtNow = new Date(  );
sb.append("\tLetzte Änderung " + dtNow.toString(  ) + '\n');
Comment cmt = doc.createComment(sb.toString(  ));

 


createDocumentFragment( )

Diese Methode erzeugt ein leeres DocumentFragment-Objekt. Die Einsatzmöglichkeiten dieses Interfaces werden unter DocumentFragment ausführlicher beschrieben.

Java-Bindung
public DocumentFragment createDocumentFragment( );

 


createElement: tagName

Erzeugt einen neuen, leeren Element-Knoten zur Verwendung im Elterndokument. Der Name des Elements wird als Argument an die Methode übergeben. Der resultierende Element-Knoten gehört zwar zum erzeugenden Document-Objekt, ist aber noch nicht Teil des Knotenbaums. Weitere Informationen über Methoden zur Manipulation der Dokument-Hierarchie finden Sie im Referenzabschnitt Node.

Argument

  • tagName: DOMString

    Der XML-Name, der bei der Erzeugung des neuen Element-Knotens verwendet wird. Dieser Name wird dem nodeName-Attribut des resultierenden Element-Knotens zugewiesen.

Rückgabewert

Das neue Element-Objekt.

Exception

  • INVALID_CHARACTER_ERR

    Gibt an, dass der an createElement( ) übergebene Name kein gültiger XML-Name ist.

Java-Bindung
public Element createElement(String tagName) throws DOMException;

Java-Beispiel

// Erzeuge das neue Element mein_tag.
Element elOut = doc.createElement("mein_tag");

 


createElementNS: namespaceURI, qualifiedName(2)

Diese Methode hat denselben Zweck wie die Methode createElement, wird aber verwendet, wenn sich das Element in einem Namensraum befindet.

Argumente

  • namespaceURI: DOMString

    Der Namensraum-URI.

  • qualifiedName: DOMString

    Der Tag-Name des zu erzeugenden Elements, einschließlich des Präfix eines Namensraums. Das Präfix muss mit dem URI des Arguments namespaceURI assoziiert sein.

Rückgabewert

Ein neu erzeugtes Element-Objekt mit den folgenden Attributwerten:

Attribut Wert
Node.nodeName Der vollständig qualifizierte Name aus dem Parameter qualifiedName.
Node.namespaceURI Der URI des Namensraums.
Node.prefix Das aus dem Parameter qualifiedName abgeleitete Präfix des Namensraums.
Node.localName Der lokale Teil des Tag-Namens, d.h. der nach dem : kommende Teil des nodeName.
Element.tagName Der voll qualifizierte Tag-Name des Elements, d.h. derselbe wie der qualifiedName.

Exceptions

  • INVALID_CHARACTER_ERR

    Wird ausgelöst, wenn der an createElementNS( ) übergebene Name kein gültiger XML-Name ist.

  • NAMESPACE_ERR

    Wird ausgelöst, wenn der Wert von qualifiedName nicht wohlgeformt ist oder zwar ein Präfix, aber kein namespaceURI vorhanden ist oder wenn das reservierte Präfix xml benutzt wird.

Java-Bindung
public Element createElementNS(String namespaceURI,
String qualifiedName)
throws DOMException;

 


createEntityReference: name

Erzeugt ein EntityReference-Objekt.

Argument

  • name: DOMString

    Der Name des zu referenzierenden XML-Entitys. Dieser Name muss an einer anderen Stelle im aktuellen XML-Dokument in einer XML-Entity-Deklaration definiert sein.

Exceptions

  • INVALID_CHARACTER_ERR

    Wird ausgelöst, wenn der an createEntityReference( ) übergebene Name kein gültiger XML-Name ist.

  • NOT_SUPPORTED_ERR

    Diese Exception wird beim Versuch ausgelöst, eine Entity-Referenz in einem HTML-Dokument zu generieren. In HTML sind keine Entity-Referenzen erlaubt.

Java-Bindung
public EntityReference createEntityReference(String name)
throws DOMException;

Java-Beispiel

// Erzeuge eine Entity-Referenz.
EntityReference er = doc.createEntityReference("entity_name");

 


createProcessingInstruction: target, data

Erzeugt einen neuen ProcessingInstruction-Knoten mit dem angegebenen target-Namen und den angegebenen data-Werten. Das spezielle Target »xml« (unabhängig von Groß- und Kleinschreibung) ist reserviert und darf deshalb nicht verwendet werden.

Argumente

  • target: DOMString

    Das Name des Targets der Verarbeitungsanweisung.

  • data: DOMString

    Die anwendungsspezifischen Daten, die an den neu geschaffenen ProcessingInstruction-Knoten übergeben werden.

Exceptions

  • INVALID_CHARACTER_ERR

    Gibt an, dass der an die Methode createProcessingInstruction übergebene Name kein gültiger XML-Name ist.

  • NOT_SUPPORTED_ERR

    Diese Exception wird beim Versuch ausgelöst, eine ProcessingInstruction in einem HTML-Dokument zu generieren. Verarbeitungsanweisungen sind in HTML-Dokumenten nicht erlaubt.

Java-Bindung
public ProcessingInstruction createProcessingInstruction(String target,
String data) throws DOMException;

Java-Beispiel

// Erzeuge eine anwendungsspezifische Verarbeitungsanweisung.
ProcessingInstruction pi = doc.createProcessingInstruction("meine_anwendung",
            "action=\"save\"");

 


createTextNode: data

Erzeugt einen neuen Text-Knoten, der den angegebenen data-String enthält.

Argument

  • data: DOMString

    Der Inhalt des zu erzeugenden Textknotens.

Java-Bindung
public Text createTextNode(String data);

Java-Beispiel

// Erzeuge einen neuen Textknoten mit Zeichendaten.
Text txtDesc = doc.createTextNode("Zeichendaten für ein neues Element.");

 


getElementById: elementID(2)

Diese Methode liefert als Ergebnis einen Element-Knoten, der ein Attribut namens ID mit dem angegebenen Wert besitzt.

Anmerkung: Attribute mit dem Namen ID darf man nicht mit Attributen vom Typ ID verwechseln. ID-Attribute sind Attribute, die mit dem ID-Attributtyp in der Dokumenttyp-Deklaration deklariert wurden. In der XML-Referenz finden Sie weitere Informationen über ID-Attribute.

Argument

  • elementID: DOMString

    Die eindeutige ID des gewünschten Elements.

Rückgabewert

Ein einzelnes Element-Objekt mit dem angegebenen ID-Attribut oder null, wenn kein entsprechendes Element gefunden wurde.

Java-Bindung
public Element getElementById(String elementId);

 


getElementsByTagName: tagName

Das Ergebnis dieser Funktion ist eine Liste von Element-Knoten aus dem Knotenbaum des aktuellen Dokuments, deren tagName-Attribut mit dem Parameter tagName übereinstimmt. Die Reihenfolge der Knoten entspricht der im Eingabedokument.

Argument

  • tagName: DOMString

    Der Tag-Name der zu suchenden Elemente. Der spezielle Name * steht für alle Tags.

Java-Bindung
public NodeList getElementsByTagName(String tagName);

Java-Beispiel

// Erstelle eine Liste aller Telefonnummern im aktuellen Dokument.
NodeList nl = doc.getElementsByTagName("telefon_nummer");

 


getElementsByTagNameNS: namespaceURI, localName(2)

Wie getElementsByTagName( ) liefert diese Methode eine Liste von Element-Knoten (ein NodeList-Objekt), die den durch namespaceURI und localName angegebenen Kriterien entsprechen. Die Ergebnisliste enthält alle Elemente, auf die der angegebene Namensraum-URI und der lokale Name passen. Die Reihenfolge entspricht der im Eingabedokument.

Argumente

  • namespaceURI: DOMString

    Der URI des Namensraums, in dem die zu suchenden Elemente liegen sollen. Der spezielle Wert * steht für beliebige Namensräume.

  • localName: DOMString

    Der lokale Name der zu suchenden Elemente. Der spezielle Wert * steht für einen beliebigen lokalen Namen.

Java-Bindung
public NodeList getElementsByTagNameNS(String namespaceURI,
String localName);

 


importNode: importedNode, deep(2)

Der Name dieser Methode ist etwas missverständlich: Sie erzeugt eine Kopie eines Node-Objekts aus einem anderen Dokument. Diese Kopie kann in den Knotenbaum des aktuellen Dokuments eingefügt werden. Die Details des Kopiervorgangs sind abhängig vom Typ des kopierten Knotens und werden in der folgenden Tabelle beschrieben.

Knotentyp Ergebnis Effekt des Flags deep
ATTRIBUTE_NODE Kopiert das Eingabeattribut und alle seine Kinder. Das Attribut ownerElement wird auf null gesetzt und das Flag specified auf true. Kein Effekt.
DOCUMENT_FRAGMENT_NODE Erzeugt einen leeren DocumentFragment-Knoten. Die Kindknoten des zu importierenden DocumentFragment-Knotens werden mitkopiert.
DOCUMENT_NODE Kann nicht importiert werden. Nicht anwendbar.
DOCUMENT_TYPE_NODE Kann nicht importiert werden. Nicht anwendbar.
ELEMENT_NODE Kopiert die Attributknoten, deren specified-Flag auf das neue Element gesetzt wurde. Die Kindknoten des zu importierenden Elements werden rekursiv mitkopiert.
ENTITY_NODE Kopiert die Attribute publicId, systemId und notationName. Die Kindknoten des zu importierenden Entity-Knotens werden rekursiv mitkopiert.
ENTITY_REFERENCE_NODE Kopiert nur den EntityReference-Knoten. Sein Wert wird der DTD des zu importierenden Dokuments entnommen, sofern ein Wert angegeben ist. Kein Effekt.
NOTATION_NODE Importiert den notation-Knoten; allerdings ist seit DOM Level 2 das Interface DocumentType nur-lesbar, d.h., der Knoten kann nicht in das Zieldokument eingefügt werden. Kein Effekt.
PROCESSING_INSTRUCTION_ NODE Kopiert die Werte von target und data. Kein Effekt.
TEXT_NODE,CDATA_SECTION_NODE, COMMENT_NODE Kopiert die Werte der Attribute data und length. Kein Effekt.

Das Ergebnis des Methodenaufrufs ist, abhängig von den angegebenen Argumenten, der neue, kopierte Knoten.

Argumente

  • importedNode: Node

    Der zu duplizierende und in das aktuelle Dokument einzubauende Knoten.

  • deep: boolean

    Gibt an, ob nur der einzelne angegebene Knoten kopiert werden soll oder auch der ganze Teilbaum mit seinen Kindern. Details entnehmen Sie der obigen Tabelle.

Exception

  • NOT_SUPPORTED_ERR

    Einige Knotentypen können nicht importiert werden, zum Beispiel ein Document-Knoten. Versucht man es trotzdem, führt das zu dieser Exception.

Java-Bindung
public Node importNode(Node importedNode, boolean deep)
throws DOMException;

 


normalizeDocument( ) (3)

Die Operation, die diese Methode durchführt, entspricht einer Laden/Speichern-Operation und liefert das Dokument in seiner »normalisierten« Form zurück. Text-Knoten werden verschmolzen, mögliche EntityReference-Knoten werden expandiert usw. Die Arten von Operationen, die während des Normalisierungsvorgangs erfolgen, werden von den Parametern im DOMConfiguration-Objekt (vgl. domConfig-Attribut) gesteuert. Eine Liste der verfügbaren Standard-Konfigurationsparameter finden Sie bei der Beschreibung des Interfaces DOMConfiguration.

Java-Bindung
public void normalizeDocument( );

 


renameNode: n, namespaceURI, qualifiedName(3)

Ermöglicht es, Knoten der Typen Element und Attr umzubenennen. Das nodeName-Attribut des Ziel-Node wird nach Möglichkeit direkt verändert. Wenn es nicht möglich ist, den Namen einfach zu ändern, wird ein neuer Knoten mit dem neuen Namen erzeugt und die Kindknoten des alten Knotens werden zum neuen Knoten verschoben. Wenn der Knoten ein Element-Knoten ist, führt eine Namensänderung dazu, dass er die Default-Attribute verliert, die dem alten Namen zugeordnet sind, und die erhält, die dem neuen Namen zugeordnet sind.

Argumente

  • n: Node

    Der Knoten, der umbenannt werden soll.

  • namespaceURI: DOMString

    Der Namensraum-URI für den umbenannten Knoten.

  • qualifiedName: DOMString

    Der neue qualifizierte Name für den Knoten.

Exceptions

  • NOT_SUPPORTED_ERR

    Wird ausgelöst, wenn der Ziel-nodeType nicht ELEMENT_NODE oder ATTRIBUTE_NODE ist oder wenn die Implementierung ein Umbenennen des documentElement nicht unterstützt.

  • INVALID_CHARACTER_ERR

    Wird ausgelöst, wenn der neue qualifizierte Name kein gültiger XML-Name gemäß dem Wert des Attributs xmlVersion ist.

  • WRONG_DOCUMENT_ERR

    Wird ausgelöst, wenn versucht wird, einen Knoten von einem anderen Dokument aus umzubenennen.

  • NAMESPACE_ERR

    Wird ausgelöst, wenn qualifiedName nicht korrekt aufgebaut ist oder ein Präfix hat, aber keinen namespaceURI, oder wenn fälschlicherweise das reservierte Namensraum-Präfix xml verwendet wird.

Java-Bindung
public Node renameNode(Node n, String namespaceURI,
String qualifiedName) throws DOMException;

  

zum Seitenanfang

<< zurück vor >>

 

 

 

Tipp der data2type-Redaktion:
Zum Thema XML bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

  


Copyright © 2005 O'Reilly Verlag GmbH & Co. KG
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XML in a Nutshell" denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

O’Reilly Verlag GmbH & Co. KG, Balthasarstraße 81, 50670 Köln, kommentar(at)oreilly.de