Re: [xsl] Duplicates in a sequence ?

Subject: Re: [xsl] Duplicates in a sequence ?
From: "Leo Studer leo.studer@xxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 25 Mar 2015 17:04:54 -0000
I use it like this
empty($value[index-of($value, .)[2]])

cheers...

> On 25.03.2015, at 18:02, Dimitre Novatchev dnovatchev@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> And if you just need the boolean  (true()/false()) indicating whether
> a sequence has duplicate values -- not needing the values themselves
> -- then use the following, slightly adjusted and more efficient
> expression:
>
> exists($vSeq[index-of($vSeq,.)[2]][1] )
>
> On Wed, Mar 25, 2015 at 9:53 AM, Leo Studer leo.studer@xxxxxxxxxxx
> <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>> Really nice, thanks !
>>
>>
>>> On 25.03.2015, at 15:05, Dimitre Novatchev dnovatchev@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>>>
>>> See this:
>>>
>>>
http://stackoverflow.com/questions/133092/how-do-you-identify-duplicate-value
s-in-a-numerical-sequence-using-xpath-2-0
>>>
>>> It produces all values in the sequence, that occur in it more than once:
>>>
>>> $vSeq[index-of($vSeq,.)[2]]
>>>
>>>
>>>
>>> On Wed, Mar 25, 2015 at 3:58 AM, Leo Studer leo.studer@xxxxxxxxxxx
>>> <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>>>> Hello
>>>>
>>>> I have a sequence and want to know whether there are duplicate values in
it.
>>>>
>>>> I came out with the following and think there must be an easy solution.
Any suggestion?
>>>>
>>>> let $sequence :=(1,12,14,17,22,12) return
(count(distinct-values($sequence)) ne count($sequence))
>>>>
>>>>
>>>> Thanks in advance
>>>> Leo
>>>>
>>
>
>
>
> --
> Cheers,
> Dimitre Novatchev
> ---------------------------------------
> Truly great madness cannot be achieved without significant intelligence.
> ---------------------------------------
> To invent, you need a good imagination and a pile of junk
> -------------------------------------
> Never fight an inanimate object
> -------------------------------------
> To avoid situations in which you might make mistakes may be the
> biggest mistake of all
> ------------------------------------
> Quality means doing it right when no one is looking.
> -------------------------------------
> You've achieved success in your field when you don't know whether what
> you're doing is work or play
> -------------------------------------
> To achieve the impossible dream, try going to sleep.
> -------------------------------------
> Facts do not cease to exist because they are ignored.
> -------------------------------------
> Typing monkeys will write all Shakespeare's works in 200yrs.Will they
> write all patents, too? :)
> -------------------------------------
> I finally figured out the only reason to be alive is to enjoy it.

Current Thread