我知道有很多关于分组XSLT元素的链接,但我不能让它工作,我在这里看看是否有人可以给我一个亮点。
我需要将几个具有相同ID的元素分组。
我的数据库是这样的:
我有这个XSLT,阅读数据库:
这就是XML i GET:
但我想像这样分组:
有人可以给我一个灯吗?
由于
答案 0 :(得分:0)
使用XSLT 1.0,我将使用Muenchian grouping,如下所示:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:key name="item-by-id" match="item" use="@id"/>
<xsl:template match="root">
<xsl:copy>
<xsl:apply-templates select="item[generate-id() = generate-id(key('item-by-id', @id)[1])]"/>
</xsl:copy>
</xsl:template>
<xsl:template match="item">
<xsl:copy>
<xsl:copy-of select="@* | key('item-by-id', @id)/*"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
改变
<root>
<item id="questionario_atendimento_cordialidade">
<quantidade id="2">1</quantidade>
<nota id="3">1</nota>
</item>
<item id="questionario_atendimento_cordialidade">
<quantidade id="2">1</quantidade>
<nota id="3">2</nota>
</item>
<item id="questionario_atendimento_cordialidade">
<quantidade id="2">3</quantidade>
<nota id="3">3</nota>
</item>
<item id="questionario_atendimento_cordialidade">
<quantidade id="2">8</quantidade>
<nota id="3">4</nota>
</item>
</root>
到
<root>
<item id="questionario_atendimento_cordialidade">
<quantidade id="2">1</quantidade>
<nota id="3">1</nota>
<quantidade id="2">1</quantidade>
<nota id="3">2</nota>
<quantidade id="2">3</quantidade>
<nota id="3">3</nota>
<quantidade id="2">8</quantidade>
<nota id="3">4</nota>
</item>
</root>