parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Вывод html конструкций в тегах XML

cypher 28.03.2005 17:20

Вразумите, please, по работе с XML/XSLT.
Пытаюсь вывести данные XML, содержащие теги HTML (поступают из базы).
Html-теги не выводятся на экран. Выводится plain-текст.
Неужели мне необходимо в xsl-шаблоне переопределять все теги html?

Для упрощения опишу ситуацию на примере из Уроков.

XML структура берется из файла article.xml.
=== Файл article.xml ===
<?xml version="1.0" encoding="windows-1251" ?>
<article>
<block1>
<p>Это текст для <b>первого</b> блока!<img src="/i/aaa.gif" width="100" height="100"/><br/></p>
</block1>
</article>

Использую шаблон:
=== Файл article.xsl ===
<?xml version="1.0" encoding="windows-1251" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="article">
<html>
<head><title>Проверка вывода HTML</title></head>
<body><xsl:apply-templates select="block1" /></body>
</html>
</xsl:template>
</xsl:stylesheet>

Трансформирую:
=== Файл index.html ===
# входной xdoc документ
$sourceDoc[^xdoc::load[article.xml]]

# преобразование xdoc документа шаблоном article.xsl
$transformedDoc[^sourceDoc.transform[article.xsl]]

# выдача результата в HTML виде
^transformedDoc.string[
$.method[html]
]

Получаю:

Это текст для первого блока!


т.е. html не выводится.