Сортировать и сортировать несколько файлов XML с XSL

Проблема состоит в том, чтобы объединить и сортировать несколько XML-файлов с XSL и выходным HTML, доступным с Firefox> = 3,5 и, если это возможно, то есть> = 7. Ответ должен быть максимально простым (производительность не важно).

Файл A.XML

<?xml version="1.0"?>
<root>
    <tag>cc</tag>
    <tag>aa</tag>
</root>

Файл b.xml

<?xml version="1.0"?>
<root>
    <tag>xx</tag>
    <tag>bb</tag>
</root>

Файл index.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="merge.xslt"?>
<list>
    <entry>a.xml</entry>
    <entry>b.xml</entry>
</list>

Файл merge.xslt

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:ph="http://ananas.org/2003/tips/photo">

    <xsl:output method="html"/>

    <xsl:template match="list">
        <html>
            <body>
                <xsl:apply-templates/>
            </body>
        </html>
    </xsl:template>

    <xsl:template match="entry">
        <xsl:for-each select="document(.)/root/tag">
            <!-- This will only sort the values of a single file -->
            <xsl:sort select="." data-type="text" order="ascending" />
            - <xsl:value-of select="."/> <br/>
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>

Текущий выход:

  • AA

  • CC

  • BB

  • XX

Ожидаемый выход:

  • AA

  • BB

  • CC

  • XX

7
задан gaddomn 5 September 2011 в 21:28
поделиться