Nous passons maintenant aux types dérivés
qui peuvent sembler obscurs. Nous avons vu que les dérivés
découlent des primitifs : nous indiquerons donc la paternité
de chacun. Les dérivés que nous détaillons
ici proviennent du type simple string
(chaîne de caractères). Ils permettent de limiter le
contenu d'un élément XML...
normalizedString
Ce
sont là des chaînes qui, outre les caractères
normaux, ne contiennent que des espaces : pas de retour chariot
(CR), de saut de ligne (NL ou LF) ou de tabulation.
Dérive de string.
token
Une "chaînes tokenisées" (tokenized string)
: une chaîne n'ayant pas de saut de ligne, de tabulation,
d'espace au début et à la fin, et ne contenant pas
de suite d'espaces (deux ou plus).
Dérive de normalizedString.
language
Une chaîne qui contient un identifiant de langage valide :
fr, de,
en-US, en-GB...
<xs:element
name="lang" type="language" default="fr" />
Dérive de token.
Name
et NCName
NAME : une chaîne qui contient un nom
XML valide : xmlns:element,
par exemple.
Descend de token.
NCNAME : un nom XML valide et "non colonisé" (non-colonized),
c'est à dire un nom XML sans les deux points (":")
: element.
Dérive de NAME
NMTOKEN
et NMTOKENS
Représente un attribut du même nom.
Dérivent de NCNAME
ID
Le contenu de cet élément doit être unique dans
le document XML.
Dérive de NCNAME
IDREF
et IDREFS
L'élément doit contenir un ou des identifiant(s) unique(s)
(ID) déjà utilisé(s) dans le document XML.
Dérivent de NCNAME
ENTITY
et ENTITIES
La valeur de l'élément doit correspondre à
une entité non-analysée (unparsed entity),
c'est à dire une ressource dont le contenu peut être
du texte ou pas, auquel cas elle peut être autre que du XML.
Dérive de NCNAME
Les autres types
dérivés (qui dérivent du type simple decimal)
sont plus classiques : integer,
nonPosisitveInteger, negativeInterger,
long, int,
short, byte,
nonNegativeInteger, unsignedLong,
unsignedInt, unsignedShort,
unsignedByte, positiveInteger.
Vous trouverez
dans la Recommandation XML Schema un
arbre généalogique des différents types de
données pré-définis.
Page 1 | 2
|