Hi,
You can use xs:for-each-group. For example if you join the tag ids as
the grouping key then you will get a stylesheet like below:
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="doc">
<xsl:for-each-group select="odo" group-by="string-join(tag/@id,
'-')">
<xsl:copy-of select="."/>
</xsl:for-each-group>
</xsl:template>
</xsl:stylesheet>
Best Regards,
George
--
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
Kolda, Marcin wrote:
Hi,
I have problem with removing group duplicates. I want to remove duplicates,
which contains childs with identical ids.
I'm looking for solution that does that using XSLT 2.0. Example of input and
output is below.
Input:
<doc>
<odo>
<tag id="1"/>
<tag id="2"/>
<tag id="3"/>
</odo>
<odo>
<tag id="1"/>
<tag id="3"/>
</odo>
<odo>
<tag id="2"/>
<tag id="3"/>
</odo>
<odo>
<tag id="1"/>
<tag id="2"/>
<tag id="3"/>
</odo>
<odo>
<tag id="1"/>
<tag id="3"/>
</odo>
<odo>
<tag id="3"/>
</odo>
</doc>
Output:
<doc>
<odo>
<tag id="1"/>
<tag id="2"/>
<tag id="3"/>
</odo>
<odo>
<tag id="1"/>
<tag id="3"/>
</odo>
<odo>
<tag id="2"/>
<tag id="3"/>
</odo>
<odo>
<tag id="3"/>
</odo>
</doc>
Do you have any ideas?
Marcin
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--