Cette syntaxe se compose des éléments suivants, chaque élément étant séparé par une espace :

  1. un chevron ouvrant suivi d'un point d'exclamation et du mot DOCTYPE (<!DOCTYPE), indiquant le début d'une déclaration de type de document (cette notation est dérivée du SGML, le méta-langage ancêtre du XML),
  2. l'élément racine du document,
  3. le mot-clé PUBLIC ou SYSTEM, indiquant si le chemin du fichier DTD est indiqué de façon explicite (mot-clé SYSTEM), que le fichier se trouve dans le poste local ou à une adresse distante, ou bien au moyen d'un FPI, un identifiant de la DTD (mot-clé PUBLIC),
  4. le FPI, si le mot-clé PUBLIC est employé,
  5. l'URL ou le chemin du fichier DTD, entre guillemets, suivi d'un chevron fermant.

Le FPI suit lui-même une syntaxe, composée des éléments suivants, dont l'ensemble est mis entre guillemets, chaque élément étant séparé par deux barres obliques (//) :

  1. l'identifiant du propriétaire, pouvant être précédé de -// ou de +//,
  2. une description publique,
  3. la langue,
  4. la version (indication facultative).

Pour plus de détails sur le FPI, on consultera la RFC 3151.

Exemple de doctype de type SYSTEM :

<!DOCTYPE élément-racine SYSTEM "URL">

Exemple de doctype de type PUBLIC :

<!DOCTYPE élément-racine PUBLIC "-//Propriétaire//Description de la DTD//Langue" "URL">

Cas d'une DTD interne

Un document XML peut fournir lui-même toutes les instructions définissant le type de document auquel il est censé obéir. Dans ce cas, la syntaxe est la suivante :

  1. <!DOCTYPE,
  2. l'élément racine du document,
  3. un crochet droit ouvrant,
  4. les différentes instructions de la DTD,
  5. un crochet droit fermant, suivi du chevron fermant.

Ce qui donne, par exemple :

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE auteur [
  <!-- Ici les différentes instructions de la DTD interne -->
  <!ELEMENT auteur (nom,prenom)>
  <!ELEMENT nom (#PCDATA)>
  <!ELEMENT prenom (#PCDATA)>
]>
<auteur>
  <nom>Brito</nom>
  <prenom>Victor</prenom>
</auteur>

Utilisation du doctype

L'utilisation d'un doctype n'est pas obligatoire dans un document XML : il existe d'autres méthodes de validation d'un document XML et l'absence de doctype (ou de toute autre méthode de validation) n'empêchera pas un document XML d'être syntaxiquement valide, en ce sens qu'il est bien formé. L'intérêt de valider un document XML n'est palpable que lorsque le document XML suit un format XML précis, selon des schémas précis.

En revanche, le doctype est essentiellement utilisé en XHTML (traité en tant que XML ou non), ainsi qu'en HTML, où son utilisation est recommandée pour une interprétation correcte du document par les navigateurs.