Предполагая, что у меня есть переменная XSL с именем $apps с содержимым XML:
<APPLICATION><DATA1/><DATA2/><DATA3/></APPLICATION>
Я пытаюсь сгенерировать строку из этого XML с обработкой специальных символов XML, используя:
let $applicationsModified := <xsl:text disable-output-escaping="yes"><![CDATA[</xsl:text><xsl:copy-of select="$apps"/><xsl:text disable-output-escaping="yes">]]></xsl:text>
Что я получаю:
let $applicationsModified := <?javax.xml.transform.disable-output-escaping?></xsl:text><xsl:copy-of select="$apps"/><xsl:text disable-output-escaping="yes"><?javax.xml.transform.enable-output-escaping?>
Что я хочу получить:
<![CDATA[<APPLICATION><DATA1/><DATA2/><DATA3/></APPLICATION>]]>
Я делаю что-то неправильно?
let $applicationsModified := ...
больше похож на XQuery, чем на XSLT. Кроме того, когда вы говорите, что я получаю…, как вы это понимаете? Пожалуйста, отредактируйте свой вопрос, чтобы уточнить его (у нас должна быть вся информация, необходимая из вопроса, чтобы воспроизвести проблему, которую вы описываете), или я предложу закрыть его как расплывчатый. - person avernet   schedule 20.05.2011