: if the query word is "ABCD",then after being tokenized it is "A" "BC" "D" ,
: l want to boost term "BC" ,so the query word is like this: "A BC^10 D" and
: phrase query "ABCD" . all query words users typing in will be processed
: like that automaticly.

it's not really clear from your example how/when you want to apply this 
boosting -- ie: what makes "BC" special in your example? why boost BC and 
not D?

The best advice i can give you is that if you want to apply boosting at 
querytime the appropriate place to do that is via some sort of QParser -- 
you could either write your own QParser from scratch, supporting whatever 
syntax you would like, and building up the Query objects you want using 
whatever boosts you think make sense as your parse the query.

Alternatively, you could write a QParser that wraps another QParser (like 
dismax vor example) and delegates to it to parse the string and build a 
query -- and then your custom QParser could modify that query object -- 
but this would either require some hardcoded assumptions about what types 
of queries the wrapped parser will produce, or lots of 
introspection/reflection code.


-Hoss

Reply via email to