Thanks for asking these questions. They have caused me to think a little more deeply about the meaning of score and scoreCeiling. I think I need to change the api a little.
CH> score – what are the minimum and maximum values? is it like a percent (0 to 100)? or 0 to 1.0?
I don't think there is a minimum or maximum score. The only contract is that higher scores indicate a better match. Some googling suggest that scores can even be negative. See, for instance, http://stackoverflow.com/questions/8918224/what-is-the-maximum-value-of-a-lucene-score
CH> keycolumns – comma-separated list, I gather?
Right. Its a vararg, a variable length (possibly empty) comma-separated list.
CH> Under "Querying an index", a line in the returned table says
CH> DOCUMENT ID INT,
CH> This is supposed to be
CH> DOCUMENTID INT,
CH> isn't it?
Right. Sorry about that.
CH> I thought with a score the higher values indicated a better
CH> match. So why would you only want to return results with scores under
CH> a certain value (SCORECEILING)?
This is how you page through blocks of Lucene results. Let's compare this to the SQL LIMIT/OFFSET clause. In SQL, you can use LIMIT/OFFSET to say "start at the nth row and give me the next m results". With Lucene you say "start at score n and give me the next m results".
CH> And what would specifying a SCORECEILING of 0 do? I thought it would produce no results.
I need to fix this. Right now the plugin treats 0 as a special value meaning "no scoreCeiling, start from the top". I want to change this so that 0 is just another score value and, instead, use null to mean "no scoreCeiling, start from the top". Thanks for bringing this up!
CH> Under "Classpath" – Where do you get the Lucene jars?
A version of Lucene is checked into the Derby source tree. The three jars you need are in tools/java. They are the 4.7.1 Lucene jars. You can get other versions from the Lucene website at http://lucene.apache.org/core/.