Le langage XHTML
Le DTD
Home

Une des particularités des langages de la famille du XML est de pouvoir définir ses propres balises par l'intermédiaire d'un DTD Document Type Declaration. La référence à un DTD est indispensable car il contient la liste et la définition des balises utilisées dans le document. Le DTD est la seconde ligne d'un document XHTML.

Il y a pour l'instant [début 2001], 3 types de document XHTML 1.0 :

    • Strict
    • Transitional
    • Frameset

Le W3C recommande bien entendu d'utiliser les DTDs installés sur leur propre serveur.

XHTML 1.0 Strict

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Comme son nom l'indique, il impose un codage strict A utiliser lorsque l'on souhaite coder proprement les balises sans effets de présentation. On recommande ce DTD lorsque l'on emploie des feuilles de style (CSS).

Le DTD Strict exclut les balises et les attributs qui ne sont plus reconnues [deprecated] depuis le Html 4.0 comme <center>, <u>, <s> and <strike>.

Pour ceux qui souhaitent jeter un coup d'oeil au DTD du XHTML Strict.
 

XHTML 1.0 Transitional

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Lorsque vous souhaitez tirer profit des apports de présentation de Html et pour les navigateurs qui ne supportent pas les feuilles de style.

Le DTD Transitional est plus souple car il inclut les balises et les attributs "deprecated".

Pour ceux qui souhaitent jeter un coup d'oeil au DTD du XHTML Transitional.
 

XHTML 1.0 Frameset

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

Lorsque vous souhaitez utiliser des frames [cadres] pour diviser la fenêtre du navigateur en plusieurs parties de fenêtre, appelées des frames. En fait, le DTD Frameset inclut le DTD Transitional et les balises des frames.

Pour ceux qui souhaitent jeter un coup d'oeil au DTD du XHTML Frameset.

Ceux qui ont bien suivi jusqu'à présent pourraient s'étonner que la balise de doctype ne comporte pas de slash de fin. Bien juste ! La balise doctype est encore du XML et n'est pas à proprement parler du XHTML et donc n'en suit pas la syntaxe. C'est également la seule ligne du document qui comporte des majuscules et des minuscules.


 

Le W3C recommande bien entendu d'utiliser le DTD qui fait référence à son propre serveur, ce qui peut bien entendu être une garantie de retrouver (enfin) une certaine homogénéité dans les balises disponibles. Mais, en espérant ne pas être un oiseau de mauvaise augure, rien n'empêche de faire son propre DTD, avec ses propres balises... comme par exemple, vous, lui, Microsoft ou Netscape. On retomberait ainsi dans les travers qui ont mené le Html à saturation.

Conscient du problème potentiel, le W3C a prévu une modulation, voit la division du DTD en plusieurs modules, Ainsi, en cas d'ajout d'une ou plusieurs balises personnelles, les autres modules ne seraient pas nécessairement modifiés.