Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > "Group by" в XSLT 1.0


Автор: dani1 26.11.2008, 10:00
Уважаемые участники помогите решить проблему:

У меня есть преобразование написаное в XSLT 2.0  мне нужно перевести его в XSLT 1.0 так как SAP XI для которого я все это сделал не поддерживает XSLT 2.0 :(

Как все это воплотить в XSLT 1.0 не имею представления, буду очень благодарен за любую помощь!


Код

<?xml version="1.0"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

    <xsl:template match="ColaMT">
        <ColaOutMT>
            <xsl:for-each-group select="*" group-starting-with="Level_1">
                <Level_1>

                    <xsl:copy-of select="Item_1"/>
                    <xsl:copy-of select="Item_2"/>

                    <xsl:for-each-group select="subsequence(current-group(),2)" group-starting-with="Level_2">
                        <Level_2>

                            <xsl:copy-of select="Item_21"/>
                            <xsl:copy-of select="Item_22"/>

                            <xsl:for-each-group select="subsequence(current-group(),2)" group-starting-with="Level_3">
                                <Level_3>

                                    <xsl:copy-of select="Item_31"/>
                                    <xsl:copy-of select="Item_32"/>
                                </Level_3>
                            </xsl:for-each-group>
                        </Level_2>
                    </xsl:for-each-group>
                </Level_1>
            </xsl:for-each-group>
        </ColaOutMT>
    </xsl:template>
</xsl:stylesheet>


Автор: sir_nuf_nuf 27.11.2008, 15:52
пример XML и того, что нужно получить можно ?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)