[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: LDAPprep: mapping of " " values



Kurt D. Zeilenga writes:
>At 06:30 AM 11/19/2004, John McMeeking wrote:
>>I don't see how (l=foo * bar) can match "foo bar" (single space).  Doesn't
>>that require that the trailing and leading spaces in the filter substring
>>match the same character?  The * is supposed to match zero or more
>>characters between two substrings, not allow the substrings to overlap.
>
> It's matching the same trailing/space space in the same sense
> that (l= * ) matches " ".

I don't see in which sense (l= * ) matches " " because of trailing
space.  With the old semantics, both spaces in the filter are
significant.  If we make both spaces insignificant, (l= * ) matches " "
becuase (l=*) does.

Going back to "foo bar": If you mean that (l=foo * bar) also matches
"foobar", yes, it also matches "foo bar".  If we are talking about
fixing things so it does not match "foobar", then I don't see it.  You
have to treat one of the spaces in the filter as insignificant and one
as significant.  While that may indeed be preferable, it should be done
with the intent that there is something one can replace the '*' with to
turn it into a successful equality match.

Or we can explicitly decide that it would be very useful to have "word
matching" semantics, where " * " is to be treated as a "*" where the
substrings on both sides are to be delimited by space - even if it is
the same space.

[Skipping the rest for now, this is complex enough already...]

-- 
Hallvard