DTD - Propriétés
- Page précédente Éléments DTD
- Page suivante Comparaison des éléments DTD
Dans la DTD, les attributs sont déclarés par l'intermédiaire de l'élément ATTLIST.
Déclarer l'attribut
La déclaration d'attribut utilise la syntaxe suivante :
<!ATTLIST nom_d_element nom_d_attribut type_d_attribut valeur_par_defaut>
Instance DTD :
<!ATTLIST payment type CDATA "check">
Instance XML :
<payment type="check" />
Voici :Type d'attributOptions :
Type | Description |
---|---|
CDATA | La valeur est des données de caractères (character data) |
(en1|en2|..) | Cette valeur est une valeur de la liste d'énumération |
ID | La valeur est un identifiant unique |
IDREF | La valeur est l'identifiant d'un autre élément |
IDREFS | La valeur est une liste d'autres identifiants id |
NMTOKEN | La valeur est un nom XML valide |
NMTOKENS | La valeur est une liste de noms XML valides |
ENTITY | La valeur est une entité |
ENTITIES | La valeur est une liste d'entités |
NOTATION | Cette valeur est le nom symbolique |
xml: | La valeur est une valeur XML prédéfinie |
Les paramètres de valeur par défaut peuvent utiliser les valeurs suivantes :
Valeur | Explication |
---|---|
Valeur | Valeur par défaut de l'attribut |
#REQUIRED | La valeur de l'attribut est obligatoire |
#IMPLIED | L'attribut n'est pas obligatoire |
#FIXED value | La valeur de l'attribut est fixe |
Définir une valeur par défaut pour l'attribut
DTD :
!ELEMENT square EMPTY> !ATTLIST square width CDATA "0">
XML légal :
<square width="100" />
Dans l'exemple ci-dessus, "square" est défini comme un élément vide avec l'attribut "width" de type CDATA. Si la largeur n'est pas définie, sa valeur par défaut est 0.
#IMPLIED
Grammaire
!ATTLIST 元素名称 属性名称 属性类型 #IMPLIED>
Exemple
DTD :
!ATTLIST contact fax CDATA #IMPLIED>
XML légal :
<contact fax="555-667788" />
XML légal :
<contact />
Si vous ne souhaitez pas forcer l'auteur à inclure l'attribut et que vous n'avez pas d'option de valeur par défaut, utilisez le mot-clé #IMPLIED.
#REQUIRED
Grammaire
!ATTLIST 元素名称 属性名称 属性类型 #REQUIRED>
Exemple
DTD :
!ATTLIST person number CDATA #REQUIRED>
XML légal :
<person number="5677" />
XML illégal :
<person />
Si vous n'avez pas d'option de valeur par défaut mais souhaitez tout de même forcer l'auteur à soumettre l'attribut, utilisez le mot-clé #REQUIRED.
#FIXED
Grammaire
!ATTLIST 元素名称 属性名称 属性类型 #FIXED "value">
Exemple
DTD :
!ATTLIST sender company CDATA #FIXED "Microsoft">
XML légal :
<sender company="Microsoft" />
XML illégal :
<sender company="W3School" />
Si vous souhaitez que l'attribut ait une valeur fixe et ne permette pas à l'auteur de la modifier, utilisez le mot-clé #FIXED. Si l'auteur utilise une valeur différente, l'analyseur XML renverra une erreur.
Liste des valeurs des attributs
Grammaire :
!ATTLIST 元素名称 属性名称 (en1|en2|..) 默认值>
Exemple DTD :
!ATTLIST payment type (check|cash) "cash">
Exemple XML :
<payment type="check" />
ou
<payment type="cash" />
Si vous souhaitez que la valeur de l'attribut soit l'une des valeurs légitimes fixes d'une série, utilisez les valeurs d'attributs énumérées.
- Page précédente Éléments DTD
- Page suivante Comparaison des éléments DTD