| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
G_Z 03.11.2016 04:43 / 03.11.2016 05:16
@main[]
$template[^xdoc::create{<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/root">
<xsl:value-of select="."/>
</xsl:template>
</xsl:stylesheet>}]
^transform[1]
^transform[2]
@transform[param]
$doc[^xdoc::create{<?xml version="1.0" encoding="utf-8"?>
<root>$param</root>}]
^template.save[/template-${param}.txt]
$result[^doc.transform[$template]]
$result[^result.string[
$.method[text]
$.indent[no]
]]Первое выполнение происходит нормально, второе падает с ошибкой «runtime error: element value-of Unexpected XSLT element 'value-of'».<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/root"> <xsl:value-of select="."/> </xsl:template> </xsl:stylesheet>Стало:
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"><xsl:template match="/root"><xsl:value-of select="."/></xsl:template></xsl:stylesheet>Странно, что форматирование xml-документа влияет на его парсинг, но ещё более странно, что шаблон меняется в процессе применения к документу.