Perché con una trasformazione XSLT non posso generare codice HTML?

Utente HTML.it
chiede

Perché con una trasformazione XSLT non posso generare codice HTML?

Redazione HTML.it
risponde

Un foglio di stile XSLT è un particolare documento XML che utilizza una specifica sintassi basata sullo XML Schema del linguaggio XSLT. Come tale, un foglio di stile XSLT non è altro che un particolare documento XML valido secondo la grammatica XSLT. Essendo valido, il documento deve essere anche ben formato.

Il linguaggio HTML vero e proprio contiene dei tag che rendono un documento XML non ben formato. Esempi di tali tag sono <br>, <hr>, <p>. La presenza di questi tag in un foglio di stile XSLT lo rende non ben formato e quindi non valido secondo la grammatica XSLT.

Per questo motivo, se si vuole generare un documento Web a partire da un documento XML, è necessario generare codice XHTML, che essendo essenzialmente un documento XML, non genera problemi.