NAME

Search::GIN::Query::Set - Create queries with set operations

VERSION

version 0.07

SYNOPSIS

# build a query like:
# (type:pdf OR type:png) AND (name:Homer OR name:Bart)

use Search::GIN::Query::Set;
use Search::GIN::Query::Manual;

my $query = Search::GIN::Query::Set->new(
    operation => 'INTERSECT',
    subqueries => [
        Search::GIN::Query::Manual->new(
            values => {
               type => [qw(pdf png)]
            }
        ),
        Search::GIN::Query::Manual->new(
            values => {
               name => [qw(Homer Bart)]
            }
        ),
    ]
);

DESCRIPTION

Creates a manual GIN query that can be used to search using basic set theory, in order to build more complex queries.

This query doesn't provide any specific search, it's just a set operator for subqueries. You can build complex queries by using other set queries as subqueries for a set query.

METHODS/SUBROUTINES

new

Creates a new query.

ATTRIBUTES

subqueries

The subqueries to process

operation

One of the basic set operators: "UNION", "INTERSECT" and "EXCEPT". The default is "UNION"

AUTHOR

Yuval Kogman <nothingmuch@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by Yuval Kogman, Infinity Interactive.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.