How can i use multiple Boolean operators in a search query.?

For example , from the search text field , i usually get the queries which
looks like

Any (word or phrase) and ( a list of URI's)
example::   rice land  http\://www.wtr.org/wordlist#c_2379
http\://www.wtr.org/wordlist#c_65748 http\://www.wtr.org/wordlist#c_7612
here the search term or phrase is = rice land
URIs are= http\://www.wtr.org/wordlist#c_2379
http\://www.wtr.org/wordlist#c_65748 http\://www.wtr.org/wordlist#c_7612

Now the way i want to build the Query is::

rice land AND ( http\://www.wtr.org/wordlist#c_2379 OR
http\://www.wtr.org/wordlist#c_65748 OR http\://www.wtr.org/wordlist#c_7612
)

i tried this-

try {
        if (queryString != null && fields != null) {
                  PerFieldAnalyzerWrapper perFieldAnalyzer =
                                        new PerFieldAnalyzerWrapper(analyzer);
                perFieldAnalyzer.addAnalyzer("conceptURI", new
KeywordAnalyzer());

MultiFieldQueryParser mfqp = new MultiFieldQueryParser(
                                                fields, perFieldAnalyzer);
if (queryString.contains("http") && !queryString.startsWith("http")) {

String orgQuery =queryString.substring(0, queryString.indexOf("http"));
                                        String 
uri=queryString.substring(queryString.indexOf("http"),
queryString.length());

uri = uri.trim();
                                        String[] uris = uri.split(" ");
                                        String tempUri="";
                                        for (int i = 0; i < uris.length; i++) {
                                                if(i== uris.length-1){
                                                        tempUri =  tempUri + 
uris[i];
                                                }else {
                                                        tempUri =  tempUri + 
uris[i]+QueryParser.OR_OPERATOR;
                                                }
                                        }

query = mfqp.parse(orgQuery+ QueryParser.AND_OPERATOR+ tempUri );



 is this is the correct way to  form a Query..?? Are there any other
methods?

-- 
View this message in context: 
http://www.nabble.com/Grouping-of-Boolean-opeartors-in-Lucene..--tp20453434p20453434.html
Sent from the Lucene - Java Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to