Hi Steve, I would store my documents as queries in your case. You may find these relevant.
http://lucene.apache.org/core/4_0_0-BETA/memory/org/apache/lucene/index/memory/MemoryIndex.html http://www.elasticsearch.org/blog/2011/02/08/percolator.html --- On Sun, 11/4/12, SR <r.steve....@gmail.com> wrote: > From: SR <r.steve....@gmail.com> > Subject: Re: All document keywords must match the query keywords > To: solr-user@lucene.apache.org > Date: Sunday, November 4, 2012, 4:16 AM > Thanks Jack. > > This is not the ultimate goal of my search system; it's only > one of the features I need. I don't need "best" and > "restaurant" to match in this feature. > > Yes, I do have the semantic of query backwards, and that's > what I need in my application. > > -S > > > On 2012-11-03, at 10:05 PM, Jack Krupansky wrote: > > > But neither "best" nor "restaurant" are in any of the > documents, so how are any of these documents reasonable > matches? > > > > You have the semantics of query backwards. The > documents are the "data" and the query is the "operation" to > be performed on the data. The intent of a query is to > specify what documents should be selected. That is the > function/purpose of any query, in any search system. > > > > -- Jack Krupansky > > > > -----Original Message----- From: SR > > Sent: Saturday, November 03, 2012 5:09 PM > > To: solr-user@lucene.apache.org > > Subject: Re: All document keywords must match the query > keywords > > > > > > On 2012-11-03, at 12:55 PM, Gora Mohanty wrote: > > > >> On 3 November 2012 22:17, SR <r.steve....@gmail.com> > wrote: > >> > >>> Solr 4.0 > >>> > >>> I need to return documents when all their > keywords are matching the query. > >>> In other words, all the document keywords > should match the query keywords > >>> > >>> e.g., query: best chinese food restaurant > >>> > >>> doc1: chinese food > >>> doc2: italian food > >>> doc3: chinese store > >>> > >>> Only doc1 should be returned ("chinese food" is > matching the query). > >>> > >>> Any idea on how this can be achieved? > >>> > >> > >> Not sure what you mean by all the keywords should > match, given your > >> examples above. doc2 will match because of "food" > and doc3 will match > >> because of "chinese". > >> > >> If you really want all search terms to be matched, > you can change the > >> default operator for solrQueryParser in schema.xml > from OR to AND, > >> but in your example even doc1 will not match as you > are searching > >> for "best chinese food restaurant". If you searched > for "chinese food" > >> it would match. > >> > >> Regards, > >> Gora > > > > Hi Gora, > > > > I really meant that. doc 2 shouldn't match because > "italian" is not in the query. Same thing for doc3 with > "store". It's like applying an AND but on the document > keywords, instead of the query keywords. > > > > Thanks, > > -S= > >