disable-output-escaping
Вопрос такой: в XSLT драйвер приходит строка вида
$STR="<Content><News><Name>asd</Name></News></Content>";
Необходимо из этой строки получить дерево и получить возможность работать как с обычной XML.
Если н-р иметь такой код:
<xsl:variable name="str_1">
<Content><News><Name>asd</Name></News></Content>
</xsl:variable>
то значения дераева можно получить как <xsl:value-of select="exsl:node-set($str_1)/Content/News/Name" />
Но в моём случаем в моей строке все > < заменяются на escape-последовательности.Делаю так:
<xsl:value-of select="$str" disable-output-escaping="yes" />
так выводится дерево,но в виде строки(c нормальными последовательностями).
Соответснвено делаю:
<xsl:variable name="test">
<xsl:value-of select="$str" disable-output-escaping="yes" />
</xsl:variable>
ни к чему путному не приводит!
Как мне работать с пришедшей строкой???
Спасибо,интересная ссылка,но у меня немного другая ситуация. У меня структура дерева находится не в xml-файле ,а в переменной,которая приходит от внешнего источника.
То есть пришла переменная н-р вида: <root><test>test_root</test><test_1>asdasd</test_1></root>
и необходимо её представить как дерево(н-р с помощью exsl:node-set($var)) и вывести данные дерева. Но почему-то exsl:node-set($var)/root/test не получается ??
В чём проблема?
Использовать exsl:node-set можно следующим образом: