Измените положения тегов в SOAP XML с помощью XSLT - PullRequest
2 голосов
/ 01 апреля 2011

Мне нужно переместить тег из одной позиции в другую.

Запрос выглядит следующим образом

<Envelope>
    <Header>
        <Assertion></Assertion>
        <Security></Security>
    </Header>
</Envelope>

Но мне нужен XSLT, чтобы поместить тег подтверждения в безопасность следующим образом:

<Envelope>
    <Header>
        <Security>
            <Assertion></Assertion>
        </Security>
    </Header>
</Envelope>

Я ценю вашу помощь. Спасибо

1 Ответ

0 голосов
/ 01 апреля 2011

Следующая таблица стилей:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()" />
        </xsl:copy>
    </xsl:template>
    <xsl:template match="Assertion" />
    <xsl:template match="Security">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
            <xsl:copy-of select="../Assertion"/>
        </xsl:copy>
    </xsl:template>
</xsl:stylesheet>

... создает желаемый вывод при применении к предоставленному источнику:

<Envelope>
    <Header>
        <Security>
            <Assertion></Assertion>
        </Security>
    </Header>
</Envelope>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...