À retenir
- Sert de squelette de référence pour un document.
- Permet de vérifier si un fichier est "valide" ou non.
- Historiquement liée aux débuts du Web et du langage XML.
Une DTD est un mode d'emploi qui définit la structure d'un document informatique (généralement en XML ou SGML). Elle indique précisément quelles balises sont autorisées, dans quel ordre elles doivent apparaître et quelles informations elles peuvent contenir. C'est un peu comme un plan d'architecte qui impose que chaque maison possède une porte et au moins une fenêtre.
Étymologie
Acronyme de l'anglais Document Type Definition (Définition de Type de Document). Ce concept est apparu avec le langage SGML dans les années 1980 pour permettre l'échange de documents structurés entre différents systèmes informatiques de manière cohérente.
Exemples d'usage
- Une DTD pour une liste de contacts qui oblige chaque fiche à contenir un nom, un prénom et un numéro de téléphone.
- La déclaration située en haut des anciennes pages web (HTML 4.01) qui indiquait au navigateur les règles de codage à respecter.
Cas d'usage
On utilise la DTD principalement pour valider des fichiers de données. Elle intervient dans l'édition numérique, l'échange de données entre entreprises et la configuration de certains logiciels pour s'assurer que les fichiers ne comportent pas d'erreurs de structure.
Bonnes pratiques
Bien que simple, la DTD est limitée car elle ne permet pas de vérifier finement le type de contenu (par exemple, vérifier qu'une date est bien une date). Pour des besoins modernes et complexes, il est souvent recommandé d'utiliser le XML Schema (XSD) ou le JSON Schema.
Synonymes
Antonymes
Conseil
Si vous débutez, considérez la DTD comme une liste de contraintes. Si votre fichier ne respecte pas la DTD associée, les logiciels de lecture risquent de rejeter vos données ou de mal les afficher.
Questions fréquentes
Quelle est la différence entre DTD et XML Schema ?
La DTD est plus ancienne et simple, tandis que le XML Schema est plus puissant, permettant de définir des types de données précis comme des nombres ou des dates.
Est-ce obligatoire pour faire du XML ?
Non, un fichier XML peut exister sans DTD, on dit alors qu'il est 'bien formé' mais pas forcément 'valide'.