JDOM
JDOM ist eine Java-Bibliothek für die Manipulation von XML-Daten. Sie ist eine Alternative und Ergänzung zu der offiziellen Java-API, wurde von Jason Hunter und Brett McLaughlin entwickelt und ist inzwischen eine implementierte API zur Arbeit mit XML in Java. Aus markenrechtlichen Gründen handelt es sich nicht um ein Akronym. JDOM integriert die Vorteile und APIs von SAX und DOM in einer Java-Klasse.
JDOM | |
---|---|
Basisdaten | |
Entwickler | Jason Hunter, Rolf Lear |
Aktuelle Version | 2.0.6 (15. Februar 2015) |
Betriebssystem | Cross-platform |
Programmiersprache | Java[1] |
Kategorie | XML |
Lizenz | Open Source (ähnlich der Apache-Lizenz) |
deutschsprachig | nein |
jdom.org (EN) |
Ähnlich wie beim Document Object Model (Abk. DOM) wird ein XML-Dokument als Baum im Hauptspeicher repräsentiert, jedoch wurde JDOM speziell für Java entwickelt. Daher werden Java-Klassen verwendet – beispielsweise wird bei JDOM ein XML-Knoten nicht als „node“, sondern durch eine spezifische Java-Klasse repräsentiert.
JDOM bietet die Möglichkeit, den JDOM-Baum als Textdokument („XMLOutputter“, also als XML-Dokument) auszugeben, was nicht zum SAX-Standard und bis inkl. zum Level 2 auch nicht zum DOM gehört. Des Weiteren kann der „SAXOutputter“ das Dokument in Form von SAX-Ereignissen ausgeben, wie sie beim Parsen des Dokuments durch SAX auch erzeugt werden würden oder den JDOM-Baum in einen DOM-Baum konvertieren („DOM-Outputter“).
JDOM-Klassen
- Document
Das ist das Wurzelobjekt (und somit der Einstiegspunkt zur Navigation) des JDOM-Baumes, das das Wurzelelement, den Dokumenttyp und Verarbeitungsanweisungen enthält.
- Element
Diese Klasse repräsentiert die Informationen für Elemente (beispielsweise das Elternelement („parent“), den Elementnamen („name“) und eine Liste der Attribute („attributes“)).
- Comment
Kommentare („text“) mit dem den Kommentar enthaltenen Element („parent“).
- CDATA
Compilerspezifische Daten.
- Namespace
Namespaces für Elemente und Attribute zu definieren zu können.
- DocType
Beherbergt die DocType Deklaration für den Kopf der XML Daten.
- Text
Zeichen basierender Inhalt.
Weitere Java DOM-Implementierungen
- dom4j ist eine vielseitige Programmierschnittstelle, die ein erweitertes und umfangreiches Set von Verarbeitungsfunktionen zur Verfügung stellt.
- XOM (XML Object Model) ist eine schnelle Programmierschnittstelle mit wenig Speicherbedarf.
- Apache Crimson ist ein DOM Parser der Apache Software Foundation
Siehe auch
- JAXP - Java API for XML Processing
Literatur
- Brett McLaughlin: Java & XML, O’Reilly, 2002, ISBN 3-89721-296-X.
Weblinks
- The p_15424 Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 21. September 2018).