Hi everyone !
First post to the list, I'd like to congratulate first PyLucene devs
for the good piece of integration that PyLucene is.
I'm trying to fire a prohibited request on a field
I've tried many things, including going through QueryParser, nothing
worked so far (I always get 0 matches, which is wrong).
This is on PyLucene 1.9.1 (upgrading isn't a option, sadly).
Say I want documents for which the value of the field 'status' is
"hidden" *not* to match (the end use-case will actually need
intersection with clauses on other fields ).
QueryParser attempts:
>>> anal = PyLucene.KeyWordAnalyser()
>>> query = PyLucene.QueryParser('status', anal).parseQuery(query_str)
wih query_str being:
"-status:hidden" (*** Fault: <Fault 8002: 'error'>)
"status:-hidden"
"status:(-hidden)"
"-hidden" (after all, the field is already specified in the instance
constructor)
My latest programatic attempt is:
>>> anal = PyLucene.KeyWordAnalyzer()
>>> b_query = PyLucene.TermQuery(PyLucene.Term("status", 'hidden'))
>>> n_query = PyLucene.BooleanQuery()
>>> n_query.add(PyLucene.BooleanClause(b_query, False, True))
Here's what toString says:
>>> n_query.toString()
'-status:hidden'
which is also exactly what I got for the three latest values of
query_str fed to QueryParser.
The search call itself is done as following: (the searcher object is
a LuceneSearcher instance that
works as expected if I use it, e.g., on the simpler b_query instead
of n_query).
>>> query = n_query
>>> hits = searcher.get().search(query, PyLucene.Sort.RELEVANCE)
>>> hits.length()
0
I'm a bit worried that the QueryParser syntax documentation at
http://lucene.apache.org/java/docs/queryparsersyntax.html#NOT
does give examples of the '-' and 'NOT' syntaxes, of which none is
per-field...
So, I'm wondering.... is this actually supposed to work ?
Any help or hint would be greatly appreciated !
Many thanks,
---------
Georges Racinet, Nuxeo SAS
Open Source Enterprise Content Management (ECM)
Web: http://www.nuxeo.com/ and http://www.nuxeo.org/ - Tel: +33 1 40
33 79 87
_______________________________________________
pylucene-dev mailing list
[email protected]
http://lists.osafoundation.org/mailman/listinfo/pylucene-dev