Revision 685361
Go back to digest for 15th July 2007Features in KDE Base
Added keyword query type.
it works like this:
One string is split by space delimiters into subqueries, by default with AND logic, and then each term (each subquery), goes through an analyzer.
The analyzer used depends on the query type. It caused troubles when trying to search for an identifier, which contains special characters (serving as tokenizers).
This patch modifies query parser the way that if you say:
chemistry.inchi#InChI=1/C4H10/c1-3-4-2/h3-4H2,1-2H3 the string will not be split into fragments. (note the "#" character instead of ":" )
If the query term contains spaces it should be inside '' or "" quotes.
e.g. chemistry.molecular_formula#"C 4 H 10"
basically "#" sign tells -- do not tokenize.
and quotes control the integrity of terms, so they won't get split into subqueries.
File Changes
- /trunk/kdesupport/strigi/src/streamanalyzer
- /query.cpp
- /query.h
- /queryparser.cpp