SLiMSuite REST Server

EdwardsLab Homepage
EdwardsLab Blog
SLiMSuite Blog
REST Pages
REST Status
REST Tools
REST Alias Data
REST Sitemap

rje_blast V1.14

BLAST Control Module

Module: rje_blast
Description: BLAST Control Module
Version: 1.14
Last Edit: 20/08/12

Copyright © 2005 Richard J. Edwards - See source code for GNU License Notice

Imported modules: rje

See SLiMSuite Blog for further documentation. See rje for general commands.


Performs BLAST searches and loads results into objects. Peforms GABLAM conversion of local alignments into global alignment statistics. Remember to set blastp=X: blastx for DNA vs prot; tblastn for Prot vs DNA)


BLASTRun = Full BLAST run
BLASTSearch = Information for a single Query search within a BLASTRun
BLASTHit = Detailed Information for a single Query-Hit pair within BLASTRun
PWAln = Detailed Information for each aligned section of a Query-Hit Pair


blastpath=X : path for blast files [c:/bioware/blast/] *Use fwd slashes (*Cerberus is special!)

blastp=X : BLAST program (BLAST -p X) [blastp]
blasti=FILE : Input file (BLAST -i FILE) [None]
blastd=FILE : BLAST database (BLAST -d FILE) [None]
formatdb=T/F : Whether to (re)format BLAST database [False]
blasto=FILE : Output file (BLAST -o FILE) [*.blast]
blaste=X : E-Value cut-off for BLAST searches (BLAST -e X) [1e-4]
blastv=X : Number of one-line hits per query (BLAST -v X) [500]
blastb=X : Number of hit alignments per query (BLAST -b X) [250]

blastf=T/F : Complexity Filter (BLAST -F X) [True]
blastcf=T/F : Use BLAST Composition-based statistics (BLAST -C X) [False]
blastg=T/F : Gapped BLAST (BLAST -g X) [True]
blasta=X : Number of processors to use (BLAST -a X) [1]
blastopt=FILE : File containing raw BLAST options (applied after all others) []
ignoredate=T/F : Ignore date stamps when deciding whether to regenerate files [False]
gablamfrag=X : Length of gaps between mapped residue for fragmenting local hits [100]
localcut=X : Cut-off length for local alignments contributing to global GABLAM stats) [0]

History Module Version History

    # 0.0 - Initial Working Compilation.
    # 0.1 - No Out Object in Objects
    # 1.0 - Corrected to work with blastn (and blastp)
    # 1.1 - Added special calling for Cerberus
    # 1.2 - Added GABLAM and GABLAMO to BlastHit
    # 1.3 - Added GABLAM calculation upon reading BLAST results and clearing Alignment sequences to save memory
    # 1.4 - Tidied up the module with improved logging and progress reporting. Added dbCleanup.
    # 1.5 - Added checking for multiple hits with same name and modified BLAST_Run.hitToSeq()
    # 1.6 - Added nucleotide vs protein searches to GABLAM
    # 1.7 - Added nucleotide vs nucleotide searches to GABLAM
    # 1.8 - Added local alignment summary output to ReadBLAST()
    # 1.9 - Added BLAST -C
    # 1.10- Added BLAST -g
    # 1.11- Added gablamfrag=X : Length of gaps between mapped residue for fragmenting local hits [100]
    # 1.12- Altered checkDB and cleanupDB to spot index files split over multiple files (*.00.p* etc.)
    # 1.13- Added localcut=X : Cut-off length for local alignments contributing to global GABLAM stats) [0]
    # 1.14- Added blast.checkProg(qtype,stype) to check whether blastp setting matches sequence formats.

rje_blast REST Output formats

The standard REST call is in the form: blast&blasti=FASFILE&blastd=FASFILE&blastprog=X. By default, results
will be parsed into summary tables. If qassemblefas=T, the summary tables will be replaced with alignments of
each query with its hits. Each local alignment is a separate sequence in the alignment unless qconsensus=X is
used to convert QAssemble alignments to consensus sequences.

* qconsensus=Hit converts QAssemble alignments to consensus sequences by Hit sequence.
* qconsensus=Full converts all QAssemble alignments to a single consensus sequence.

When qconsensus=X is used, the most abundant amino acid or nucleotide at each position is used. In the case of
a tie, the query sequence is used if it's one of the options, else the highest ranked one is used.

Run with &rest=docs for program documentation and more options. A plain text version is accessed with &rest=help.
&rest=OUTFMT can be used to retrieve individual parts of the output, matching the tabs in the default
(&rest=format) output. Individual OUTFMT elements can also be parsed from the full (&rest=full) server output,
which is formatted as follows:
... contents for OUTFMT section ...

After running, click on the blastres tab to see overall BLAST search results. The following tables and sequence
file will usually also be output:

Available REST Outputs

blastres = Main BLAST results output file
search = Delimited summary of each search [tab]
hit = Delimited summary of all hit [tab]
local = Delimited table of all local BLAST alignments [tab]
blasti = BLAST search input (queries) [fas]
blastd = BLAST search database [fas]
qassembly = Assembled QAssembly hits as aligned fasta for first query [fas]

NOTE: If run in &qassemblefas=T mode, the search, hit and local tables will not be output. The first
query will have QAssembly output in the qassembly tab. All queries will have also their own tab with their
qassembly alignment, named after their accession numbers.

© 2015 RJ Edwards. Contact: