frijolerou, para que un XSL valide en XHTML es necesario pasarle a xsl:output el doctype.
Ejemplo:
Código HTML:
<xsl:output method="xml"
indent="yes"
encoding="ISO-8859-1"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
omit-xml-declaration="yes" />