[Python-de] XML und encoding mit xml.dom.minidom

"Martin v. Löwis" martin at v.loewis.de
Fre Aug 19 22:06:20 CEST 2005


Andreas Jung wrote:
>> DOM ist nicht dafuer gemacht dokumente zu schreiben - daher fehlt sowas.
> 
> 
> Das ist Unsinn.  DOM ist gerade für die Manipulation von XML Dokumenten
> gedacht.

Falls ein Autoritätsbeweis (vom PyXML-Maintainer :-) hilft: Diez hat
m.E. Recht - und die beiden Aussagen sind auch total verschieden.

Es ist ein Unterschied, ob ich ein Dokument manipulieren
(lesen-ändern-schreiben) oder generieren (schreiben aus dem Nichts)
will. Das erstere geht mit DOM relativ gut, das letztere würde ich
niemals in Erwägung ziehen.

> Schliesslich gibt es hierfür entsprechende API Methoden. Wie
> sonst willst Du ein XML Dokument über eine API manipulieren? Über SAX?

Wenn ich XML generieren will, nehme ich üblicherweise print. Man muss
ein paar Kleinigkeiten beachten, etwa dass alles UTF-8 wird oder dass
alle "unbekannten" Strings mit xml.sax.escape behandelt werden. Das ist
aber einfacher als die ganzen Generierungs-APIs.

Ciao,
Martin