Новости | 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-документа влияет на его парсинг, но ещё более странно, что шаблон меняется в процессе применения к документу.