This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: duplicate removal


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]