735
26.8
Anwendungsbeispiel 2: Datenkommunikation mit XML
#6: Wenn das Element, das die gesuchte E-Mail-Adresse repräsentiert, gefunden worden ist,
braucht man seinen Elternknoten, um es mit der
removeChild()-Methode entfernen zu
können.
#7: Das entfernte Element wird mit unlink() von der DOM-Struktur getrennt, um die Gar-
bage Collection zu erleichtern.
#8: Das XML-Dokument wird als Textdatei unter dem angegebenen Dateinamen gespei-
chert. Die gelingt auf diese Weise nur, wenn es nur ASCII-Zeichen enthält. Die Behandlung
von Nicht-ASCII-Zeichen wird im nächsten Abschnitt vorgestellt.
#9: Durch Überschreiben der magischen Methode __str__() wird ermöglicht, dass in
einer einfachen
print-Anweisung eine textuelle Darstellung als XML-Dokument ausgege-
ben wird.
#10: Die Datei gruppeattr.xml enthält das XML-Dokument aus Abschnitt 26.6 in utf-8-
Codierung.
Ausgabe auf dem Bildschirm:
In den Anweisungen zum Test der Klassendefinition wird zunächst ein Objekt der Klasse
Addresses instanziiert, dann eine E-Mail-Adresse gelöscht und eine andere hinzugefügt.
Die Bildschirmausgabe zeigt, dass diese Operationen korrekt ausgeführt worden sind.
26.8 Anwendungsbeispiel 2: Datenkommunikation mit XML
In Kapitel 22 wurde diskutiert, wie man mit CGI an ein Python-Programm über das Inter-
net Daten schicken kann. Doch CGI ist ein sehr einfacher Mechanismus, mit dem nur
kleine Datenmengen – typischerweise einige wenige Werte – ausgetauscht werden können.
Für komplexere und umfangreichere Daten ist XML eine Alternative. Systeme, die zur
Gestaltung von Webseiten verwendet werden (z.B. Adobe Flash), unterstützen XML. So
<?xml version="1.0" ?>
<gruppe bezeichnung="Projekt-Team">
<person name="Sabrina Maier">
<email>
sm@global-design.de
</email>
</person>
<person name="Tom Kahlenbaum">
<email>
tk@global-design.de
</email>
<email>
tom@media-objects.de
</email>
</person>
</gruppe>

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.