Der Parser als Baustein

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

Wenn Sie einen XML-Prozessor implementieren, müssen Sie nicht unbedingt Parser und Handler trennen, es wird aber im Normalfall von Vorteil sein. Durch die Modularisierung wird Ihr Programm besser organisiert, und man kann zum Beispiel eher einzelne Quelltextteile testen. Die optimale Modularisierung geschieht durch Objekte, die über eigens dafür vorgesehene Kanäle kommunizieren und sich ansonsten gegenseitig in Ruhe lassen. Modularisierung erleichtert auch den Austausch einer Softwarekomponente, was bei der XML-Verarbeitung sehr wichtig sein kann.

Wir haben schon erwähnt, daß der XML-Strom eine Abstraktion ist, durch die man sich von der Datenquelle löst. Man kann sich das vorstellen wie einen Wasserhahn, den Sie irgendwo in Ihrem Garten haben und zum Gießen der Blumen oder des Rasens verwenden. Es ist letztendlich egal, wo er sich befindet, Hauptsache Sie können einen Schlauch anschließen und bekommen Wasser. Auch am Schlauch ist nichts Besonderes. Solange er kein Loch hat und lang genug ist, ist er in Ordnung. Ob er aus Plastik oder Gummi hergestellt ist, interessiert nicht, auch die Farbe ist bedeutungslos. Genauso kann man XML-Parser als Bausteine ansehen: etwas, das man sich aus dem Internet lädt, an der dafür vorgesehenen Stelle einsetzt, und es funktioniert. Der trickreiche Teil ist der korrekte Anschluß.

Um beim vorigen Beispiel zu bleiben: Interessant ist die Stelle, in die der Wasserhahn eingesetzt wird. Der Wasserhahn hat einen normierten Durchmesser. Alle anderen Wasserhähne haben denselben Durchmesser, sofern sie derselben Norm entsprechen. Für die Eventströme von XML benötigen wir also eine Standardschnittstelle. XML-Entwickler haben sich in den letzten Jahren auf SAX geeinigt. Bis vor kurzem waren die XML-Parser von Perl nicht austauschbar. Jeder Parser hatte seine eigene Schnittstelle, was den Austausch des einen gegen den anderen erschwerte. Das ändert sich aber mehr und mehr, die Entwickler greifen SAX auf und einigen sich auf Konventionen zum Übergang von Parsern auf Handler. Einige der Früchte werden wir in SAX ernten.

  

  

<< 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