[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: Filter - greater or equal - ORDERING
Tony Earnshaw writes:
> Andreas Schoe skrev, on 23-11-2007 10:18:
>
>> I want to use following filter: "uid>=branch" (greater or equal).
>
> Well, my gq says that the attribute uid is caseignoreMatch for
> *equality*. IOW it's a string subtype match. You can't "greater or
> equal" a string, you can glob it or whatever and be subject to its rules.
Yes you can, that's what an ORDERING matching rule is for. But as
Dieter said, it's a bad idea to modify the schema definition of standard
attributes. Also you can't index for caseExactOrderingMatch.
> (...)
> Nope, the filter is just wrong.
The filter would be fine if uid has an ORDERING rule.
(Well, except filers should have parens around them: "(uid>=branch)".
Not all clients insert missing parens.)
As far as I can tell from the LDAP standard, the extended filter
(&(uid=*)(!(uid:caseExactOrderingMatch:=branch)))
should work, but it doesn't. (uid is present and is not smaller than
"branch".) I may have said that before, but I don't remember if the
answer is that I'm confused or that I should have filed an ITS.
--
Regards,
Hallvard