Xpoint
   [напомнить пароль]

Заключить узел дерева в <![CDATA[ ]]>

Метки: [без меток]
2008-09-29 14:05:40 [обр] ashuron[досье]
сообщение промодерировано

Уважаемые участники форума,
есть XML вида:

<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="LSTPLMMessageTransform.xslt"?>
<Envelope xmlns="ХХХ">
    <Header>
        <MessageId/>
    </Header>
    <Body>
        <MessageParts xmlns=ХХХ>
            <LSTPLMMessage xmlns=ХХХ>
                <SenderId>ХХХ</SenderId>
                <LSTPLMMessageQueue class="entity">
                    <LSTPLMMessageQueueData class="entity">
                        <XML>
<!--Здесь идет XML, который необходимо заключить в CDATA-->
                        </XML>
                    </LSTPLMMessageQueueData>
                </LSTPLMMessageQueue>
            </LSTPLMMessage>
        </MessageParts>
    </Body>
</Envelope>

Необходимо с помощью XSLT ту часть дерева, которая идет между <XML> </XML>, заключить в теги "<![CDATA[ ]]", т.е. необходимо, чтобы все узлы и подузлы внутри <XML> </XML> воспринимались как текст, при этом все остальные узлы должны остаться без изменений.

Я пробовал в XSLT использовать следующую конструкцию для преобразования:

<xsl:template match="Envelope/Body/MessageParts/LSTPLMMessage/LSTPLMMessageQueue/LSTPLMMessageQueueData/XML">
<![CDATA[
    <xsl:copy-of
     select = expression Envelope/Body/MessageParts/LSTPLMMessage/LSTPLMMessageQueue/LSTPLMMessageQueueData/XML/>
]]>
</xsl:template>

Что не дало никаких результатов.
Подскажите, пожалуйста, можно ли решить мою задачу с помощью XSLT и куда копать?
Заранее спасибо.

спустя 5 часов [обр] Dennis F. Latypoff aka funky_dennis(10/78)[досье]
<xsl:output cdata-section-elements="XML" />
спустя 22 часа [обр] ashuron[досье]

Спасибо за совет.
Может, я чего-то не понимаю...
Мой XSLT имеет следующий вид:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:output cdata-section-elements="XML"/>
</xsl:stylesheet>

Однко, похоже, исходный XML остается без изменений.
Подскажите, пожалуйста, чтоя делаю не так?
Спасибо.

Powered by POEM™ Engine Copyright © 2002-2005