Вероятно, ваши xpath не должны заканчиваться завершающим символом '/', хотя я не думаю, что здесь проблема.
Невозможно удалить атрибут xmlns, так как он добавляется XMLSerializer в режиме XHTML (по крайней мере, при обычных обстоятельствах). Вместо этого вы можете установить сериализацию HTML с помощью <xsl:output method="html"/>
внутри корневого тега правил.
В режиме XHTML XMLSerializer добавит xml: lang для соответствия атрибуту lang. Снова попробуйте установить сериализацию html.
Обычно базовый тег копируется из содержимого в тему - не должно быть никаких причин иметь базовый тег в HTML-файле темы. Если вы не скопируете его, он не попадет в вывод. Однако желательно всегда включать базовый тег в вывод Zope, так как одна и та же страница будет отображаться как http://localhost/some_url
, так и http://localhost/some_url/
, что приведет к различиям с любыми относительными URL.
Заголовок типа содержимого добавляется libxslt, безусловно добавляется libxslt и его невозможно подавить.