5546 sujets

Sémantique web et HTML

Bonsoir messieurs dames,
il m'a été nécessaire, ce soir, de remettre en question cette nouvelle tendance qui veut qu'on privilégie le xHTML à l'HTML4 désormais. C'est ce que j'ai commencé à faire. Je respecte la syntaxe xHTML, avec un doctype en regard, le code est validé, et fonctionne aussi bien en ypplication/xhtml+xml. Tout va pour le mieux.
Or, en discutant sur fr.comp.infosystemes.www.auteurs, il m'est apparu que "servir de l'xHTML en text/html est jugé néfaste". Que le xHTML doit être servi en application/xhtml+xml, sinon il sera interprété comme de la soupe de balises, même en mode de rendu strict.
Voir aussi ici :
a écrit :
Another common misconception is related to XHTML parsing. Some people think using an XHTML doctype gains different parsing. It does not. XHTML documents served as text/html are parsed using the same tag soup parser that is used for HTML. As far as browsers are concerned, XHTML served as text/html is just “tag soup with croutons” (an extra slash here and there).

Je me demande alors pourquoi tant de sites conformes aux standards utilisent du xHTML servi en text/html. Ou alors ou est-ce que je me trompe ?

D'avance merci pour vos éclaircissements Smiley cligne
Modifié par PsychoMessiah (03 Jan 2006 - 01:00)
Bonsoir,

Normativement, XHTML1.0 peut être servi en tant que text/html (en respectant les règles de compatibilité HTML définies par la spécification) ou en tant qu'application/xhtml+xml (en tenant alors compte des spécificités liées à ce type mime). A l'inverse, XHTML1.1, par exemple, n'est destiné à être servi qu'en tant que application/xhtml+xml

Voir http://www.w3.org/MarkUp/2004/xhtml-faq.html#texthtml , http://www.w3.org/2005/Talks/07/25-choisir-xhtml/ , http://www.webstandards.org/learn/askw3c/sep2003.html , etc. etc.

Ce que Yan Hixon parvient à mettre en évidence dans l'article cité ci-dessus, ce n'est pas qu'il serait problématique d'utiliser correctement XHTML1.0 en tant que text/html. Il met simplement en évidence les raisons de penser (selon lui) que le passage ultérieur à application/xhtml+xml sera problématique : en effet, le document XHTML text/html doit alors faire l'objet de corrections éventuelles des scripts, des styles et de quelques éléments de balisage... qui risquent de causer de mauvaises suprises si elles sont ignorées.

Il est exact que seule une faible partie des sites actuels en XHTML1.0 text/html supporteraient un passage brutal (sans correction) en application/xhtml+xml. A titre d'exemple : les annonces Google disparaissent de toutes les pages d'Alsacréations (comme des autres sites) dès qu'on force ce type mime, le script Xiti est ignoré, certaines pages de tutoriel, du blog ou du forum ne peuvent être parsées entièrement, etc. Mais cela n'empêche pas que ces mêmes pages d'Alsa (comme d'autres sites) soient traitées correctement en text/html grâce aux tolérances dont elles bénéficient de la part des parseurs non validants et grâce aux règles de compatibilité rendant leur syntaxe suffisament proche de celle du HTML.

C'est amusant comme cet article fait l'objet d'un contre-sens pratiquement universel...

Autre contre-sens fréquent, sur des remarques comme celle de Sivonen ci-dessus : quand on dit que le XHTML1.0 text/html sera traité par le même "parseur de soupe" que le HTML, cela signifie simplement que:
- les mêmes processus de récupération d'erreurs HTML seront appliqués (les éventuelles syntaxes erronées seront corrigées dans la mesure du possible),
- ainsi que le doctype switching,
- ainsi que les règles HTML d'application des styles CSS et du DOM,
- et que les implémentations propriétaires seront prises en compte.
Alors qu'en application/xhtml+xml, rien de tout cela ne sera prise en compte.
Cela ne signifie absolument pas que le XHTML1.0 text/html serait en soi un code de moindre qualité (ce qui serait passablement absurde pour un format produit par un consortium industriel pour favoriser justement l'évolution des auteurs vers un code de meilleur qualité)...

La seule mise en cause valable à retenir de ce vieux troll est toute théorique : il est exact que les règles de compatibilité HTML de la spécification XHTML1.0 ne produisent pas du HTML4.01 conforme, mais quelque-chose d'intermédiaire, juste suffisamment compatible pour avoir un comportement parfaitement prévisible. Ce qui est précisément le but du jeu en pratique. Que ce soit intellectuellement satisfaisant ou non n'a guère d'intérêt.

<edit>C'est l'occasion de lire ou de relire l'excellent et indémodable "Considered Harmful" Essays Considered Harmful d'Eric Meyer :
a écrit :
"Considered harmful" essays are not only a sad cliché at this stage of the game, they are counter-productive to reasoned debate and most often do far more harm than good to whatever cause they promote. It would therefore seem obvious that the only intelligent course of action is to abandon their use entirely, and instead look to more constructive forms of essay writing in the support of debate positions.

</>
Modifié par Laurent Denis (03 Jan 2006 - 05:58)
Merci beaucoup Laurent pour cette explication qui m'a éclairci comme je le souhaitais.
Si j'ai bien compris, l'article de Ian Hickson est un troll, qu'il ne faudra prendre en compte que pour le passage à application/xhtml+xml. Et si je suis capable de développer un site en application/xhtml+xml, et de le servir en text/html pour l'instant, ou que pour IE, je n'ai même pas besoin de m'en préoccuper.

PS : Qu'appelles-tu "contre-sens pratiquement universel" ?

PS bis : Il serait intéressant de mettre ton éclaircissement dans la FAQ, selon moi il y a toute sa place.