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