Subject: Re: [xsl] A nice way to implement the ANDing of the comparison of pairs of items in a sequence? From: Wolfgang Laun <wolfgang.laun@xxxxxxxxx> Date: Fri, 6 Sep 2013 09:41:22 +0200 |
I guess any implementation would use incrementing position values anyway, but is this kind of filtering *defined* to be stable, i.e., preserving the relative order of items? -W On 05/09/2013, Michael Kay <mike@xxxxxxxxxxxx> wrote: > > How about > > deep-equal($v[position() mod 2 = 0], $v[position() mod 2 = 1]) > > Michael Kay > Saxonica > > On 5 Sep 2013, at 19:51, Costello, Roger L. wrote: > >> Hi Folks, >> >> The value of this variable is a sequence of strings: >> >> <xsl:variable name="checkPairs" >> select="('Sally', 'Sally', 'Beth', 'Beth', 'Mary', 'Mary')" >> as="xs:string*"/> >> >> I want to compare consecutive items and then AND the result of the >> comparisons. >> >> That is, compare the first string to the second string, the third string >> to the fourth string, the fifth string to the sixth string, and so on. >> Then AND the results together. >> >> Thus, >> >> ('Sally' eq 'Sally') and ('Beth' eq 'Beth') and ('Mary' eq 'Mary') >> >> returns true. >> >> But if the variable is this: >> >> <xsl:variable name="checkPairs" >> select="('Sally', 'Beth', 'Beth', 'Beth', 'Mary', 'Mary')" >> as="xs:string*"/> >> >> the result is false since >> >> ('Sally' eq 'Beth') and ('Beth' eq 'Beth') and ('Mary' eq 'Mary') >> >> is false. >> >> Is there a nice way to implement this? >> >> /Roger
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] A nice way to implement t, G. Ken Holman | Thread | Re: [xsl] A nice way to implement t, Michael Kay |
Re: [xsl] A nice way to implement t, G. Ken Holman | Date | Re: [xsl] A nice way to implement t, Michael Kay |
Month |