XML-Module

(Auszug aus "Perl & XML" von Erik T. Ray & Jason McIntosh)

Unter XML-Modulen verstehen wir diejenigen Perl-Module im CPAN, die sich mit dem Thema XML beschäftigen. Bislang haben wir in diesem Buch nur allgemeine Perl-Erweiterungen behandelt, die für beliebige XML-Anwendungen geeignet sind. Wir haben dabei mit kleinen XML-Stücken gearbeitet, die frei von einer speziellen Bedeutung waren. Wir haben uns auf die Entscheidung konzentriert, was als nächstes zu geschehen hat. Die Beispiele dieses Buchs sahen bislang so aus: Ein XML-Parser wird erzeugt, der ein Dokument generiert, mit dessen Elementen und Attributen dann gespielt wird. Abschließend wird das Ergebnis in irgendeiner Form ausgegeben.

Die Module dieses Abschnitts sind weder Parser noch allgemeine Verarbeitungsprogramme, sondern darauf aufbauende Systeme. Sie definieren eine API, die vielleicht noch Schnittstellen zum rohen XML enthält, aber vor allem Methoden und Funktionen anbietet, die spezisch für die XML-Anwendung sind und möglicherweise gar nichts mehr von XML spüren lassen.

Wir unterscheiden bei diesen Modulen, die XML auf höherer Ebene einsetzen, drei Typen. In diesem Abschnitt werden wir je ein Beispiel für jeden Typ untersuchen. In XML::RSS werden wir solche Beispiele selbst erstellen.

Hilfsprogramme für XML -Anwendungen
Unter Hilfsprogrammen verstehen wir all die kleinen Helfer, die die tägliche Arbeit unterstützen. In der Praxis handelt es sich dabei oft nur um eine geschickte Verpakkung der rohen XML-Prozessoren, aber manchmal braucht man nicht mehr. Wenn Sie sich selbst dabei ertappen, verschiedene Programme zu erstellen, die alle ein bestimmtes XML-Dokumentformat lesen und schreiben, wird es schnell sinnvoll, gemeinsame Funktionen in ein Hilfsmodul zu exportieren und dadurch wiederverwendbar zu machen. Für den Programmierer bedeutet das die Befreiung vom konkreten Format. Das gilt sowohl für die Eingabe, wenn es um die Validierung geht, als auch für die Ausgabe, wo die Wohlgeformtheitsregeln eingehalten werden müssen.

Programmierhilfen, die XML benutzen
In dieser kleinen, aber schnell wachsenden Nische finden wir Perl-Erweiterungen, die XML einsetzen, um coole Dinge in Ihrem Programm zu treiben. Die wichtigsten Beispiele sind zur Zeit die PerlSAX2-Familie, die die wunderbare Abstraktionsschicht von DBI auf XML::SAX übertragen. Ein Beispiel eines einzelnen Moduls ist XML::Generator::DBI, das Schnittstellen zur Datenbankmanipulation schafft. Ähnliche Module gibt es auch für andere, an und für sich von XML unabhängige Datenquellen.

Komplette, auf XML aufbauende Anwendungen
Abschließend behandeln wir Software, die zwar auf XML basiert, aber die eigentliche Anwendung und das XML-Format durch so viele verschiedene Abstraktionsschichten trennt, daß letzteres klar in den Hintergrund tritt. Dabei von einer XML-Anwendung zu sprechen, mag zwar korrekt sein, wäre aber so, als würde man Microsoft Word als C-Programm bezeichnen. Zum Beispiel trifft man bei der Arbeit mit SOAP::Lite auf Dokumente, die kaum noch für Menschen lesbar sind und nur im Speicher existieren, bis sie im Internet via HTTP verschickt werden; die Rolle von XML ist bei SOAP völlig transparent.

  

  

<< zurück vor >>

 

 

 

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

Copyright © 2003 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 "Perl & XML" 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