3
我需要让我的XSLT样式表对我的XML文件的子节点进行排序,但只排序某些子节点。下面是的XML是什么样子的一个例子:XML和XSLT:需要它仅对某些子节点进行排序
<?xml version="1.0"?>
<xmltop>
<child1 num="1">
<data>12345</data>
</child1>
<child1 num="2">
<data>12345</data>
</child1>
<child2 num="3">
<data>12345</data>
</child2>
<child2 num="2">
<data>12345</data>
</child2>
<child2 num="1">
<data>12345</data>
</child2>
</xmltop>
这是我使用的XSL文件:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/xmltop">
<xsl:copy>
<xsl:apply-templates>
<xsl:sort select="@num"/>
</xsl:apply-templates>
</xsl:copy>
</xsl:template>
<xsl:template match="child2">
<xsl:copy-of select="."/>
</xsl:template>
</xsl:stylesheet>
这为我的问题,因为节点被剥夺了他们的标签,并他们的内容仍然存在,使我的XML无效。如果这是一个愚蠢的问题,我真的不是XSL的专家,所以请原谅我。
<child2>
的排序正确。
谢谢。
你忘了问一个问题......你忘了提供转换所需的结果。 – 2010-05-21 00:57:35
@MT,如果你以可理解的方式提及你的要求,它并不是一个愚蠢的问题。我可以看到你缺少必需的“关键”字,(比如你想将节点分组吗?),并且更好地发布你想要的理想输出。 只需手动准备输出文档并将其发布在此处即可。这让每个人都明白你需要什么。 (你的xsl代码并非真正需要) – 2010-05-21 14:22:51