[Bioperl-l] Bio::Tools::Run::Search proposal

Will Spooner whs at ebi.ac.uk
Wed Aug 25 04:36:50 EDT 2004

I have a proposal for a new BioPerl component which provides a common 
programatic interface to tools used for searching sequence databases 
(wublast, ncbiblast, blat, ssaha etc). It lives in the 
Bio::Tools::Run::Search namespace, but this could easily be changed if 
appropriate. Also, the code already exists, and is being used in anger 
(which is nice).

Functionality is similar to StandAloneBlast, which could easily be 
modified to interface this new system.

If this is of interest, and someone would like to 'sponsor' its inclusion 
into BioPerl, please let me know.

Here's some detail;

       Bio::Tools::Run::Search - Driver for running Sequence
       Database Searches

       use Bio::Tools::Run::Search;
       # Create a new search object
       my $search = new Bio::Tools::Run::Search(-method=>'wublast');

       # Initialise search
       $search->database( '/path/to/my_cdna.fa' ); #method-specific
       $search->seq( $seq );  #Bio::SeqI object
       $search->option( 'E','1' );

       # Run search
       print "Command: ". $search->command . "\n";
       while( $search->running ){ wait( 10 ) }
       if( $search->error ){ die( $search->error );

       # Get results
       print "Report: " . $runnable->report; # Method-specific report
       while( my $res = $runnable->next_result ){ # ResultI object
         foreach my $hsp( map{$_->hits} $res->hits ){ # HSPI object
           # Do stuff

       A driver for running Sequence Database Searches (blast,
       ssaha etc). This object serves as a wrapper for the meth-
       ods in Bio::Tools::Run::Search::*, (similar approach SeqIO
       and SearchIO).

       Search results are available as
       Bio::Search::Result::ResultI objects, or as raw output
       produced by the search method.



William Spooner
whs at ebi.ac.uk

More information about the Bioperl-l mailing list