Subject: Re: [xsl] duplicate removal From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Mon, 19 Nov 2001 12:48:37 +0000 |
Hi Dave, > This finds all the duplicate cat-num entries. The processing model > doesn't however, allow me to identify if the first one has different > bibno child to the others, which is what I need. > > Any suggestions for an alternative to the apply-templates above, > which would allow me to check if each one had the same bibno child > as the first? Well, you could find all the rs with unique cat-nums, iterate through them and for each of them get all the rs with that cat-num: <xsl:for-each select="r[cat-num and generate-id() = generate-id(key('multiBooks',cat-num))]"> <xsl:sort select="cat-num" /> <xsl:variable name="bibno" select="bibno" /> <xsl:variable name="rs" select="key('multiBooks', cat-num)" /> ... </xsl:for-each> Then you can find those rs with the same cat-num whose bibno is not the same as the bibno of the first one with:: $rs[bibno != $bibno] (Of course you might get several rs with the same bibno returned by this, but you said you just wanted to know whether they were different from the first one, so I guess that's what you want. Otherwise, you need to do multiple-grouping.) Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] duplicate removal, DPawson | Thread | [xsl] fo:block keep-together, Jan Weiss |
[xsl] for loop in conditional state, Eric Smith | Date | Re: [xsl] Collecting attributes fro, David Carlisle |
Month |