Modularisation du XHTML
Par J.Ducastel le mercredi 22 septembre 2004, 17:36 - Boule de cristal - Lien permanent
Il y a une dizaine de jours je suis tombé sur un article sur la modularisation du xhtml. Il s'agit d'une recommendation du W3C, l'instance de normalisation du web. Le (X)HTML est déjà un format populaire car il constitue la norme (du moins la plus répandue) de structuration d'un document pour qu'il soit visible dans le navigateur, c'est à dire pour un document publié sur internet.
Jusqu'ici, il était conçu avant tout comme un format de mise en page et de présentation, muni d'hyperliens. Nous sommes à un tournant où il s'agit d'en faire (à nouveau ?) un format de structuration sémantique, en délégant la mise en page et la présentation à CSS. Rédiger un document XHTML, c'est (pour le developpeur/intégrateur web) ajouter un marquage sémantique à un contenu textuel dans l'optique de pouvoir ensuite le mettre en page en s'appuyant sur ce marquage. Le dit marquage n'a alors d'importance que pour les différentes feuilles de style qui seront appliquées. De plus, le jeu de balises à valeur sémantique de XHTML est assez limité : paragraphe, citation, titre... en tout une maigre vingtaine de marquages différents. D'où l'usage intensif des <span> et <div> assortis d'attributs class et id.
La modularisation du XHTML consiste à fractionner son jeu de balises unique en plusieurs jeux (modules), par fonctionnalité. Il est alors possible de constituer la variante de XHTML nécessaire à la structuration de tout type de document textuel, en piochant parmi les jeux existants voire en en créant de nouveaux... Potentiellement, cela permet de faire de XHTML un format réellement universel, non plus de publication de document sur le web, mais de structuration de document. Tout document textuel pourrait donc être nativement écrit en XHTML, et contenir ses propres méta-informations. Aussi bien sur sa structure sémantique, permettant non seulement de présenter le contenu en mettant en relief sa signification (je pense notamment à la coloration syntaxique d'un code source, mais toute mise en page de document part de ce principe - non ?), mais aussi de le manipuler et d'en extraire des informations (effectuer une recherche portant non pas sur le contenu lui même mais sur sa valeur sémantique); que sur le document en tant que tel (auteur, date etc), ce que font les actuelles balises <meta> et pour lequel il est alors envisageable de créer des jeux/modules normalisés.
Adieu les traitements de textes, bonjour les editeurs XHTML !
Voici en guise d'annexe quelques uns des modules permettant de reconstituer XHTML dans sa forme actuelle :
- Structure : html, head, body, title
- Hypertext : la star : a
- Text (les actuelles balises sémantiques) : abbr, acronym, address, blockquote, br, cite, code, dfn, div (?), em, h1-h6, kbd, p, q, samp, span (?), strong, var
- List : dl, dt, dd, ol, ul, li
- Basic forms : form, input, label, select, option textarea
- Basic table : caption, table, td, th, tr
- Image : img
