NAME

Bio::Tools::Blast::Run::Webblast.pm - Bioperl module for running Blast analyses remotely.

SYNOPSIS

This module is wrapped by the Bio::Tools::Blast.pm module and is intended for use via that module. This module can be used separately if desired:

   use Bio::Tools::Blast::Run::Webblast qw(&blast_remote);

   &blast_remote($blast_object, %runParam);

See blast_remote() for a description of available parameters.

This module also exports the following arrays:

@Blast_dbp_remote     - Available Blast peptide sequence databases
@Blast_dbn_remote     - Available Blast nucleotide sequence databases
@Blast_matrix_remote  - Available substitution scoring matrices

INSTALLATION

This module is included with the central Bioperl distribution:

http://bio.perl.org/Core/Latest
ftp://bio.perl.org/pub/DIST

Follow the installation instructions included in the README file.

DESCRIPTION

Bio::Tools::Blast::Run::Webblast.pm executes a Blast request on an NCBI server by mimicking a web (http) client. This module exports a single function blast_remote(). See the docs for that method for detailed information.

Webblast.pm is derived from the stand alone webblast script by Alex Dong Li:

http://www.genet.sickkids.on.ca/bioinfo_resources/software.html#webblast

DEPENDENCIES

Bio::Tools::Blast::Run::Webblast.pm is used by Bio::Tools::Blast.pm and requires postclient.pl for submitting requests Blast server. This script is included with the distribution package. postclient.pl should be located in the same directory as Bio::Tools::Blast::Run::Webblast.pm.

Bio::Tools::Blast::Run::Webblast.pm also uses Bio::Seq.pm objects. The development of this module is somewhat linked with Bio::Tools::Blast.pm module and should be updated along with that module.

BUGS

  • Support for other Blast servers.

    While in theory this module can be used to run a Blast on any remote server, it is currently specialized for the NCBI (or NCBI-conforming) servers. The main source of this dependency is the configuration of options sent to the server (see _blast()). There may also be some dependency in the processing of the results files returned from the server, although I have tried to remove these (sac).

  • PSI-Blast support.

    PSI-Blast is not supported. Using a -version => 'psi' parameter will appear to execute properly but in the resulting file, only the header is obtained.

  • Reply by e-mail.

    Reply by e-mail is supported but will generate an error since there is no associated file containing the Blast results. E-mail reply is probably not appropriate in this module context since we are typically parsing the results immediately after the run and we therefore need access to the file. Still, e-mail could be used if necessary.

FEEDBACK

Mailing Lists

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.

vsns-bcd-perl@lists.uni-bielefeld.de          - General discussion
vsns-bcd-perl-guts@lists.uni-bielefeld.de     - Technically-oriented discussion
http://bio.perl.org/MailList.html             - About the mailing lists

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. Bug reports can be submitted via email or the web:

bioperl-bugs@bio.perl.org                   
http://bio.perl.org/bioperl-bugs/           

AUTHOR

Steve A. Chervitz, sac@genome.stanford.edu

VERSION

Bio::Tools::Blast::Run::Webblast.pm, 1.1

TODO

  • Handle running PSI-Blasts.

  • Retrieve gif files by getclient (for graphical overview).

  • Bring up-to-date with latest changes in the forms used by the NCBI servers.

  • Enable blast_remote() to handle lists of sequence filenames in addition to Bio::Seq.pm objects.

SEE ALSO

Bio::Tools::Blast.pm                    - Blast object.
Bio::Tools::Blast::Run::postclient.pl   - Script for accessing remote server.
Bio::Tools::Blast::Run::LocalBlast.pm   - Utility module for running Blasts locally.
Bio::Tools::Blast::HTML.pm              - Blast HTML-formating utility class.
Bio::Seq.pm                             - Biosequence object  


http://bio.perl.org/Projects/modules.html  - Online module documentation
http://bio.perl.org/Projects/Blast/        - Bioperl Blast Project     
http://bio.perl.org/                       - Bioperl Project Homepage

COPYRIGHT

Copyright (c) 1998 Alex Dong Li/Steve A. Chervitz. All Rights Reserved. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

APPENDIX

Methods beginning with a leading underscore are considered private and are intended for internal use by this module. They are not considered part of the public interface and are described here for documentation purposes only.

blast_remote

Usage     : @files = blast_remote( $blast_object,  %namedParameters);
          : This method is exported.
Purpose   : Run a remote Blast analysis on one or more sequences.
Returns   : Array containing a list of filenames of the Blast reports.
Argument  : First argument should be a Bio::Tools::Blast.pm object reference.
          : This object is primarily used for error reporting
          : Remaining arguments are named parameters: 
          : (PARAMETER TAGS CAN BE UPPER OR LOWER CASE).
          :
          :   -SEQS       => ref to an array of Bio::Seq.pm objects. 
          :   -PROG       => name of blast program (blastp, blastx, etc.)
          :   -VERSION    => blast version (1 or 2)
          :   -DATABASE   => name of database (see below.)
          :   -EXPECT     => expect value cutoff
          :   -EXPECT_PSI => expect value for inclusion in PSI-BLAST iteration 1 
          :   -FILTER     => sequence complexity filter ('default' or 'none')
          :   -MATRIX     => substitution scoring matrix (blast1 only for NCBI server)
          :   -NCBI_GI    => 'on' or 'off'
          :   -DESCR      => integer, number of on-line descriptions (V, 100)
          :   -ALIGN      => integer, number of alignments (B, 100)
          :   -GRAPH      => 'on' or 'off' (graphical overview not yet supported)
          :   -GAP        => 'on' or 'off'
          :   -GEN_CODE   => integer for special genetic code (see below) blastx only
          :   -HTML       => 'on' or 'off' or 'both'
          :   -SERVER     => blast server to use (default is NCBI Blast2)
          :   -MAX_LEN    => max query sequence length to blast
          :   -MIN_LEN    => min query sequence length to blast
          :   -OUT_DIR    => output directory to store blast result files
          :   -GAP_CREATE => gap creation penalty (G, 5) 
          :   -GAP_EXTEND => gap extension penalty (E, 2)
          :   -MISMATCH   => mismatch penalty (q, -3)  (blastn only)
          :   -MATCH      => match reward (r, 1)       (blastn only)
          :   -WORD       => word size (W, 11 for blastn, 3 for all others)
          :
Throws    : Exception if:
          :   - Cannot obtain parameters by calling _rearrange() on the
          :     first argument, which should be a Bio::Tools::Blast.pm object ref.
          :   - No sequences are provided.
          :   - Sequence type is incompatible with Blast program type.
          :   - Database name is not one of the valid names.
          :   - Supplied e-mail address looks invalid.
Comments  :
 -------------------------------------------------------------
 Available programs: blastn, blastx, dbest, blastp, tblastn, tblastx
 Program versions: 1, 2. (Support for PSI-Blasts is incomplete).

 -------------------------------------------------------------
 Available databases are: nr, month, swissprot, dbest, dbsts, 
       est_mouse, est_human, est_others, pdb, vector, kabat,
       mito, alu, epd, yeast, ecoli, gss, htgs.

   These are exported by this module in the @Blast_dbp_remote
   and @Blast_dbn_remote arrays.
 -------------------------------------------------------------
 Available Genetic Codes are (blastx only): 
       (1) Standard                    (2) Vertebrate Mitochondrial
       (3) Yeast Mitochondrial         (4) Mold Mitochondrial; ... 
       (5) Invertebrate Mitochondrial  (6) Ciliate Nuclear; ...
       (9) Echinoderm Mitochondrial    (10) Euplotid Nuclear
       (11) Bacterial                  (12) Alternative Yeast Nuclear
       (13) Ascidian Mitochondrial     (14) Flatworm Mitochondrial
       (15) Blepharisma Macronuclear

 -------------------------------------------------------------
 Available substitution scoring matrices (NCBI):
     BLOSUM62, PAM40, PAM120, PAM250, IDENTITY.
     Others members of the BLOSUM and PAM family of matrices
     may be available as well.
     These are exported by this module in the @Blast_matrix_remote array.

     Note that certain combinations of matrices and gap creation/extension
     penalties are disallowed (E.g., PAM250 will work with 12/2 but not 11/1).
--------------------------------------------------------------
  Limited values for gap creation and extension are supported for 
  blastp, blastx, tblastn.  Some supported and suggested values are:

 Creation     Extension

    10             1
    10             2
    11             1
     8             2
     9             2
 -------------------------------------------------------------
 Available sequence complexity filters:
      SEG, SEG+XNU, XNU, dust, none.

See Also : _set_options(), _adjust_options(), _validate_options(), _blast(), Bio::Tools::Blast.pm

1 POD Error

The following errors were encountered while parsing the POD:

Around line 141:

Can't have a 0 in =over 0