En plus des chaînes de caractères et les autres types primitifs définis par les recommandations XML 1.0, l'analyseur XML de Microsoft supporte un jeu additionnel de types de données. Il supporte aussi les conversions entre les type primitifs et les types de données précités.
Les types de données sont référencés à partir de l'espace de noms urn:schemas-microsoft-com:datatypes. Pour utiliser les types de données à l'intérieur d'un schéma XML, il suffit de déclarer cet espace de noms à l'intérieur de l'élément schema par l'intermédiaire de l'attribut xmlns.
Types de données<Schema name="schema" xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <!-- ... --> </Schema>
Type | Description |
---|---|
id | représente un attribut de type ID. |
idref | représente une référence à un attribut de type ID. |
idrefs | représente une liste de références à des attributs ID. |
nmtoken | représente un attribut de type NMTOKEN. |
nmtokens | représente des attributs de type NMTOKENS. |
enumeration | représente une liste de valeurs de type NMTOKEN permises. |
string | représente un chaîne de caractères CDATA. |
number | représente un nombre décimal. |
int | représente un entier. |
fixed.14.4 | représente un nombre avec 14 chiffres avant la virgule et 4 après. |
boolean | représente une valeur booléenne true ou false. |
dateTime | représente une date au format ISO 8601 (2002-05-07T19:40:25). |
dateTime.tz | représente une date au format ISO 8601 (2002-05-07T19:40:25-05:00). |
date | représente une date au format ISO 8601 (2002-10-08). |
time | représente une heure au format ISO 8601 (17:30:54). |
time.tz | représente une date au format ISO 8601 (17:30:25-08:00). |
i1 | représente un nombre entier compris entre -128 et 127. |
i2 | représente un nombre entier compris entre -32768 et 32767. |
i4 | représente un nombre entier compris entre -2147483648 et 2147483647. |
i8 | représente un nombre entier compris entre -9223372036854775808 et 9223372036854775807. |
ui1 | représente un nombre entier non-signé compris entre 0 et 255. |
ui2 | représente un nombre entier non-signé compris entre 0 et 65535. |
ui4 | représente un nombre entier non-signé compris entre 0 et 4294967296. |
ui8 | représente un nombre entier non-signé compris entre 0 et 18446744073709551615). |
r8 | représente un nombre à virgule flottante compris entre 2.2250738585072014E-308 et 1.7976931348623157E+308. |
r4 | représente un nombre à virgule flottante compris entre 1.17549435E-38F et 3.40282347E+38F. |
uri | représente une adresse URI (Uniform Resource Identifier). |
bin.hex | représente des données binaires encodées en hexédécimal. |
bin.base64 | représente des données binaires encodées en Base 64. |