Per poter descrivere qualunque tipo di informazione, semplice o complessa che sia, dobbiamo necessariamente chiarirne la natura ed il valore. Per fare questo, XSD mette a disposizione una lunga lista di tipologie di base per poter agevolmente descrivere il tipo di dato rappresentato.
I tipi di dati di base in XSD si distinguono in:
- predefiniti o built-in;
- derivati (poichè derivano dai predefiniti);
Tipi Predefiniti
| Nome tipo di Dato | Descrizione |
|---|---|
| string | Stringhe di caratteri |
| boolean | true/false |
| decimal | Numeri di tipo Decimal |
| float | Numeri a virgola mobile e precisione singola a 32-bit |
| double | Numeri a virgola mobile e precisione doppia a 64-bit |
| duration | Intervallo di tempo |
| dateTime | Data completa di ora |
| Time | Ora minuti e secondi |
| Date | Data |
| gYearMonth | Rappresenta un mese dell'anno secondo il calendario Gregoriano |
| gYear | Rappresenta un anno secondo il calendario Gregoriano |
| gMonthDay | Rappresenta una data ricorrente secondo il calendario Gregoriano. Ad esempio il 6 Dicembre di ogni anno |
| gDay | Rappresenta un giorno ricorrente secondo il calendario Gregoriano. Ad esempio il 6 di ogni mese |
| gMonth | Rappresenta un mese ricorrente secondo il calendario Gregoriano. Ad esempio Dicembre di ogni anno |
| hexBinary | Rappresenta un dato binario secondo la codifica esadecimale |
| base64Binary | Rappresenta un dato binario secondo la codifica Base64 |
| anyURI | Rappresenta una URI come definita dallo standard RFC 2396 |
| QName | Rappresenta un nome qualificato: necessita di un prefisso associato ad un namespace |
| NOTATION | Rappresenta un tipo di attributo NOTATION |
Tipi Derivati
I tipi di dati derivati dai precedenti sono elencati di seguito.
| Nome tipo di Dato | Descrizione |
|---|---|
| normalizedString | Rappresenta una stringa privata degli spazi bianchi in eccesso |
| Token | Rappresenta una stringa tokenizzata |
| Language | Rappresenta un identificatore di linguaggio |
| IDREFS | Rappresenta il tipo attributo IDREFS. Contiene un insieme di valori di tipo IDREF |
| ENTITIES | Rappresenta il tipo attributo ENTITIES. Contiene un insieme di valori ENTITY |
| NMTOKEN | Rappresenta il tipo attributo NMTOKEN cioe' l'insieme dei caratteri di un nome in qualsiasi combinazione.Non ha restrizioni nel carattere iniziale |
| NMTOKENS | Rappresenta il tipo attributo NMTOKENS: contiene un insieme di valori NMTOKEN |
| Name | Rappresenta i nomi in XML. Un Name e' un token che inizia con una lettera, un underscore o due punti |
| NCName | Rappresenta i nomi che non possono iniziare con il carattere dei due punti. |
| ID | Rappresenta l'attributo ID definito in XML 1.0. ID deve essere un NCName e deve essere unico in tutto il documento XML |
| IDREF | Rappresenta un riferimento a un elemento che ha un attributo ID identico all'IDREF specificato. IDREF deve essere un NCName |
| ENTITY | Rappresenta il tipo attributo ENTITY in XML 1.0 |
| integer | Rappresenta una sequenza di numeri decimali con un segno iniziale opzionale |
| nonPositiveInteger | Rappresenta un integer minore o uguale a zero |
| long | Rappresenta un integer con un valore minimo di -9223372036854775808 ed un massimo di 9223372036854775807 |
| int | Rappresenta un integer con un valore minimo di -2147483648 ed uno massimo di 2147483647 |
| short | Rappresenta un integer con un valore minimo di -32768 ed uno massimo di 32767 |
| byte | |
| nonNegativeInteger | Rappresenta un integer maggiore o uguale a zero |
| unsignedLong | Rappresenta un integer con un valore minimo di zero ed uno massimo di 18446744073709551615 |
| unsignedInt | Rappresenta un integer con un valore minimo di zero ed uno massimo di 4294967295 |
| unsignedShort | Rappresenta un integer con un valore minimo di zero ed uno massimo di 65535 |
| unsignedByte | Rappresenta un integer con un valore minimo di zero ed uno massimo di 255 |
| positiveInteger | Rappresenta un integer maggiore di zero |
Di fronte a questo vasto assortimento di tipologie di dati utilizzabili, vien proprio difficile non riuscire a descrivere accuratamente un'informazione.
Alla prossima,
MA.
0 commenti:
Posta un commento
Non ti è chiaro qualcosa?
No problem, posta il tuo dubbio ;)
..... e ricordati di firmarlo!