Обратите внимание на указание xmlns без префикса - так необходимо делать, чтобы все создаваемые в шаблоне элементы без префикса попадали в пространство имен xhtml. Необходимо задавать xmlns без префикса в каждом .xsl файле, этот параметр не распространяется на включаемые файлы.
А также необходимо задать такие атрибуты <xsl:output … />: <xsl:output
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="DTD/xhtml1-strict.dtd"
/>
Внимание: не задавайте атрибут method. XHTML это разновидность метода xml, включающаяся при использовании следующих doctype: -//W3C//DTD XHTML 1.0 Strict//EN
-//W3C//DTD XHTML 1.0 Frameset//EN
-//W3C//DTD XHTML 1.0 Transitional//EN