XML : les DTD

Qu'est-ce qu'une DTD ?

Une DTD est une définition de type de document.
Nous pouvons donc déclarer dans le fichier DTD la liste des éléments du document XML,  avec leur type et leurs attributs, avant leur utilisation. La validité du document XML est soumise au respect de ces déclarations. Un soin particulier doit donc être apporté à la conception de la DTD, elle doit donc comporter une structure parfaitement adaptée au document XML auquel elle est liée.

  1. <!DOCTYPE element_racine [
  2. <!ELEMENT balise (#PCDATA)>
  3. <!ATTLIST balise attribut CDATA #REQUIRED>
  4. <!ELEMENT element_racine (balise)>
  5. <!ENTITY e-aigu "&eacute;">
  6. ]>
  7. <element_racine>
  8. <balise attribut="valeur">donn&e-aigu;e</balise>
  9. </element_racine>

Indicateurs d'occurences

SymboleExempleDescription
 <!ELEMENT note (message)>Si nous ne spécifions rien de plus, l'élément message, fils de l'élément note, ne peut apparaître qu'une et une seule fois dans l'élément note.
+<!ELEMENT note (message+)>L'élément message doit apparaître au moins une fois par élément note.
*<!ELEMENT note (message*)>L'élément message peut apparaître dans l'élément note. Sa présence est facultative.
?<!ELEMENT note (message?)>L'élément message peut soit être omis, soit apparaître une seule fois dans l'élément note.
,<!ELEMENT note (de,a,cc,objet,message)>L'élément note comporte les cinq éléments fils suivants : de, a, cc, objet, message dans l'ordre dans lequel ils sont présentés.
|<!ELEMENT livre (#PCDATA | titre)>L'élément livre peut comporter soit une donnée de type PCDATA, soit un élément titre.

Déclaration des éléments xml

Déclaration interne

Nous pouvons réaliser une déclaration des éléments xml au sein même du document, sous la forme suivante:

<?xml version="1.0" standalone="yes"?>
<!DOCTYPE Elément_racine...>
<Elément_racine>
...
</Elément_racine>

Déclaration externe

Nous pouvons aussi procéder d'une autre manière (en respectant la tendence qui vise à séparer les données du formatage), par l'utilisation d'uneURI (Uniform Resource Identifier) qui nous permettra de lier le document à une DTD externe. Dans ce dernier cas, le mot-clé : SYSTEM ou PUBLIC sera combiné avec le nom public de la DTD externe.

<!DOCTYPE Elément_racine [Enumération...]>
<!DOCTYPE Elément_racine SYSTEM "URI">
<!DOCTYPE Elément_racine PUBLIC "Nom_DTD" "URI">

Mot-cléDescription
SYSTEMPour indiquer où se situe l'URI d'une DTD à laquelle se réfère le document.
PUBLICDétermine que la DTD est d'usage général.

ValeurDescription
"URI"Pour indiquer où se situe une DTD à laquelle s'applique le mot-clé SYSTEM.
"Nom_DTD" "URI"Détermine le nom de la DTD utilisée, avec son adresse, au cas ou le système ne parviendrait pas à la trouver.
Exemple
  1. <!DOCTYPE document SYSTEM "../dtd/definition.dtd">
  2.  
  3. <!DOCTYPE document PUBLIC
  4. "-//NomDTD//dtD//EN"
  5. "http://www.monsite.com/dtd/definition.dtd">
  6.  
  7. <!DOCTYPE document [
  8. <!ELEMENT paragraphe (phrase)>
  9. <!ELEMENT phrase (#PCDATA)>
  10. <!ATTLIST paragraphe auteur CDATA #IMPLIED>
  11. <!ENTITY e-dans-o "&oelig;">
  12. <!ENTITY a-dans-e "&aelig;">
  13. ]>

Explication : mot-clé PUBLIC

Nous avons vu qu'il était nécessaire de procéder à une déclaration PUBLIC au cas ou l'analyseur XML ne serait pas en mesure de trouver la DTD (le cas de l'utilisation d'une DTD extérieure au site).

Nous utiliserons la syntaxe suivante :

ISO|+|-//nom_propriétaire//dtD Descripteur//Bigramme_langue

  • Appartenance au standard.
    • ISO : la DTD appartient au standard.
    • + : la DTD n'appartient pas au standard.
    • - : utilisé dans le cas où la DTD n'a pas été approuvée.
  • //nom_propriétaire : nom du propriétaire.
  • //dtD Descripteur : descripteur de la DTD.
  • //Bigramme_langue : langue sous forme de bigramme.

Remarques

Nous pouvons aussi utiliser les deux méthodes, en combinant une DTD externe à une DTD interne.
En réalité, la DTD du document XML se composera de deux sous-DTD (une interne et une externe).

Deux termes sont utilisés pour définir un document xml :

  • Un document bien formé (Well Formed XML) est un document qui respecte les règles syntaxiques XML.
  • Un document valide (Valid XML) est un document qui respecte les règles spécifiques de son DTD.

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

12 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-316
Document créé le 07/11/03 00:00, dernière modification le Mercredi 28 Juin 2017, 14:26
Source du document imprimé : http:///www.gaudry.be/xml-dtd.html
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Apparence (afficher)
Stats (afficher)
15838 documents
455 astuces.
550 niouzes.
3107 definitions.
447 membres.
8121 messages.

Document genere en :
0,07 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
Nous ne sommes nous qu'aux yeux des autres et c'est à partir du regard des autres que nous nous assumons comme nous-mêmes.

Jean-Paul Sartre [Extrait de L'être et le néant]
 
l'infobrol
Nous sommes le Mercredi 13 Décembre 2017, 04:34, toutes les heures sont au format GMT+1.00 Heure, heure d'hiver