Subject: Re: [xsl] Ordered union of sequences From: "Imsieke, Gerrit, le-tex" <gerrit.imsieke@xxxxxxxxx> Date: Thu, 08 Apr 2010 16:47:05 +0200 |
-------------------------------------- <?xml version="1.0" encoding="utf-8"?> <foo> <seq><k/><o/><p/><c/><f/></seq> <seq><d/><e/><f/><g/></seq> <seq><k/><f/><z/></seq> <seq><a/><b/><c/><d/></seq> </foo> --------------------------------------
-------------------------------------- <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:my="URN:my" version="2.0" >
<xsl:output method="xml" indent="yes" />
<xsl:template match="/"> <xsl:apply-templates /> </xsl:template>
<xsl:template match="foo"> <xsl:copy> <xsl:for-each-group select="seq/*" group-by="name(.)" > <xsl:sort select="my:sortkey(.)"/> <xsl:element name="{current-grouping-key()}" /> </xsl:for-each-group> </xsl:copy> </xsl:template>
</xsl:stylesheet> --------------------------------------
-------------------------------------- <foo> <k/> <a/> <o/> <b/> <p/> <c/> <d/> <e/> <f/> <g/> <z/> </foo> --------------------------------------
There is an arbitrary number of sequences, sometimescontaining itemswith the same name:
(k, o, p, c, f) (d, e, f, g) (k, f, z, o) (a, b, c, d)
I want to create a master sequence which contains every item once, preserving the original order.
Doesn't xsl:for-each-group over combined sequence solves the problem?
No, it puts groups in order of first appearance, which would put f before d.
Regards,
Michael Kay http://www.saxonica.com/ http://twitter.com/michaelhkay
-- Gerrit Imsieke Geschdftsf|hrer / Managing Director le-tex publishing services GmbH Weissenfelser Str. 84, 04229 Leipzig, Germany Phone +49 341 355356 110, Fax +49 341 355356 510 gerrit.imsieke@xxxxxxxxx, http://www.le-tex.de
Registergericht / Commercial Register: Amtsgericht Leipzig Registernummer / Registration Number: HRB 24930
Geschdftsf|hrer: Gerrit Imsieke, Svea Jelonek, Thomas Schmidt, Dr. Reinhard Vvckler
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Ordered union of sequence, Michael Kay | Thread | Re: [xsl] Ordered union of sequence, Michael Müller-Hille |
RE: [xsl] Ordered union of sequence, Michael Kay | Date | Re: [xsl] Ordered union of sequence, Vladimir Nesterovsky |
Month |