#xslt #xquery
#xslt #xquery
Вопрос:
Мне нужно получить значение узла в формате xml, но все, что я получаю, — это значения внутри этих тегов.
Тело:
<input>
<first>one</first>
<second>two</second>
<third>three</third>
</input>
XQuery
<PayloadAsMessage>
<xsl:value-of select="/input"/>
</PayloadAsMessage>
Ожидаемый результат:
<PayloadAsMessage>
<first>one</first>
<second>two</second>
<third>three</third>
</PayloadAsMessage>
Что я получаю:
<PayloadAsMessage>
onetwothree
</PayloadAsMessage>
Комментарии:
1. спасибо, что указали на это. будет отредактировано.
Ответ №1:
xsl:value-of
принимает строковое значение элемента (это также XSLT, а не XQuery). Чтобы точно скопировать XML, используйте либо xsl:copy-of
(XSLT 1), либо xsl:sequence
(XSLT2).
<xsl:copy-of select="/input/*"/>
или
<xsl:sequence select="/input/*"/>