13.7.1 Oggetti DOM

La definizione delle API DOM per Python viene fornita in parte dalla documentazione del modulo xml.dom. Questa sezione elenca le differenze tra API e xml.dom.minidom.

unlink( )
Termina i riferimenti interni al DOM in modo che questi possa essere passato alla garbage collection anche in versioni di Python che non abbiano il meccanismo della GC. Solo quando la GC è disponibile, questa funzione consente il recupero di discreti quantitativi di memoria in modo molto rapido, pertanto chiamare questo metodo sugli oggetti DOM non appena essi non sono più necessari è una buona pratica. Questo metodo necessita di essere chiamato su un oggetto Document, ma potrebbe essere chiamato anche sui nodi figli per scaricare i figli di quel nodo.

writexml( writer)
Scrive XML sull'oggetto writer. writer dovrebbe avere un metodo write() che corrisponde a quello dell'interfaccia dell'oggetto file.

Modificato nella versione 2.1: Per ottenere un output più grazioso, sono state aggiunte nuove parole chiave, indent, addindent e newl.

Modificato nella versione 2.3: Per il nodo Document, un ulteriore parola chiave, encoding, può essere usata per specificare il campo di codifica dell'intestazione XML.

toxml( [encoding])
Restituisce l'XML che il DOM rappresenta sotto forma di stringa.

Senza nessun argomento, l'intestazione XML non specifica alcuna codifica ed il risultato è una stringa Unicode quando la codifica predefinita non riesce a rappresentare tutti i caratteri del documento. Codificare questa stringa con una codifica diversa da UTF-8 è spesso non corretto, in quanto UTF-8 è la codifica predefinita di XML.

Con un argomento esplicito di codifica, encoding, il risultato è una stringa di byte nella specificata codifica. Si raccomanda che questo argomento sia sempre specificato. Per evitare eccezioni UnicodeError nel caso di dati testuali non rappresentabili, l'argomento di codifica dovrebbe essere specificato come "utf-8".

Modificato nella versione 2.3: è stato introdotto l'argomento di codifica encoding.

toprettyxml( [indent[, newl]])
Restituisce una versione da stampare più graziosa del documento. indent specifica la stringa di indentazione e il valore predefinito come un tabulatore; newl specifica la stringa emessa alla fine di ogni riga ed il valore predefinito è
n.

Nuovo nella versione 2.1.

Modificato nella versione 2.3: per codificare gli argomenti; vedere toxml.

I seguenti metodi standard DOM sono tenuti in speciale considerazione all'interno di xml.dom.minidom:

cloneNode( deep)
Nonostante questo metodo fosse presente nella versione di xml.dom.minidom in Python 2.0, in realtà non era funzionante. Questo è stato corretto nelle versioni successive.

Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.