Tools rund um XML

Tool-Radar
Kommentare

Kaum jemand mag seine XSLT-Stylesheets, XML Schemas oder gar SVGs gerne im Texteditor erstellen oder bearbeiten. Für die täglichen oder im Projekt anfallenden Programmieraufgaben steht jedoch eine immer größere Menge an – häufig sogar kostenfreien – Tools zur Verfügung. In unserer Rubrik „Tool-Radar“ wollen wir in jeder Ausgabe Schlaglichter auf ein paar der interessantesten neuen Produkte bzw. aktuelle Versionen bekannter Tools werfen.

XForms für alle

Kürzlich sind drei interessante Tools erschienen, die einen XForms-Support anbieten. Die Tools sind kostenlos und bieten eine gute Möglichkeit, sich mit XForms vertraut zu machen. Für die populäre IDE Eclipse hat IBM auf seinem Alphaworks-Server ein interessantes XForms-Plug-in unter dem Namen XML Forms Generator [1] zum Download bereit gestellt. Das Plug-in erstellt Formulare nach dem XForms-1.0-Standard des W3-Konsortiums. Es handelt sich um einen Editor für Eclipse, der minimal Eclipse 3.1 oder höher voraussetzt. Zusätzlich ist das Plug-in WTP (Web Tools Platform) erforderlich, das diverse Web-Standards implementiert (u.a. XML, DTD und Schema). Der XML Forms Generator wird über den Update Manager von Eclipse installiert. Zur Installation ist ein bestimmter Installations-URL für den Update Manager erforderlich [2].
Die Darstellung der Formulare muss mit einem der bekannten XForms-Renderer erfolgen, z.B. Chiba oder X-Smiles. XML Forms Generator unterstützt direkt den Aufruf dieser Tools. Wer eher mit JavaScript arbeitet, erhält mit dem Tool FormFaces [3] einen XForms-Support für jeden Browser. Nach den Angaben des Herstellers Progeny Systems Corporation handelt es sich um eine Cross-Browser- Lösung. FormFaces besteht aus einer Reihe von JavaScript-Dateien, von denen eine Datei im script-Element eingebunden werden muss:

<script type=“text/javascript“ src=“formfaces.js“> </script>

Das Rendern und Verarbeiten der XForms-Anweisungen erfolgt jetzt direkt über JavaScript. Serverseitige Tools wie Chiba sind für den Einsatz nicht nötig und sollten daher deaktiviert werden. Speziell für den Firefox-Browser ab Version 1.5 gibt es eine eigenständige Erweiterung, die den XForms-Support für den Browser bereitstellt [4]. Derzeit ist dies nur mit der 1.5er-Version möglich, alle früheren Firefox- und Mozilla-Fassungen können den XForms-Support nicht nutzen. Noch ist der XForms-Support für Firefox in der Beta-Phase, kann aber gut getestet werden. Auf einer speziellen Seite [4] kann eine xpi-Datei für Linux, Windows und Mac OS X heruntergeladen werden, über die die XForms getestet werden können. Die Implementierung des XForms-Standards kann man schon als sehr gut bezeichnen. Über eine weitere Seite [5] ist der aktuelle Stand der Implementierung verzeichnet und welche Aspekte des Standards noch nicht oder nur teilweise implementiert sind.

SVG

Langsam aber stetig wächst die Unterstützung von SVG in einzelnen Programmen. Der Entwickler Bernhard Haumacher hat für OpenOffice.org 2.0 einen SVG-Import-Filter programmiert [6]. Dieser wird über den Package Manager installiert. Mithilfe des Filters können SVG-Grafiken direkt in OpenOffice.org 2.0 geöffnet und dargestellt werden. Die SVG-Grafiken werden durch den Filter in das OpenDocument Format von Open- Office.org konvertiert. Dort können Sie mit OpenOffice Draw editiert werden. Der SVG-Filter kann nicht mit OpenOffice.org 1.x verwendet werden. Der Filter
setzt eine Java-Installation in der Version 5.0 voraus, mit 1.4 oder früheren Versionen kann der Filter ebenfalls nicht eingesetzt werden. Der Filter kann kostenlos heruntergeladen werden.

Firefox bietet ab Version 1.5 einen direkten SVG-Support an. Dafür ist ein SVG-Switcher [7] veröffentlicht worden. Da dieser Browser direkten SVG-Support ohne Plug-in anbietet, ist ein Switcher sinnvoll, der SVG im Browser an- und ausschaltet. Bei ausgeschaltetem SVG ist zur Darstellung ein Plug-in (z.B. von Adobe oder Corel) erforderlich. Auf diese Weise kann man seine SVG-Dateien nicht nur in Firefox prüfen, sondern auch im installierten Plug-in. Zur Installation muss eine xpi-Datei heruntergeladen werden, die für jedes Betriebssystem verwendet werden soll. Der Switcher ist kostenlos. In Indonesien ist das Unternehmen Kiyut Software beheimatet, das den SVG-Editor Sketsa [8] entwickelt. Das Tool wurde kürzlich in der Version 3.2.2 veröffentlicht. Es handelt sich um einen klassischen SVG-Editor, über den neue SVG-Grafiken erstellt oder bestehende SVG-Dateien geladen bzw. editiert werden können.

Wie bei bekannten Vektorprogrammen wird über eine grafische Oberfläche gearbeitet. Wer lieber direkten Sourcecode editieren möchte, findet in dem Tool einen Source-Editor, der über Syntaxhighlighting verfügt. Sketsa ist in Java geschrieben und benötigt minimal J2SE/JRE 1.4.2 oder höher. Der Editor ist kostenpflichtig und kostet 49 US-$. Eine Testversion kann von der Webseite des Herstellers heruntergeladen werden.

XSLT

Nach Mozilla, Firefox, Netscape und Internet Explorer hat auch Opera einen – gemeint ist ein XSLT-Prozessor. Bisher hatte sich Opera Software immer gesträubt, einen XSLT-Prozessor in einen Client einzubinden, da nach Meinung von Opera dies eher für die Serverseite vorgesehen ist. Jetzt hat Opera dem Druck nachgegeben. Mit der ersten Technology Preview der Version 9 [9] ist ein XSLT-Prozessor integriert. Dieser unterstützt XSLT 1.0, und erste Tests haben ergeben, dass er ordentlich arbeitet. Detailtests – insbesondere im Vergleich zu MSXML (Internet Explorer) und TransforMiiX (Netscape, Mozilla, Firefox) – stehen allerdings noch aus. Die Technology Preview von Opera 9 ist für Windows, Linux und Mac OS X erhältlich.

Der bekannte XSLT-Prozessor Xalan ist in der C++-Fassung erneuert worden. Aktuell liegt dieser in der Version 1.10 vor [10]. Der Prozessor unterstützt wie sein Java-Bruder XSLT und XPath in der Version 1.0. Eine Neuerung im Update ist der erwartete Support von XML 1.1 und Namensräumen in XML 1.1. Ferner wurden eine Vielzahl von Bugs entfernt. Die C++- und die Java-Fassungen liegen bei den Standards zwar gleich auf, die Java-Fassung bietet aber mehr Features. Nach wie vor gibt es für die C++-Fassung von Xalan keinen XSLT-Compiler, der als XSLTC in der Java-Fassung enthalten ist. Oleg Tkachenko hat das Tool nxslt in der Version 1.6.4 veröffentlicht [11]. Mithilfe von nxslt ist es möglich, unter dem Microsoft .NET-Framework eine XSLT-Transformation von der Eingabeaufforderung aus durchzuführen. nxslt ruft dazu die .NET-Klasse System.Xml.Xsl.XslTransform auf. Das kleine Tool nxslt wird mit drei Parametern aufgerufen: es muss die XML-Datei, dann die XSLT-Datei und zum Schluss die Ausgabedatei angegeben werden – nxslt und .NET machen den Rest. Das Tool ist in C# geschrieben und setzt eine Installation des .NET-Frameworks voraus. nxslt liegt in zwei Fassungen vor. Die Version 1.x kann nur unter .NET 1.0 und 1.1 genutzt werden, während die Version 2.0 speziell zum Ausführen unter der .NET-2.0-Umgebung vorgesehen ist.

Schema

Das Unternehmen Buldocs aus Sofia hat einen Dokumentierer für Schema-Dateien nach dem W3C Schema vorgestellt. Das Tool nennt sich xnsdoc [12] und dokumentiert den konkreten Schema-Code in einer ähnlichen Form wie die Java-Dokumentation über das Tool Javadoc. xnsdoc kann über die Kommandozeile bedient werden oder steht als Ant-Task bereit. Das Tool ist in Java geschrieben und setzt Java in der Version 1.3.1 oder höher voraus. Zusätzlich ist xnsdoc auch als Plug-in für die IDE Eclipse verfügbar. Hier können die Dokumentationen auf grafischem Wege von Eclipse aus generiert werden, indem die Schema-Datei markiert und über das Kontextmenü der Dokumentierer aufgerufen wird. xnsdoc ist ein kommerzielles Programm und Preise beginnen bei 49 US-$. Eine 30-Tage-Testversion kann beim Hersteller heruntergeladen werden.

PHP

Der italienische Programmierer Roberto Correzzola hat ein kleines Skript entwickelt, über das PHP-Arrays in XML-Dateien gespeichert und aus XML-Dateien gelesen werden können. Unter dem kryptischen Namen pXw4Pa [13] – dies steht für Poor XML Wrapper for PHP Arrays – ist die Version 0.8 erhältlich. Das Skript besteht aus zwei Funktionen. Über die Funktion pXw4Pa_read() wird eine XML-Datei eingelesen. Das Skript parst die XML-Datei nicht, daher muss sie wohlgeformt sein. pXw4Pa erwartet eine bestimmte XML-Struktur, damit ein Array erzeugt werden kann. Sie besteht aus dem Wurzelelement pXw4Pa und einem group-Element mit weiteren Kindern. Das Speichern erfolgt über die Funktion pXw4Pa_write(), die ein Array in einer entsprechenden XMLStruktur mit den genannten Elementen erzeugt. pXw4Pa benötigt minimal PHP 4.3.7 und setzt keinen XML-Parser voraus.

Aufmacherbild: satellite dish on sunset von Shutterstock / Urheberrecht: jakkapan

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -