В основном я использую XSLT для
преобразовать XML, есть ли способ для
XSLT выплюнуть XML, который
кормить это? Что-то вроде:
Самый простой и короткий путь :
<xsl:copy-of select="/"/>
Выводит текущий XML-документ.
<xsl:copy-of select="."/>
Выводит поддерево, укорененное в текущем узле.
Однако программисты XSLT используют в основном следующее (правило идентификации):
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
Когда это единственный шаблон в таблице стилей, в качестве результата выводится полный документ XML, к которому применяется преобразование.
Использование правила идентификации является одним из самых фундаментальных шаблонов проектирования XSLT . Это чрезвычайно облегчает такие задачи, как копирование всех узлов, кроме определенных, для которых выполняется определенная обработка (например, переименование, удаление, изменение содержимого и т. Д.) /