Существует ли путь к XSLT для повторения XML включение его?

Я использую XSLT для преобразования XML. Существует ли путь к XSLT для выкладывания XML, который подает его? Что-то как:

<xsl:echo-xml />
5
задан Paul Sweatte 5 August 2012 в 06:43
поделиться

2 ответа

Ниже копируется полный XML в дерево результатов:

<xsl:copy-of select="." />

Если вы хотите отправить это в "вывод сообщения", вы можете просто обернуть это вот так:

<xsl:message>
    <xsl:copy-of select="."/>
</xsl:message>
6
ответ дан 18 December 2019 в 13:11
поделиться

Обычно я использую 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 . Это чрезвычайно упрощает такие задачи, как копирование всех узлов, кроме определенных, для которых выполняется определенная обработка (например, переименование, удаление, изменение содержимого, ... и т. Д.) /

8
ответ дан 18 December 2019 в 13:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: