DTD
Une DTD (Document Type Definition) est le mécanisme de définition de structure de XML 1.0 ; plus simple que XSD mais limité, elle s'écrit dans une syntaxe spéciale (non XML).
Objectif
Fournir une validation structurelle de base pour XML, en définissant les éléments, attributs et hiérarchies autorisés.
Mécanisme
<!ELEMENT name (content)> déclare les éléments et leurs enfants, <!ATTLIST> les attributs, <!ENTITY> les entités. Pas de système de types (chaînes uniquement) ni d'espaces de noms. Avant HTML5, HTML utilisait une DTD.
Cas d’usage
- DTD de HTML 4.01 / XHTML 1.0
- Validation de documents XML hérités
- DTD de SVG 1.1
- Exemples pédagogiques
Exemples
- entrée
<!ELEMENT name (#PCDATA)>OutputThe name element contains text onlyElement declaration
Erreurs courantes
- A DTD cannot express modern constraints (types, namespaces)
- Migrate to XSD or JSON Schema
Termes associés
XSD
XSD (XML Schema Definition) est le langage standard du W3C pour définir la structure de documents XML, décrivant éléments, attributs et contraintes de types en syntaxe XML. GLOSSAIRE
XML
XML (Extensible Markup Language) est le langage de balisage standard du W3C décrivant des données par un arbre de balises, prenant en charge espaces de noms, validation par schéma et transformation de styles. GLOSSAIRE
JSON Schema
JSON Schema est un vocabulaire pour décrire la structure de documents JSON, définissant types, contraintes et règles de validation ; c'est le standard de schéma pour JSON. GLOSSAIRE