Déclaration de DTD dans les fichiers XML
Syntaxe :
L'instruction DOCTYPE situé en début de fichier XML (entre l'entête et la balise racine) permet d'associer un fichier XML à la DTD qui permet de la valider. Les parseurs validant pourront ainsi directement informer sur la validité du fichier.
<?xml version="1.0"?>
<!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA Topic//EN" "http://docs.oasis-open.org/dita/v1.1/OS/dtd/topic.dtd">
<topic>
...
Syntaxe : Déclaration de DTD privée
Une DTD privée est une DTD réalisée pour ses besoins propres (langage local).
<!DOCTYPE rootElement SYSTEM "url">
avec :
rootElement
le nom de l'élément racineurl
est une URL décrivant le chemin de la DTD : en local sur un disque, en chemin absolu ou relatif par rapport à la position du fichier XML, ou sur Internet typiquement.
Exemple : Déclaration de DTD privées
<!DOCTYPE topic SYSTEM "topic.dtd">
<!DOCTYPE topic SYSTEM "/home/stc/topic.dtd">
<!DOCTYPE topic SYSTEM "http://www.utc.fr/ics/~stc/topic.dtd">
Syntaxe : Déclaration de DTD publique
Une DTD publique est une DTD standard mise à disposition pour une communauté élargie.
<!DOCTYPE rootElement SYSTEM "publicName" "url">
avec :
publicName
est un nom public pour la DTD, qui permettra à un système informatique de rechercher en priorité la DTD via un catalogue local.url
est une URL décrivant le chemin de la DTD comme pour le mode SYSTEM.
Exemple : Les DTD DITA et XHTML
<!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA Topic//EN" "http://docs.oasis-open.org/dita/v1.1/OS/dtd/topic.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">