Introduction

Nous avons commencer l’apprentissage du DTD dans la partie : validation avec DTD d’un document XML. Dans ce cours , on va détailler la partie : DTD et utilisation des attributs. 

DTD : Définir les attributs

Les éléments peuvent avoir des attributs, alors la DTD doit inclure la déclaration de ces attributs via l’instruction ATTLIST selon la syntaxe suivante : 

<!ATTLIST nomElement nom TYPE OBLIGATION VALEUR_PAR_DEFAUT>

avec : 
1- TYPE peut être :
  • CDATA : du texte (Character Data) 
  • ID : un identifiant unique (caractères et nombres) 
  •  IDREF : une référence vers un ID ; 
  • IDREFS : une liste de références vers des ID (séparés par un blanc) ; 
  • NMTOKEN : un mot (contient : des lettres, des chiffres, un point [ . ] , un tiret [ – ], un trait de soulignement [ _ ] et un deux-points [ : ] ) ; 
  • NMTOKENS : une liste de mots (séparation par un blanc) ; 
  • Une énumération de valeurs : chaque valeur est séparée par le caractère |. 

2- OBLIGATION

  • #REQUIRED : obligatoire 
  •  #IMPLIED : optionnel 
  •  #FIXED valeur : valeur imposée par défaut et non modifiable par une valeur effective. 

3- VALEUR_PAR_DEFAUT : la valeur par défaut

DTD utiliser les attributs : Exemples

Exemple 1: 

<!ATTLIST chapitre 

    titre   CDATA #REQUIRED

   auteur CDATA #IMPLIED>

 Explication :

L’élément chapitre possède un attribut titre obligatoire et un attribut auteur optionnel.

Exemple 2 : 

<!ATTLIST crayon

 couleur (rouge|vert|bleu) “bleu”>

 Explication :

L’élément crayon possède un attribut couleur dont les valeurs font partie de l’ensemble rouge, vert, bleu.

 

Exemple 3 : 

<!ATTLIST produit code ID>

 Explication :

chaque produit doit avoir un code unique

Exemple complet (DTD et XML) : 

<!DOCTYPE magasin [
<!ELEMENT magasin (service+)>

<!ELEMENT service (produit*)>

<!ATTLIST service code ID #REQUIRED>

<!ELEMENT produit (#PCDATA)>

<!ATTLIST produit code ID #REQUIRED> ]>

<magasin>

<service code="A001">

<produit code="DE205"> Soupe </produit>

<produit code="TM206"> Condiment </produit>

</service>

<service code="A003">

<produit code="OU152"> Lessive </produit>

<produit code="AH070"> Essuie-tout </produit>

</service>

</magasin> 

On vous propose une vidéo très importante où nous expliquons (En darija Marocaine) cette partie de cours :

Et voilà, c’est votre tours. On vous propose des exercices sur cette partie de cours : exercices sur DTD (TP2) 

Vous pouvez suivre notre cours complet d’XML . pour approfondir vos compétences sur la création et la manipulation des documents xml, dtd, xsd,xpath, xslt.

Aussi, vous avez une playlist des vidéos (Explication en Darija arabe marocaine)  bien organisée qui traite : XML DTD XSD XSLT XPATH

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *