Riprendo il tema proposto da Cesare in Addio XHTML per soffermarmi sulla causa che ha portato alla fine dello sviluppo di XHTML. XHTML è morto non per colpa di HTML 5, ma a causa dello scarso supporto dato alle specifiche XHTML da parte di Internet Explorer.
Infatti, sin dalle sue origini, XHTML è stato concepito per essere servito come application/xhtml+xml
, ossia in un formato che lo rendeva de facto un sottoinsieme di XML.
Al contrario, servendo XHTML come text/html
, tutti i benefici di XML vengono meno, e ci si trova a dover gestire un documento nello stesso modo del vecchio HTML 4.01 (si veda l'articolo di Ian Hickson Inviare XHTML come text/html è ritenuto dannoso.
In tutti questi anni (ben 9!), Internet Explorer non ha mai neppur lontanamente dimostrato l'intenzione di voler supportare il Media Type application/xhtml+xml
, vanificando di fatto gli sforzi del W3C per sostenere XHTML 1.1, che si è rivelato un fallimento completo. Infatti, questa versione, al contrario di XHTML 1.0, deve essere servita unicamente come application/xhtml+xml
. Internet Explorer, semplicemente, vi chiede se volete salvare il file.
Le cause alla base del mancato supporto da parte di Internet Explorer ci sono ignote, ma è lecito supporre che esso sia legato a delle strategie di mercato sviluppate nel corso della guerra dei browser, guerra che, per eseere realisti, non è mai finita. Recentemente Dave Shea ha affermato su Twitter di voler sviluppare i suoi progetti in HTML 4.01, visto che non si riesce ad usare XHTML al suo pieno potenziale.
Una precisazione finale: mi addolora scrivere tutto questo, ma sono arrivato a queste conclusioni dopo aver testato in modo estensivo le potenzialità di XHTML nei miei test e in alcune mie demo.
Come epitaffio non trovo nessuna frase adatta, se non l'augurio che almeno HTML 5 riesca a dare agli sviluppatori web quelle potenzialità che XHTML non è mai stato in grado di esprimere al 100%.