DTD - Propriété


Dans DTD, les attributs sont déclarés au moyen de déclarations ATTLIST.


déclarer une propriété

Les déclarations d'attributs utilisent la syntaxe suivante :

<!ATTLIST element-name attribute-name attribute-type attribute-value>

Exemple DTD :

<!ATTLIST payment type CDATA "check">

Exemple XML :

<payment type="check" />

Les suivants sont des options detype de propriétépour :

Type Description
CDATA La valeur est une donnée de caractères
(en1|en2|..) Cette valeur est l'une des valeurs d'une liste énumérée
ID La valeur est un identifiant unique
IDREF La valeur est un identifiant d'un autre élément
IDREFS La valeur est une liste d'autres identifiants
NMTOKEN La valeur est un nom XML valide
NMTOKENS 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 d'un symbole
xml: La valeur est une valeur XML prédéfinie

Par défautValeur de propriétéLes valeurs suivantes peuvent être utilisées :

Valeur Explication
Valeur La valeur par défaut de l'attribut
#REQUIRED La valeur de l'attribut est obligatoire
#IMPLIED L'attribut n'est pas obligatoire
#FIXED valeur La valeur de l'attribut est fixe


Valeur par défaut de l'attribut

DTD :
<!ELEMENT square EMPTY>
<!ATTLIST square width CDATA "0">

XML valide :
<square width="100" />

Dans l'exemple ci-dessus, "square" est défini comme un élément vide avec un attribut "width" de type CDATA. Si la largeur n'est pas définie, sa valeur par défaut est 0.


#REQUIRED

Syntaxe

<!ATTLIST element-name attribute-name attribute-type #REQUIRED>

Exemple

DTD :
<!ATTLIST person number CDATA #REQUIRED>

XML valide :
<person number="5677" />

XML non valide :
<person />

Si vous n'avez pas d'option de valeur par défaut, mais que vous voulez quand même forcer les auteurs à fournir l'attribut, utilisez le mot-clé #REQUIRED.


#IMPLIED

Syntaxe

<!ATTLIST element-name attribute-name attribute-type #IMPLIED>

Exemple

DTD :
<!ATTLIST contact fax CDATA #IMPLIED>

XML valide :
<contact fax="555-667788" />

XML valide :
<contact />

Si vous ne voulez pas forcer les auteurs à inclure l'attribut, et que vous n'avez pas d'option de valeur par défaut, utilisez le mot-clé #IMPLIED.


#FIXED

Syntaxe

<!ATTLIST element-name attribute-name attribute-type #FIXED "value">

Exemple

DTD :
<!ATTLIST sender company CDATA #FIXED "Microsoft">

XML valide :
<sender company="Microsoft" />

XML non valide :
<sender company="W3Schools" />

Si vous souhaitez qu'un attribut ait une valeur fixe et que les auteurs ne puissent pas la modifier, utilisez le mot-clé #FIXED. Si l'auteur utilise une valeur différente, l'analyseur XML renverra une erreur.


Valeurs d'attribut de liste

Syntaxe

<!ATTLIST element-name attribute-name (en1|en2|..) default-value>

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 d'une série de valeurs légales fixes, utilisez des valeurs d'attribut énumérées.

autres extensions