3 XML-Editoren

Werbung
Freie XML-Parsern und XML-Editoren
Datum der Erstellung
29.07.2003
Autor
Sven Siewczynski
Inhaltsverzeichnis
1
Kriterien................................................................................................................................................................ 5
Parser ............................................................................................................................................................... 5
Editoren ........................................................................................................................................................... 5
XML-Parser .......................................................................................................................................................... 6
2.1 MSXML 4.0 ..................................................................................................................................................... 6
2.2 Xerces .............................................................................................................................................................. 8
2.3 Libxml2 .......................................................................................................................................................... 10
2.4 Expat .............................................................................................................................................................. 12
XML-Editoren .................................................................................................................................................... 13
3.1 XmEdil ........................................................................................................................................................... 13
3.2 Morphon ........................................................................................................................................................ 16
3.3 Bonfire Studio ................................................................................................................................................ 20
3.4 Cooktop ......................................................................................................................................................... 23
Bewertung ........................................................................................................................................................... 26
4.1 Parser ............................................................................................................................................................. 26
4.2 Editoren ......................................................................................................................................................... 26
Internetverzeichnis .............................................................................................................................................. 27
1.1
1.2
2
3
4
5
2
Abkürzungsverzeichnis
API
ASCII
CSS
DOM
DSSSL
DTD
ISO
SAX
UTF
W3C
XML
XPath
XPointer
XSD
XSL
Application Programming Interface
American Standard Code for Information Interchange
Cascading Style Sheet
Document Object Model
Document Style Semantics and Specification Language
Document Typ Definition
International Organization for Standardization
Simple API for XML
Unicode Transformation Format
World Wide Web Consortium
eXtensible Markup Language
Xml Path language
Xml Pointer language
Xml Schema Definition language
eXtensible Stylesheet Language
3
Einleitung
XML wird mittlerweile in vielen Softwarebereichen benutzt. Ziel der vorliegenden Recherche ist
eine Bewertung von freien XML-Parsern und -Editoren. Der Autor beschränkt sich dabei auf
Parser und Editoren, die XML-, DTD/XSD- und XSLT-Dokumente verarbeiten, einfach
benutzbar und nicht kommerziell sind.
4
1 Kriterien
1.1 Parser








push/pull-Parser (DOM/SAX-Parstechniken)
Validierung vom XML-Dokument mittels DTD/XSD-Dokument
Unterstützung von XPath/Xpointer-Techniken
stylesheet-Unterstützung (XSLT/CSS/DSSSL)
Benutzerdokumentation
Installation
Benutzbarkeit
Weiterentwicklung
1.2 Editoren

















Validierung vom XML-Dokument mittels DTD/XSD-Dokument
variierbare Farbkodierungen des Dokuments
automatische tag-Vollständigung
undo/redo
drag & drop
Baumanzeige
Detailanzeige der selektierten Komponente
browser-Vorschau
XSLT-Transformationen
XPath/XPointer-Unterstützung
Projektmanagement
Benutzerdokumentation
plug-in-Erweiterbarkeit
Druckerunterstützung
Installation
Benutzbarkeit
Weiterentwicklung
5
2 XML-Parser
2.1 MSXML 4.0
Eigenschaften






push/pull – Parser (DOM/SAX)
Validierung vom XML-Dokument mittels DTD/XSD-Dokument (standardmäßig
ausgeschaltet)
XPath/XPointer-Techniken
stylesheet-Unterstützung (XSLT)
Benutzerdokumentation in SDK-Hilfe oder auf der Webseite von Microsoft
weitere Eigenschaften
o Benutzung C/C++, Visual Basic, Javascript
o Plattform: Windows
Voraussetzung


Windowsbetriebsystem
Windows Installer
Installation

windowstypische einfache Installation
Benutzung

Programmierung über externe Tools/Editoren
Weiterentwicklung

als Standardparser für Windows wird Microsoft den Parser ständig weiterentwickeln
Links
MSXML 4.0
http://www.microsoft.com/
http://www.topxml.com/parsers/default.asp
Online-Dokumentation von Microsoft:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/htm/sdk_intro_6g53.asp
6
Bewertung
Der Parser ist im Microsoft Internet Explorer standardmäßig enthalten. Die neueste Version 4.0
bietet umfangreiche Erweiterungen. Der Zugriff auf den Parser erfolgt über das Laden der Parser
DLLs. Durch Benutzung von Sprachen wie Microsofts Javascript, Visual Basic oder C/C++ kann
auf die Parserfunktionen zugegriffen werden. Microsoft bietet Anleitungen zur Programmierung
und Benutzung.
MSXML ist ein sehr umfangreicher und mächtiger Parser und für Windowsanwendungen die
erste Wahl.
7
2.2 Xerces
Eigenschaften






pull/push-Parser (DOM, SAX)
Validierung vom XML-Dokument mittels DTD/XSD-Dokument (standardmäßig
ausgeschaltet)
KEINE XPath/XPointer-Techniken (ist im Xalan-Entwicklerpacket enthalten)
KEINE stylesheet-Unterstützung (XSLT) (ist im Xalan-Entwicklerpacket enthalten)
ausfühliche API-Benutzerdokumentation
weitere Eigenschaften
o Benutzung über Java, C++ oder Perl
o Plattform: Java, Windows, Unix
Voraussetzung

Betriebssystem mit Java-, C++- oder Perl-Programmierumgebung
Installation

Xerces mit unzip oder Winzip entpacken
Benutzung

Programmierung über externe Tools/Editoren
Weiterentwicklung


ständige Weiterentwicklungen
gute Aussichten, da viele Entwickler am Apache-Projekt arbeiten
Links
Xerces Java 2.4.0
Xerces C++ 2.3.0
Xerces Perl 1.7.0-1
http://xml.apache.org/
8
Bewertung
Xerces ist ein JAVA-basierter Parser. Aufgrund der Entwicklerplattform JAVA, ist der Parser
leicht auf jegliche Systemplattform, wo eine JAVA-Laufzeitumgebung verfügbar ist,
transferierbar. Mittels zusätzlicher JAVA-Pakete lässt sich der Parser fast beliebig erweitern, z.B.
können mit dem Xalan-Entwicklerpaket XSLT-Stylesheets verarbeiten werden. Im ApacheProjekt wird an weiteren Entwicklerpaketen gearbeitet.
Hilfe ist unter anderem in der ausführlichen API-Dokumentation, in Beispielen oder in den
Apache-Foren zu bekommen.
9
2.3 Libxml2
Eigenschaften






pull/push-Parser (DOM, SAX)
Validierung vom XML-Dokument mittels DTD/XSD-Dokument (standardmäßig
ausgeschaltet)
XPath/XPointer-Techniken
KEINE stylesheet-Unterstützung (XSLT) (ist im Libxslt-Entwicklerpacket enthalten)
ausfühliche API-Benutzerdokumentation
weitere Eigenschaften
o entwickelt fürs Gnome-Projekt
o Plattform: Unix, Windows, Mac
Voraussetzung

Betriebssystem mit C-Compiler und C-Bibliotheken
Installation


entsprechend dem Betriebsystem
entpacken mit unzip oder Winzip bzw. installieren über rpm
Benutzung

Programmierung über externe Tools/Editoren
Weiterentwicklung


ständige Weiterentwicklungen
gute Aussichten, da viele Entwickler am Gnome-Projekt arbeiten
Links
Libxml2
http://xmlsoft.org/
10
Bewertung
Libxml2 entstand aus dem GNOME-Projekt. Der Parser wird hauptsächlich auf Unix-Plattformen
benutzt, wobei es auch Portierungen auf andere Plattformen gibt. Der Parser liegt als CBibliothek vor. Der Zugriff erfolgt über Schnittstellen.
Vor der Benutzung muss der Parser erst für das Betriebssystem kompiliert werden.
Mit zusätzlichen Bibliotheken, wie Libxslt können die Parserfunktionen erweitert werden.
Zugriffsfunktionen und Erläuterungen sind in der API-Dokumentation zu finden.
11
2.4 Expat
Eigenschaften






pull/push-Parser (DOM, SAX)
KEINE Validierung vom XML-Dokument mittels DTD/XSD-Dokument
KEINE XPath/XPointer/XLink-Techniken
KEINE stylesheet-Unterstützung (XSLT)
spärliche API-Benutzerdokumentation
weitere Eigenschaften
o XML Parser Bibliothek in C geschrieben
o Encodings: UTF-8, UTF-16, ISO-8859-1, US-ASCII
o Plattform: Unix, Windows
Voraussetzung

Betriebssystem mit C-Compiler und C-Bibliotheken
Installation


Expat mit unzip oder Winzip entpacken
gegebenenfalls Quellen kompilieren
Benutzung


Programmierung über externe Tools
MakeFile
Weiterentwicklung


wird weiterentwickelt
viele Entwickler benutzen den schnellen Parser und entwickelten dazu Erweiterungen
Links
Expat 1.95.6
http://expat.sourceforge.net/
http://www.xml.com/pub/a/1999/09/expat/index.html?page=1
Bewertung
Expat ist ein einfacher in C geschriebener Parser, der Aufgrund seiner Kompaktheit sehr schnell
große XML-Dokumente parsen kann. Die Dokumentation ist allerdings etwas spärlich.
12
3 XML-Editoren
3.1 XmEdil
Eigenschaften















validiert ein XML-Dokument mittels DTD/XSD-Dokumenten
variierbare Farbkodierungen
teilautomatische tag-Vervollständigung (Tastaturkürzel)
undo/redo
drag & drop
KEINE Baumanzeige
Detailanzeige während dem Schreiben
browser-Vorschau
XSLT Transformationen (XSLT-Stysheet muß dem XML-Dokument zugewiesen werden)
XPath/XPointer-Unterstützung
Projektmanagement
ausführliche Benutzerdokumentation
KEINE plug-in Erweiterungen
Druckerunterstützung
weitere Eigenschaften
o Programmierhelfer
o beta-Version
o Sprache: englisch
o Plattform: Windows
Oberfläche

grafische Benutzeroberfläche
Voraussetzung

Windowsbetriebsystem
Installation

windowstypische einfache Installation
13
Benutzung



leichte intuitive Bedienung (englisch Kenntnisse erforderlich)
übersichtliche Menüs
vordefinierte Tasten zum schnellen Zugriff auf Menüpunkte
Benutzeroberfläche
14
Links
XmEdil 0.3.1 (beta)
http://www.xmedil.com/
Bewertung
Der Editor ist zwar noch eine Beta-Version, aber sie funktioniert sehr gut. Das Schreiben der
Dokumente erfolgt im Quellcode. Über Tastaturkürzel lassen sich einfach Elemente, Attribute
usw. in den Quellcode einfügen. Bei der Editierung von XSLT/XSD-Dokumenten werden die
möglichen tag-Elemente bzw. Attribute in extra Fenstern angezeigt und lassen sich als
Codesegmente in den Quellcode einfügen.
Durch die Erstellung von Projekten, lassen sich Dokumente leichter verwalten.
Die Hilfe zum Editor ist sehr ausführlich. Es lohnt sich ein Blick hineinzuwerfen.
15
3.2 Morphon
Eigenschaften
 validiert ein XML-Dokument mittels DTD/XSD-Dokumenten
 feste Farbkodierungen
 KEINE tag-Vervollständigung
 undo/redo
 KEIN drag & drop
 Baumanzeige
 Detailanzeige
 browser-Vorschau
 KEINE XSLT-Transformation
 XPath/XPointer-Unterstützung
 KEIN Projektmanagement
 ausführliche Benutzerdokumentation
 plug-in Erweiterungen
 Druckerunterstützung
 weitere Eigenschaften
o Javabasierter XML-Editor
o multi-platform fähig
o Tastaturbelegung veränderbar
o unterstützt Unicode 3.0
o CSS-Editor verfügbar
o verschiedene Anzeigenmodie
o Sprache: englisch, französisch, holländisch
o Plattform: JAVA
Oberfläche

grafische Benutzeroberfläche
Voraussetzung



virtuelle Java-Maschine
10 mb Festplattenspeicher
32 mb RAM
Installation



windowstypische einfache Installation
Unix-Install-BIN
Archive ohne Installationsprogramm
16
Benutzung



leichte intuitive Bedienung (englisch Kenntnisse erforderlich)
übersichtliche Java-Menüs
spartanische Anzeige beim Quellcode
Benutzeroberfläche
17
Links
Morphon 3.1.1
http://www.morphon.com/
Bewertung
Die Erstellung von Dokumenten im Morphon Editor erfolgt über Element- und
Attributeinfügungen in extra dafür vorgesehenen Fenstern. Die erstellten Komponenten werden
als Knoten in dem Dokument-Baum eingefügt und im Baumanzeigefenster sichtbar. Ebenso
erscheint die Eingabe als Ergebnis im Hauptfenster.
Über die Tasten STRG+U bzw. über den Menüpunkt "view" lässt sich die Ansicht auf den
Quellcode umstellen. In dieser Ansicht gibt es allerdings keine weitere Unterstützung für die
Editierung vom Quellcode.
Der Editor ist sehr gut für die ergebnisorientierte Entwicklung geeignet, vor allem in Verbindung
mit CSS-Stylesheets, z.B. wenn ein CSS-Stylesheet vorhanden ist und am XML-Dokument
Veränderungen bzw. neue Elemente hinzugefügt werden, so wird das Ergebnis sofort im
Hauptfenster sichtbar.
Die Hilfe zum Editor ist sehr ausführlich. Es lohnt sich ein Blick hineinzuwerfen.
18
Aufgrund der Entwicklerplattform JAVA, ist der Editor leicht auf jegliche Systemplattform, wo
eine JAVA-Laufzeitumgebung verfügbar ist, transferierbar.
19
3.3 Bonfire Studio
Eigenschaften















validiert ein XML-Dokument mittels DTD/XSD-Dokumenten
variierbare Farbkodierungen
KEINE tag-Vervollständigung
undo/redo
drag & drop
Baumanzeige
KEINE Detailanzeige
browser-Vorschau
XSLT-Transformationen
XPath/XPointer-Unterstützung
Projektmanagement
Benutzerdokumentation
KEINE plug-in-Erweiterungen
Druckerunterstützung
weitere Eigenschaften
o Sprache: englisch
o Plattform: Windows
Oberfläche

grafische Benutzeroberfläche
Voraussetzung


Windows Betriebsystem
MSXML-Parser ab 3.x
Installation

windowstypische einfache Installation
Benutzung



leichte intuitive Bedienung (englisch Kenntnisse erforderlich)
übersichtliche Menüs
schneller Wechsel der einzelnen Ansichten
20
Benutzeroberfläche
21
Links
Bonfire Studio 1.4
http://www.nzworks.com/bonfire/
Bewertung
Das Erstellen der Dokumente erfolgt im Quellcode. Der Editor bietet keine Unterstützung um
Codesegmente zu erstellen. Vorteilhaft ist der schnelle Wechsel zur guten Baumansicht oder zur
Ergebnisanzeige, sofern ein Stylesheet explizit dem XML-Dokument zugewiesen wurde.
Die Validierung erfolgt am schnellsten über Tastaturkürzel (F8), damit erspart man sich die
umständliche Klickerei auf Tools/Validate.
Projektverwaltung wird unterstützt.
Die Hilfe liefert einen Überblick über den Editor.
22
3.4 Cooktop
Eigenschaften















validiert ein XML-Dokument mittels DTD/XSD-Dokumenten
variierbare Farbkodierungen
KEINE tag-Vervollständigung
undo/redo
drag & drop
umständliche Baumanzeige
KEINE Detailanzeige
browser-Vorschau
XSLT-Transformationen und Ergebnisanzeige
XPath/XPointer-Unterstützung
KEIN Projektmanagement
wenig informative Benutzerdokumentation
fest vorgegebene plug-in-Erweiterungen
Druckerunterstützung
weitere Eigenschaften:
o frei definierbare „Code Bits“-Bibliothek (Codeblock-Bibliothek)
o tidy-Unterstützung
o Sprache: englisch
o Plattform: Windows
Oberfläche

grafische Benutzeroberfläche
Voraussetzung


Windows Betriebsystem
Installer von Microsoft ab 1.x
Installation

windowstypische einfache Installation
Benutzung



leichte intuitive Bedienung (englisch Kenntnisse erforderlich)
übersichtliche Menüs
vordefinierte Tasten zum schnellen Zugriff auf Menüpunkte
23
Benutzeroberfläche
24
Links
Cooktop 2.5 für Win2000/NT
Cooktop 2.2 für Win98
http://www.xmlcooktop.com/
Bewertung
Das Erstellen der Dokumente erfolgt im Quellcode. Über eine frei definierbare Code-Bibliothek
können schnell Codesegmente eingefügt werden.
Das Editierfenster besitzt 5 Unterfenster, zum einen Fenster für XML- und XSLT-Dokumente,
eine XPath Console und 2 Ergebnisfenster, wobei in einem Fenster nur HTML-Ergebnisausgaben
angezeigt werden.
Die Baumanzeige ist über das Tastaturkürzel STRG+3 zu erreichen. Leider bleibt die Anzeige
nicht erhalten. Die Funktion dieser Anzeige dient hauptsächlich zur Übersichtanzeige und zur
schnellen Navigation durch die Struktur.
Der Editor ist gut für die Erstellung von Stylesheets, zur schnellen Ergebniskontrolle, geeignet.
Die Hilfe ist sehr spartanisch.
25
4 Bewertung
4.1 Parser
Die Wahl des Parsers hängt von mehreren Faktoren ab unter anderem, Anwendungsbereich,
Plattform, Funktionsumfang usw.
Bei einer Windowsplattform wird hauptsächlich MSXML eingesetzt werden, bei Abneigung
gegen diesen Parser empfiehlt sich Xerces mit zusätzlichen Entwicklerpaketen.
Wird ein schneller Parser benötigt, ohne das eine Validierung erfolgen soll, dann empfiehlt sich
Expat.
4.2 Editoren
Für die Wahl des Editors trifft in etwa das gleiche zu, wie bei den Parsern. Entsprechend dem
Anwendungsbereich bzw. der Plattform oder Funktionsumfang empfiehlt sich der eine oder
andere Editor. Für die Entwicklung von XML-Dokumenten mit CSS-Stylesheets sollte Morphon
die erste Wahl sein. Für die Entwicklung von XML-Dokumenten mit XSLT-Stylesheets ist jeder
der 3 anderen Editoren brauchbar.
26
5 Internetverzeichnis
Parser










MSXML - http://www.microsoft.com oder http://www.topxml.com/parsers/default.asp
Xerces - http://xml.apache.org/
Libxml2 - http://xmlsoft.org/
Expat - http://expat.sourceforge.net/
für Delphi: XML Parser for Delphi http://www.icom-dv.de/products/xml_tools/uk_xml_parser_01.php3
MXP1 (XPP3) - http://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/
NanoXML - http://web.wanadoo.be/cyberelf/nanoxml/
Oracle’s XDK - http://otn.oracle.com/tech/xml/xdk_java/content.html
Pull Parser - http://www.xmlpull.org/
Editoren










XmEdil - http://www.xmedil.com/
Morphon - http://www.morphon.com/
Bonfire Studio - http://www.nzworks.com/bonfire/
Cooktop - http://www.xmlcooktop.com/
für Macintosh: ElfData XML Editor - http://www.elfdata.com/xmleditor/
für Linux: Xerlin - http://www.xerlin.org/
Peter’s XML Editor - http://www.iol.ie/~pxe/
eXeed - http://www.aparto-soft.com/eXeries/eXeed/index_en.html
firstobject - http://www.firstobject.com/
XRay2 - http://architag.com/xray/
27
Herunterladen