[Zope] Pre-indexing filter and accented letters
Dieter Maurer
dieter at handshake.de
Tue Jun 7 13:23:19 EDT 2005
Yuri wrote at 2005-6-7 10:37 +0200:
> ...
>>Implement a PythonScript that performs the normalization of
>>"context.SearchableText()", say "NormalizedSearchableText".
>>
>>Ensure, it is acquirable by your indexed objects.
>>
>>Index "NormalizedSearchableText" rather than "SearchableText"
>>and use this index for your searches.
>>
>>Ensure, that you perform the same normalization on search
>>terms before you use them in a query.
>>
>>
>
> Weel, I cannot change the index, it already has his name... it is a
>collection of thousands of object, this one I want to pre-filter before
>index are just a small part...
But your index currently has unnormalized values.
Thus, you must rebuild it.
When you rebuild it, you can also give it a different name.
> Or you mean I have to do something about SearchableText()?
Yes, replace it by "NormalizedSearchableText".
> I have to index in a way the user find the term even if it does not use
>accented letters on a current index that already has indexed thousands
>of objects...
I have understood that...
And my advice applied to precisely this situation...
> Can I hook somewhere in the middle, so I Index them in the way I want? :)
You can (and must) normalized the search terms.
However, the indexed values need be normalized, too.
Almost surely, there are not now. This means, rebuilding the
index -- this time with normalization...
--
Dieter
More information about the Zope
mailing list