Nuovo nella versione 2.0.
Il modulo xml.parsers.expat è un'interfaccia Python all'analizzatore Expat non validante XML. Il modulo fornisce un tipo singolo di estensione, xmlparser, che rappresenta lo stato corrente di un parser XML. Dopo che un oggetto xmlparser viene creato, vari attributi dell'oggetto possono essere impostati alle funzioni del gestore. Quando un documento XML viene quindi passato al parser, vengono chiamate le funzioni del gestore per i dati relativi ai caratteri ed il margine nel documento XML.
Questo modulo usa il modulo pyexpat per fornire l'accesso al parser Expat. L'uso diretto del modulo pyexpat è deprecato.
Questo modulo fornisce un'eccezione ed un tipo oggetto:
Il modulo xml.parsers.expat contiene due funzioni.:
errno) |
[encoding[, namespace_separator]]) |
Expat può, facoltativamente, fare l'elaborazione dello spazio dei nomi
XML per voi, abilitarlo per fornire un valore per lo
namespace_separator. Il valore deve essere una stringa di un
carattere; verrà sollevata l'eccezione un ValueError se la
stringa ha una lunghezza illegale (None
viene considerato alla
stregua di un'omissione). Quando l'elaborazione dello spazio dei nomi
viene abilitata, i nomi degli elementi tipo che appartengono allo
spazio dei nomi verranno espansi. L'elemento con nome, passato agli
elementi di gestione StartElementHandler e
EndElementHandler rappresenteranno la concatenazione dello
spazio dei nomi URI, il carattere separatore dello spazio dei nomi e
la parte locale del nome. Se il separatore dello spazio dei nomi
viene impostato a zero byte (chr(0)
) allora lo spazio dei nomi
URI e la parte locale verranno concatenate senza alcun separatore.
Per esempio, se namespace_separator viene impostato sul carattere spazio (" ") e viene analizzato il seguente documento:
<?xml version="1.0"?> <root xmlns = "http://default-namespace.org/" xmlns:py = "http://www.python.org/ns/"> <py:elem1 /> <elem2 xmlns="" /> </root>
StartElementHandler riceverà la seguente stringa per ogni elemento:
http://default-namespace.org/ root http://www.python.org/ns/ elem1 elem2
Vedete anche: