|
NAMEKinoSearch1::Search::BooleanQuery - match boolean combinations of QueriesSYNOPSISmy $bool_query = KinoSearch1::Search::BooleanQuery->new; $bool_query->add_clause( query => $term_query, occur => 'MUST' ); my $hits = $searcher->search( query => $bool_query ); DESCRIPTIONBooleanQueries are super-Query objects which match boolean combinations of other Queries.One way of producing a BooleanQuery is to feed a query string along the lines of "this AND NOT that" to a QueryParser object: my $bool_query = $query_parser->parse( 'this AND NOT that' ); It's also possible to achieve the same end by manually constructing the query piece by piece: my $bool_query = KinoSearch1::Search::BooleanQuery->new; my $this_query = KinoSearch1::Search::TermQuery->new( term => KinoSearch1::Index::Term->new( 'bodytext', 'this' ), ); $bool_query->add_clause( query => $this_query, occur => 'MUST' ); my $that_query = KinoSearch1::Search::TermQuery->new( term => KinoSearch1::Index::Term->new( 'bodytext', 'that' ), ); $bool_query->add_clause( query => $that_query, occur => 'MUST_NOT' ); QueryParser objects and hand-rolled Queries can work together: my $general_query = $query_parser->parse($q); my $news_only = KinoSearch1::Search::TermQuery->new( term => KinoSearch1::Index::Term->new( 'category', 'news' ); ); $bool_query->add_clause( query => $general_query, occur => 'MUST' ); $bool_query->add_clause( query => $news_only, occur => 'MUST' ); METHODSnewmy $bool_query = KinoSearch1::Search::BooleanQuery->new; Constructor. Takes no arguments. add_clause$bool_query->add_clause( query => $query, # required occur => 'MUST', # default: 'SHOULD' ); Add a clause to the BooleanQuery. Takes hash-style parameters:
COPYRIGHTCopyright 2005-2010 Marvin HumphreyLICENSE, DISCLAIMER, BUGS, etc.See KinoSearch1 version 1.01.
Visit the GSP FreeBSD Man Page Interface. |