On Feb 9, 2007, at 5:40 AM, Kainth, Sachin wrote:
It makes sense to me only if you tell me that all the bits in the
BitSet
"all" will be 1.
well, ok, so the "all" may be misleading. call it queryBits instead
then :)
"all" means *all documents that match the query*, though.
it wouldn't make sense to AND a bitset with one that is all 1's always.
Erik
-----Original Message-----
From: Erik Hatcher [mailto:[EMAIL PROTECTED]
Sent: 08 February 2007 18:37
To: java-user@lucene.apache.org
Subject: Re: categorisation
On Feb 8, 2007, at 12:36 PM, Kainth, Sachin wrote:
Chris has given an example of how to perform categorisation of lucene
searches:
String[] mfgs = ...;
String query = "+category:cameras +price:[0 to 10]";
Query q = QueryParser.parse(query);
Hits results = searcher.search(q, mySort)
BitSet all = (new QueryFilter(q)).bits(reader)
int[] mfg_counts = new int[mfgs.length];
for i in (0 to mfgs.length) {
BitSet these = (new QueryFilter(new TermQuery("mfg",mfgs
[i]))).bits(reader);
these.and(all)
mfg_counts[i] = these.cardinality();
}
What I don't understand though is what this line does:
BitSet all = (new QueryFilter(q)).bits(reader)
Anyone have any ideas?
"all" is a BitSet lit up for the documents that matched "query".
"these" (the BitSet for a particular category) is .anded with "all"
to get the counts _left over_ for each category given "query".
Make sense?
Erik
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
This message has been scanned for viruses by MailControl - (see
http://bluepages.wsatkins.co.uk/?4318150)
This email and any attached files are confidential and copyright
protected. If you are not the addressee, any dissemination of this
communication is strictly prohibited. Unless otherwise expressly
agreed in writing, nothing stated in this communication shall be
legally binding.
The ultimate parent company of the Atkins Group is WS Atkins plc.
Registered in England No. 1885586. Registered Office Woodcote
Grove, Ashley Road, Epsom, Surrey KT18 5BW.
Consider the environment. Please don't print this e-mail unless you
really need to.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]