13.11 xml.sax.saxutils -- Utilità SAX

Nuovo nella versione 2.0.

Il modulo xml.sax.saxutils contiene una serie di classi e funzioni che di solito risultano utili durante la creazione di applicazioni SAX, sia mediante il loro uso diretto che come classi base.

escape( data[, entities])
Codifica "&", "<" e ">" in una stringa di dati.

È possibile codificare altre stringhe passando un dizionario come parametro facoltativo entities. Sia le chiavi che i valori devono essere stringhe; ogni chiave verrà sostituita con il proprio corrispondente valore.

unescape( data[, entities])
Decodifica "&amp;", "&lt;", e "&gt;" in una stringa di dati.

È possibile decodificare altre stringhe passando un dizionario come parametro facoltativo entities. Sia le chiavi che i valori devono essere stringhe; ogni chiave verrà sostituita con il proprio corrispondente valore.

Nuovo nella versione 2.3.

quoteattr( data[, entities])
Simile a escape(), ma inoltre prepara data per essere utilizzato come un valore per un attributo. Il valore restituito è una versione quotata di data con tutte le sostituzioni richieste. quoteattr() utilizzerà il carattere per quotare in base al contenuto di data, cercando di evitare di codificare i caratteri utilizzati per quotare all'interno della stringa. Se sia il carattere singolo apice che il carattere doppio apice sono presenti in data, allora il carattere doppio apice verrà codificato e data verrà tramutato in doppio apice. La stringa risultante può essere utilizzata direttamente come un valore di attributo:

>>> print "<element attr=%s>" % quoteattr("ab ' cd \" ef")
<element attr="ab ' cd &quot; ef">

Questa funzione è utile per generare valori attributo per HTML o SGML usando il riferimento della sintassi concreta. Nuovo nella versione 2.2.

class XMLGenerator( [out[, encoding]])
Questa classe implementa l'interfaccia ContentHandler per scrivere eventi Sax facendo fare un passo indietro al documento XML. In altre parole, usando un XMLGenerator come contenuto delle intestazioni, riprodurrà l'originale documento di cui si è iniziata l'analisi. out dovrebbe essere un oggetto simile a file che per definizione stamperà su sys.stdout il suo output. encoding è la codifica del flusso in uscita che avrà come impostazione predefinita per la codifica 'iso-8859-1'.

class XMLFilterBase( base)
Questa classe è stata progettata per essere una via di mezzo tra XMLReader ed un gestore di eventi di un'applicazione client. Di norma, non fa niente ma passa richieste al lettore ed eventi ai gestori senza apportare modifiche, ma sotto classi possono sovrascrivere specifici metodi per modificare flussi di eventi o la configurazione richiesta così come gli viene passata.

prepare_input_source( sorgente[, base])
Questa funzione prende un sorgente ed una URL facoltativa e restituisce un oggetto InputSource pronto per essere letto. Il sorgente può essere fornito sotto forma di stringa, un oggetto simile a file, o un oggetto InputSource; i parser usano questa funzione per implementare una poliformica sorgente al metodo parse().
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.