www.xml-xslt.de


Startseite

Das Buch

Auszeichnungssprachen
Die XML Familie
XML
XSL/XSLT
CSS
XHTML und HTML5
Internationalisierung
Werkzeuge

XML-Dokument

Struktur: dtd

Retrieval: XSLT

2.7    Werkzeuge

Für die Bearbeitung von XML- und XSLT-Dokumenten sind verschiedene Werkzeuge erforderlich. Je nach Aufgabenstellung und möglichem finanziellen Einsatz sind verschie-dene Lösungen möglich.

    Für die Produktion von XML-Daten ist ein unicodefähiger Editor (s.o.) zu empfehlen. Bereits einige Standardeditoren neuerer, bekannter Betriebssysteme sind unicodefähig. Kommerzielle Editoren sind ebenfalls idR. in der Lage, Texte in Unicode zu kodieren.

    Für die Konvertierung von z.B. ASCII- oder ISO-8859-1-Dokumenten nach Unicode gibt es kommandozeilenorientierte Tools. Ebenso für die Transformation von XML-Dokumenten anhand von XSLT-Stylesheets. Auch die Überprüfung von XML-Dokumenten im Verhältnis zu Regeln einer XML-Anwendung ist durch kommandobasier-te Programme möglich. Sofern nicht aus Gründen des Betriebssystems erforderlich, kann die Arbeit durch graphische Programme leichter abgewickelt werden. Die kommandoba-sierten Tools stammen dagegen idR. aus der ersten Generation der XML-Software. Im Serverbetrieb und bei der Programmierung kann dagegen auf diese Werkzeuge nicht verzichtet werden.

    XML-Dateien werden von sog. Parsern gelesen und in ihrer Struktur erfasst. Parser können kommandobasierte Tools sein. Sie liegen aber auch als nicht direkt sichtbarer Bereich von Editoren oder auch gängigen Internetbroswern vor. So liest ein Internetbrowser, der HTML versteht, das HTML-Dokument mit einem solchen Parser.

    Von den verschiedenen Elementen eines XML-Dokuments (siehe folgende Kapitel) wird dabei zwischen Daten unterschieden, die der Parser liest und gemäß den Regeln von XML verarbeitet und solchen, die der Parser nur an die folgende Software weiterreicht.

    XML-Dokumentteile, die der Parser bearbeitet ist (zur Terminologie und zum Inhalt der Terminologie mehr in den folgenden Kapiteln):

  • Markup (Elemente, Attribute, Entitätsreferenzen)
  • Zeichendaten


XML-Dokumentteile, die der Parser nicht liest und idR. an die folgende Software weiter-gibt:

  • CDATA-Abschnitte
  • nichtgeparste Entitäten
  • Kommentare
  • Verarbeitungsanweisungen


Als Anwender besteht idR. kein direkter Zugang zum Parser. Lediglich über Program-miersprachen, die Parser nutzen, kann das API (Programmierschnittstelle) des Parsers angesprochen werden. Beispiele sind hier Perl, PHP, Java, JavaScript uam.

    Für eine einfachere und übersichtlichere Arbeit mit XML-Daten ist ein spezieller XML-Editor zu empfehlen, der neben der Zeichensatzkodierung weitere wichtige XML-Features mit enthält. Ein besonders empfehlenswertes Produkt ist der XML-SPY von al-tova (www.altova.com). Der Editor bietet Überprüfungen gemäß der entsprechenden Re-geln von XML und XSLT an. Zudem hat er verschiedene Darstellungsweisen und zahlrei-che weitere Features. Neue Programmversionen werden laufend in Angleichung an die Entwicklung der Standards bei dem w3-Consortium herausgegeben. Eine Evaluations-version (30 Tage) ist erhältlich.

    Für die Transformierung von XML-Dateien mit XSLT ist als kommandobasiertes Tool SAXON (http://users.iclway.co.uk/mhkay/saxon/) von Michael Kay zu empfehlen. Er ist nicht nur ein hervorragender Kenner von XSLT, sondern hat mit SAXON auch ein einfa-ches, stabiles und exaktes Konvertierungstool erstellt. Mit diesem Werkzeug lassen sich die Ergebnisse eines XSLT-Dokuments an der Kommandozeile ausgeben oder sie kön-nen in eine (z.B. HTML-) Datei umgeleitet werden. Zudem hat dieses Tool für den Exper-tengebrauch noch ein API.

    Die Publizierung von XML-Daten über das Web ist im XML-Format mit einem Webser-ver problemlos möglich. Es fällt hier lediglich - falls nicht schon vorhanden - die Einrich-tung eines speziellen Dateientyps (mime-type) für den Webserver an. Diese Änderung kann nur von Benutzern mit Administratorrechten durchgeführt werden. XML-Dateien werden dann einfach an den Benutzer über das Internet ausgeliefert. Die Software (Browser) auf der Benutzerseite entscheidet dann, ob der Benutzer die XML-Dateien verwerten kann.

    Wenn an die XML-Datei XSLT-Stylesheets oder CSS-Stylesheets angebunden sind, werden diese ebenfalls über das Internet an den Benutzer weitergeleitet, sofern die Be-nutzersoftware (Browser) dies unterstützt. Der entscheidende Nachteil dieser Konstellati-on liegt in der Tatsache, dass alle Dateien, also auch die XML-Quelldatei an den Benut-zer ausgehändigt werden. Sind Daten in dieser Datei enthalten, die dem Benutzer auf Grund der Transformation durch das XSLT-Stylesheet nicht zugänglich gemacht werden sollten, kann der Benutzer diese Daten eben doch im Quelltext der XML-Datei lesen. Zu-dem ist dieser Weg extrem von der Benutzersoftware abhängig.
 

   Besser geeignet im Webbetrieb ist für ein einfaches Publishing von XML-Dateien die Transformation bereits auf dem Webserver. Der Benutzer erhält dann nur die Daten, die im XSLT-Stylesheet definiert sind und dazu in einem Format (HTML), das Internetbrow-ser ohne Probleme umsetzen können. Erforderlich hierfür sind auf der Serverseite folgende Teile:

  • XML-Parser (liest XML - Dateien) - z.B. expat
  • XSLT-Prozessor (setzt XSLT - Stylesheet um) - z.B. SAXON oder Sablotron
  • Programmiersprache, die die beiden vorgenannten kontrollieren kann und die mit dem Webserver verbunden ist. - z.B. PHP oder Perl
  • Webseversoftware - z.B. Apache


Für diese Art der Konfiguration sind idR. Administratorrechte auf dem entsprechenden Rechner erforderlich. - Viele Programmiersprachen wie PHP, Perl oder Java bieten dar-über hinaus eigene Wege zur Transformierung, zum Lesen (Parsen) und zur Bearbeitung von XML/XSLT-Dokumenten an.
Erwähnenswert sind auch die vielfältigen Initiativen der Apache Foundation unter xml.apache.org, die verschiedene “fertige” XML-Applicationserver zur Publizierung von XML-Daten im Internet anbieten. Auch hier sind Administratorrechte und meist tiefgrei-fende System- und Programmierkenntnisse erforderlich, um ein funktionsfähiges System aufzusetzen.

    Hersteller klassischer (relationaler) Datenbanken haben sich ebenfalls teilweise auf den XML-Markt begeben; die entsprechende Lösungen sind aber softwarespezifisch. Schließlich bestehen auch einige native XML-Datenbanken, die auf der Basis von XML entwickelt wurden und diesen Gedankengang sehr weit implementieren. Vor allem Tamino (www.softwareag.de) nimmt hier eine bedeutende Rolle ein. Im Segment von Open-Source, Shareware und Freeware haben sich vor allem das Umfeld von Apache (xml.apache.org) und hier Xindice (xml.apache.org/xindice/) einen Namen als konkur-renzfähige und stabile Produkte gemacht.


 
 
 
 
 
 
 
 
 
 

Das XML/XSLT-Seminar
(zur Zeit als Buch nicht lieferbar)