3
从XML子元素值列表我有XML如下鲜明的使用XSL
<?xml version="1.0" encoding="UTF-8"?>
<Set>
<Bundles>
<BundleID>1</BundleID>
<BundleDetails>
<Classification>A</Classification>
<TrackingID>34675</TrackingID>
</BundleDetails>
<BundleQty>12</BundleQty>
</Bundles>
<Bundles>
<BundleID>2</BundleID>
<BundleDetails>
<Classification>B</Classification>
<TrackingID>4563</TrackingID>
</BundleDetails>
<BundleDetails>
<Classification>A</Classification>
<TrackingID>4563</TrackingID>
</BundleDetails>
<BundleQty>34</BundleQty>
</Bundles>
<Bundles>
<BundleID>3</BundleID>
<BundleDetails>
<Classification>A</Classification>
<TrackingID>2343243</TrackingID>
</BundleDetails>
<BundleQty>22</BundleQty>
</Bundles>
<Bundles>
<BundleID>4</BundleID>
<BundleDetails>
<Classification>A</Classification>
<TrackingID>123231</TrackingID>
</BundleDetails>
<BundleDetails>
<Classification>B</Classification>
</BundleDetails>
<BundleDetails>
<Classification>B</Classification>
<TrackingID>42342</TrackingID>
</BundleDetails>
<BundleQty>33</BundleQty>
</Bundles>
<Bundles>
<BundleID>5</BundleID>
<BundleDetails>
<Classification>A</Classification>
<TrackingID>123231</TrackingID>
</BundleDetails>
<BundleDetails>
<Classification>A</Classification>
<TrackingID>42342</TrackingID>
</BundleDetails>
<BundleDetails>
<Classification>B</Classification>
<TrackingID>124512</TrackingID>
</BundleDetails>
<BundleQty>21</BundleQty>
</Bundles>
</Set>
我需要为每套/捆绑的细节如下
Bundle# Qty Classes
1 12 A
2 34 A,B
3 22 A
4 33 A,B
5 21 A,B
我开始如下,但打击得到不同的班级名单。需要一些指导,
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<p>Set Details</p>
<table>
<xsl:for-each select="Set/Bundles">
<tr>
<td><xsl:value-of select="BundleID"/></td>
<td><xsl:value-of select="BundleQty"/></td>
<td>--Distinct List of ./BundleDetails/Classification </td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
提前感谢您的帮助!
谢谢!
+1我要添加的唯一东西就是'Classification'的'xsl:apply-templates'的'xsl:sort'。 –
@DevNull,谢谢,你说得对。由于'Bundles'看起来已经被BundleID排序了,所以我不打算添加任何排序。我们甚至可以假设可能有多个具有相同“BundleID”的Bundles,然后我们应该添加另一个级别的分组,但这离真正的XML文档太远了。 –
@DimitreNovatchev谢谢! – Sr7