Condividi tramite


Facet dei tipi di dati

I tipi semplici (sia incorporati che derivati) presentano dei facet. Il facet è un singolo aspetto di definizione che contribuisce a determinare l'insieme di valori di un tipo semplice. Ad esempio, length, minInclusive e maxInclusive sono facet per i tipi di dati incorporati. Tutti i facet per un tipo semplice definiscono l'insieme di valori validi per quel determinato tipo semplice.

Il facet è definito come un elemento. Ogni elemento facet dispone di un attributo fixed rappresentato da un valore booleano. Quando si definisce un tipo semplice, è possibile impedire ai derivati di quel determinato tipo di modificare il valore di facet specificati. Affinché un facet non venga modificato, aggiungere l'attributo fixed al facet e impostarne il valore su true.

In una definizione del tipo i facet possono essere presenti solo una volta. Sono esclusi da questa regola i facet enumeration e pattern. I facet enumeration e pattern, infatti, possono avere più voci e sono raggruppati insieme.

Esempio

Nell'esempio seguente viene illustrato un tipo semplice in cui l'attributo fixed è impostato su true, che impedisce che la lunghezza possa avere un valore diverso da 7.

Elenco di facet vincolanti

Di seguito sono elencati i facet vincolanti (facet che possono essere utilizzati per vincolare i valori di tipi semplici), le relative descrizioni e i tipi di dati incorporati ai quali si applicano.

  • length
    Numero di unità di lunghezza. Le unità di lunghezza dipendono dal tipo di dati. Questo valore deve essere un nonNegativeInteger. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-length (informazioni in lingua inglese).
  • maxExclusive
    Valore associato superiore (tutti gli altri valori sono minori). Questo valore deve essere dello stesso tipo di dati del tipo di dati ereditato. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-maxExclusive (informazioni in lingua inglese).
  • maxLength
    Numero massimo di unità di lunghezza. Le unità di lunghezza dipendono dal tipo di dati. Questo valore deve essere un nonNegativeInteger. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-maxLength (informazioni in lingua inglese).
  • minExclusive
    Valore associato inferiore (tutti gli altri valori sono superiori). Questo valore deve essere dello stesso tipo di dati del tipo di dati ereditato. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-minExclusive (informazioni in lingua inglese).
  • minLength
    Numero minimo di unità di lunghezza. Le unità di lunghezza dipendono dal tipo di dati. Questo valore deve essere un nonNegativeInteger. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-minLength (informazioni in lingua inglese).
  • pattern
    Pattern specifico al quale devono corrispondere i valori del tipo di dati. Un tipo di dati è vincolato a valori letterali che corrispondono al pattern specificato. Il valore del pattern deve essere un'espressione regolare. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-pattern (informazioni in lingua inglese).
  • whiteSpace
    Il valore deve essere preserve, replace oppure collapse. Il facet whiteSpace della maggior parte dei tipi di dati numerici non può essere modificato. Per ulteriori informazioni, vedere il documento W3C XML Schema Part 2: Datatypes Recommendation all'indirizzo http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-whiteSpace (informazioni in lingua inglese).

    preserve

    Non viene eseguita alcuna normalizzazione. Il valore del contenuto dell'elemento non viene modificato come richiesto dalla raccomandazione W3C XML 1.0.

    replace

    Tutte le occorrenze di #x9 (tabulazione), #xA (avanzamento riga) e #xD (ritorno a capo) sono sostituite da #x20 (spazio).

    collapse

    Dopo l'elaborazione implicita di replace, le sequenze contigue di #x20 vengono compresse a una sola sequenza #x20 e le sequenze #x20 iniziali e finali vengono rimosse.

Vedere anche

Riferimento

Riferimenti dei tipi di dati XML
Tipi di dati XML primitivi
Tipi di dati XML derivati