Übersicht zu Python & XML

(Auszug aus "Python & XML" von Christopher A. Jones & Fred L. Drake, Jr.)

Dieses Buch ist das Ergebnis der Zusammenarbeit zweier Autoren, die sich aus sehr verschiedenen Gründen für das Thema interessieren. Wir hoffen, daß Sie verstehen werden, was jeder von uns zu diesem Buch beiträgt, und nicht zuletzt auch, dass es ein wenig unterhaltsam sein wird.

Chris Jones hat vor einigen Jahren angefangen, mit XML zu arbeiten, während er Python erst seit kurzem verwendet. Er benutzte XML erstmals 1997 – zunächst als Berater in der Gegend um Seattle herum – als zentrales Datenformat für Website-Inhalte in einem selbstgebauten Publishing-System. Aber zum begeisterten XML-Anhänger wurde er, als er eine Open Source-Engine als Schlüsselkomponente für die Firma Planet 7 Technologies entwickelte. Als Berater benutzt er XML weiterhin fast täglich für alles – von Konfigurationsdateien bis hin zu Dokumentformaten.

Chris begann sich oberflächlich mit Python zu befassen, weil es ihm eine saubere, objektorientierte Perl-Alternative zu sein schien. Als langjähriger Unix-Benutzer (der aber in Seattle oft mit Windows arbeitet) wurde er allmählich mit Skriptsprachen vertraut, die dem Entwickler den vollen Zugriff auf die Unix-API bieten. Nach jahrelanger Webentwicklung, bei der er viel zuviel Java und ASP einsetzte, fand er mit Python eine erfrischende Möglichkeit, an Objektorientierung festzuhalten, ohne auf Unix-Sockets und -Threads verzichten zu müssen – und das alles verbunden mit der Bequemlichkeit einer Skriptsprache.

Python und XML stellt eine sehr mächtige Kombination für den Entwickler dar. XML ist eine mächtige Technologie und verlangt vom Programmierer den Umgang mit Objekten, Schnittstellen (Interfaces) und Zeichenketten (Strings). Das gilt ebenso für Python, und daher gibt es einen hervorragenden Gefährten für die Entwicklung mit XML ab. Die Zahl von XML-Werkzeugen für Python steigt ständig, und Chris kann eine XML-Lösung in Python wesentlich schneller erstellen als in Java oder C++. Natürlich hilft Pythons Plattformunabhängigkeit dabei, unsere Arbeit konsistent über Systemgrenzen hinweg benutzbar zu halten, ob wir nun unter Windows, Linux oder einer Unix-Variante entwickeln. Eine Kombination davon erscheint uns beiden besonders mächtig zu sein.

Fred Drake kam aus einer anderen Richtung zu Python und XML, und zwar zuerst zu Python und dann zu XML. Er entdeckte Python, als er noch an der Universität war und dort mit einer Anzahl von Programmiersprachen experimentierte. Nachdem er in Python eine exzellente Sprache erkannte, mit der man schnell entwickeln konnte, überzeugte er seine Betreuer davon, daß er seine Abschlußarbeit mit Python schreiben konnte. Während er am Projekt arbeitete, gewann er zunehmendes Interesse an der Python-Gemeinde. Dann machte er seine ersten Beiträge zu Pythons Standardbibliothek und wurde dadurch von einer Gruppe von Python-Programmierern wahrgenommen, die in einer Forschungsabteilung des CNRI an Projekten über verteilte Systeme arbeiteten. Die Gruppe wurde von Guido van Rossum geleitet, dem Erfinder von Python. Fred trat dem Team bei und lernte mehr über verteilte Systeme und darüber, Systeme zusammenzukitten, als er je für möglich gehalten hätte, und war davon begeistert.

Noch an der Uni schlug Fred vor, Pythons Dokumentation in eine strukturiertere Sprache namens SGML zu konvertieren. Nach einigen Jahren beim CNRI begann er, genau das zu machen, wodurch er sich sehr viel tiefer in die Dokumentation hineinknien konnte. Als die Akzeptanz von XML wuchs, änderte sich die Migration nach SGML schließlich zu einer nach XML. Obwohl dieses Ziel noch nicht erreicht wurde (er arbeitet noch daran), hat Fred die Art, in der die Dokumentation gewartet wird, derart substantiell verändert, dass sie nun eine der strukturiertesten Anwendungen des von Donald Knuth und Leslie Lamport entwickelten Satz- und Auszeichnungssystems LaTeX ist.

Mit der Zeit konzentrierte sich das Team am CNRI zunehmend auf die Entwicklung von Python und beschloß, die PythonLabs zu gründen. Fred beteiligte sich weiter aktiv an XML-Initiativen im Umfeld von Python und drängte darauf, XML-Unterstützung in die Standardbibliothek aufzunehmen. Als dies erreicht war, konzentrierte er sich wieder auf die Aufgabe der Migration der Python-Dokumentation zu XML und hofft, dieses Projekt bald abzuschließen.

Zielgruppe

Diese Seiten richten sich an alle, die lernen möchten, wie man Python benutzt, um XML-Anwendungen zu erstellen. Der Großteil des Materials ist für Programmierer gedacht, die daran interessiert sind, XML als Datenaustauschformat oder als transformierbares Format für Webinhalte zu benutzen, aber die erste Hälfte dieser Referenz ist auch für jene von Nutzen, die allgemein an dokumentorientierten Anwendungen Interesse haben.

Wir setzen nicht voraus, dass Sie irgendetwas über XML wissen, aber wir nehmen an, daß Sie sich ausreichend mit Python beschäftigt haben, um normalen Python-Code lesen zu können. Sie müssen jedoch kein Python-Guru sein! Wenn Sie Python nicht wenigstens in seinen Grundzügen kennen, konsultieren Sie bitte eines der vielen guten Einführungsbücher wie z. B. Einführung in Python von Mark Lutz und David Ascher (O’Reilly, 1999). In den Abschnitten, in denen Webanwendungen entwickelt werden, ist es hilfreich, mit den allgemeinen Konzepten von Weboperationen vertraut zu sein – wie z. B. mit HTTP und HTML-Formularen –, aber wir geben Ihnen ausreichend Informationen, damit Sie mit einfachem CGI-Skripting zurechtkommen.

   

  

<< zurück vor >>

 

 

 

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

Copyright © 2002 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 "Python & 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