Bio::DB::QueryI - Object Interface to queryable sequence databases
# using Bio::DB::Query::GenBank as an example
my $query_string = 'Oryza[Organism] AND EST[Keyword]';
my $query = Bio::DB::Query::GenBank->new(-db=>'nucleotide',
-query=>$query_string);
my $count = $query->count;
my @ids = $query->ids;
# get a genbank database handle
$gb = Bio::DB::GenBank->new();
my $stream = $db->get_Stream_by_query($query);
while (my $seq = $stream->next_seq) {
...
}
# initialize the list yourself
my $query = Bio::DB::Query::GenBank->new(-ids=>['X1012','CA12345']);
This interface provides facilities for managing sequence queries such as those
offered by Entrez. A query object is created by calling
new() with a
database-specific argument list. From the query object you can either obtain
the list of IDs returned by the query, or a count of entries that would be
returned. You can pass the query object to a Bio::DB::RandomAccessI object to
return the entries themselves as a list or a stream.
User feedback is an integral part of the evolution of this and other Bioperl
modules. Send your comments and suggestions preferably to one of the Bioperl
mailing lists. Your participation is much appreciated.
[email protected] - General discussion
http://bioperl.org/wiki/Mailing_lists - About the mailing lists
Please direct usage questions or support issues to the mailing list:
[email protected]
rather than to the module maintainer directly. Many experienced and reponsive
experts will be able look at the problem and quickly address it. Please
include a thorough description of the problem with code and data examples if
at all possible.
Report bugs to the Bioperl bug tracking system to help us keep track the bugs
and their resolution. Bug reports can be submitted via the web:
https://github.com/bioperl/bioperl-live/issues
Email
[email protected]
The rest of the documentation details each of the object methods. Internal
methods are usually preceded with a _
Title : new
Usage : $db = Bio::DB::QueryI->new(@args);
Function: constructor
Returns : QueryI object
Args : -query a query string
-ids a list of ids as an arrayref
Create new QueryI object. You may initialize with either a query string or with
a list of ids. If both ids and a query are provided, the former takes
precedence.
Subclasses may recognize additional arguments.
Title : count
Usage : $count = $db->count;
Function: return count of number of entries retrieved by query
Returns : integer
Args : none
Returns the number of entries that are matched by the query.
Title : ids
Usage : @ids = $db->ids([@ids])
Function: get/set matching ids
Returns : array of sequence ids
Args : (optional) array ref with new set of ids
Title : query
Usage : $query = $db->query([$query])
Function: get/set query string
Returns : string
Args : (optional) new query string