QuentinC a écrit :
Bof, tu peux déjà te servir d'un parseur XML même quand c'est servi en text/html, pour autant que le document soit syntaxiquement valide XML... C'est pas rigoureusement correct mais ça marche.
Ben oui, mais ta question était, indirectement, «à quoi ça sert de faire du HTML en XML»? Je rappelle juste une utilisation actuelle (même si pas très courante): produire un document XHTML bien formé destiné à un outil tiers et pas aux navigateurs. Je n'ai pas dit que ce document devait être le même que celui envoyé aux navigateurs.
QuentinC a écrit :
Donc autrement dit 99,9% du temps, XHTML 1.0 ne sert à rien.
Ah mais parfaitement. Et le mythe a été cassé il y a belle lurette. Un des principaux adversaires de ce mythe était d'ailleurs Ian Hickson, éditeur de HTML5.
Mais il faut remettre les choses dans leur contexte. On a poussé à l'utilisation de XHTML (pas tellement moi, je suis arrivé après la bataille et j'ai relayé la «bonne pratique» que j'avais apprise) pour les raisons suivantes:
1. Parce qu'on pensait que le XML était le futur, que HTML s'arrêterait à la version 4, et que on passerait à XHTML 2 en passant par une phase de transition avec XHTML 1. Le but était donc de faire des documents XHTML 1.0 servis en text/html, mais qui seraient bien formés et qui pourraient à l'avenir être servis en application/xhtml+xml dans un site en XHTML 2.
2. Parce que la rigueur imposée par la validation XHTML (à l'inverse des largesses de la validation HTML 4) était un formidable outil pédagogique pour sortir des années de soupe de balise. La rupture entre HTML 4 et XHTML 1 était peut-être artificielle, mais elle était nécessaire pour changer les pratiques.
On a donc en #1 une vision prometteuse mais qui s'est progressivement avérée erronée; et en #2 une stratégie pragmatique qui a eu des effets très positive sur la mise en place de bonnes pratiques de codage. Le prix à payer de cette stratégie, c'est une certaine confusion maintenant que l'avenir semble être de passer du XHTML 1 à HTML5.
QuentinC a écrit :
Au fait, est-ce qu'il existe un navigateur qui sait déjà le supporter, ça ?
MathML: Firefox (Gecko) et Opera en natif, Internet Explorer via un plugin.
SVG: Firefox (Gecko), Safari/Chrome (Webkit) et Opera en natif. Le support est partiel dans les trois cas, SVG étant une spécification assez importante divisée en plusieurs niveaux (tiny, basic et full). Les navigateurs implémentent donc progressivement, niveau par niveau. Quant à Internet Explorer, pas de support natif; il y avait des plugins, dont un plugin d'Adobe (avant qu'ils ne rachètent Macromedia et donc la technologie propriétaire concurrente Flash), mais ils ne sont plus maintenus pour la plupart.