Текст XHTML в формате XML, отформатированный с помощью XSLT - PullRequest
0 голосов
/ 31 мая 2011

Я пытаюсь создать файл XML с соответствующей таблицей стилей XSLT.Все вроде как работает, но ...

... узлы, которые я выводю, содержат текст XHTML внутри них, например так:

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <snippet id="user_surname">
        <content>
            <h1>Some title here</h1>
            <p>Blah blah blah...</p>
        </content>
    </snippet>
    ...
</root>

Вот соответствующая таблица стилей XSLT:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <xsl:for-each select="root/snippet">
      <div>
        <xsl:value-of select="content" disable-output-escaping="yes" />
      </div>
    </xsl:for-each>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

Проблема, с которой я столкнулся, заключается в том, что теги h1 и p печатаются не как теги h1 и p, а вместо этого, как обычный текст без тегов.

Как я могуполучить мою таблицу стилей XSLT для печати этих тегов как есть?Я попытался обернуть теги CDATA, но, похоже, это не помогло.

Заранее спасибо!

1 Ответ

2 голосов
/ 31 мая 2011

Попробуйте xsl:copy-of вместо xsl:value-of.Это должно дать вам узлы вместо узлов в виде текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...