валидация после отработки XSL

CCCP_MOCKBA

Новичок
валидация после отработки XSL

xsl документ имеет method="html"
<xsl:output version="1.0" encoding="utf-8" method="html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
после того как преобразовываю его в PHP
$xslt = new xsltProcessor;
$xslt->importStyleSheet(DOMDocument::load($xsl));
получаю ошибку в броузере
Ошибка синтаксического анализа XML: несоответствующий тег. Ожидается: </link>.
Адрес: http://localhost/index.php5?component=admin&action=view
Строка 10, символ 3:
</head>
смотрю исходный код страницы, там уже готовый html, такое впечатление создается что после преобразования xsl+xml валидируется полученный html, естественно в html есть незаверщающиеся слешем теги, в данном случае тег <link>
непонятно, что происходит, откуда ошибка.
Спасибо за ответы

-~{}~ 02.11.06 16:05:

Вопрос снимается в чем проблема понял, броузер получает хидер Content-Type: application/xml
и начинает полученный html валидировать как xml, поэтому ошибка.
 
Вы, пардон, хотите получить XHTML-документ, а используете output method="html" - либо DOCTYPE меняйте либо output method, чтобы не было противоречия.
 
как это не упоминали? вы на свой же шаблон внимательнее посмотрите.
 
Решил не делать новый топик, так как вроде вопрос примерно из этой серии:

В xslt-шаблоне имеются пустые элементы, например <br />, которые вставляются в результирующий xhtml.
Метод вывода:

<xsl:output method="xml" omit-xml-declaration="yes" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />


В результате элемент <br /> вставляется как <br/>.
Судя по спецификации xhtml такое написание является допустимым, но в старых браузерах не понимающих xhtml <br/> не будет интерпретироваться, в то время как <br /> будет обработан верно. Процессор - Sablotron.

Вопрос: 1)можно настроить вывод пустых элементов с пробелом в Саблотроне 2)как обстоит с этим дело у других процессоров 3)может в теге <br/> и нет особой проблемы? =)
 
xsl:output method="html" проставь если не критично, приведет все к старому неXHTML стилю
 
Сверху