Normalizzazione del valore degli attributi

La proprietà Normalization nella classe XmlTextReader specifica se il parser deve eseguire la normalizzazione degli spazi vuoti e degli attributi. Questa proprietà, impostata su un parser di non convalida, è definita nella raccomandazione W3C Extensible Markup Language (XML) Version 1.0, sezione Attribute-Value Normalization, disponibile all'indirizzo www.w3.org/TR/2000/REC-xml-20001006.html\#AVNormalize (informazioni in lingua inglese). L'impostazione predefinita per la proprietà Normalization è false. Quando è false, il tipo XmlTextReader consente entità di caratteri quali � in quanto questo flag disattiva anche la verifica dell'intervallo dei caratteri per le entità numeriche.

NotaNota

In .NET Framework versione 2.0 è consigliabile creare istanze del tipo XmlReader tramite la classe XmlReaderSettings e il metodo Create.In questo modo è possibile sfruttare completamente tutte le nuove funzionalità introdotte in .NET Framework 2.0.Per ulteriori informazioni, vedere Creazione di lettori XML.

Le istanze del tipo XmlReader create utilizzando il metodo Create normalizzano sempre le nuove righe e i valori degli attributi in base alla specifica XML.

Normalization

La raccomandazione W3C specifica che prima che il valore di un attributo sia passato a un'applicazione o che ne venga verificata la validità, debba essere normalizzato nel modo seguente:

  • Per un riferimento a un carattere aggiungere il carattere referenziato al valore dell'attributo.

  • Per un riferimento a entità elaborare in modo ricorsivo il testo di sostituzione dell'entità.

  • Per gli spazi vuoti (#x20, #xD, #xA, #x9), aggiungere #x20 al valore normalizzato, ad eccezione di una sequenza "#xD#xA" facente parte di un'entità esterna analizzata dal parser o del valore letterale di un'entità interna analizzata dal parser, per cui viene aggiunto un solo #x20.

  • Elaborare gli altri caratteri aggiungendoli al valore normalizzato.

  • Se il valore dichiarato non è CDATA, scartare qualsiasi spazio (#x20) iniziale e finale e sostituire le sequenze di spazi (#x20) con uno spazio singolo (#x20).

Vedere anche

Concetti

Lettura di XML con XmlReader

Altre risorse

Utilizzo della classe XmlReader