Mercurial > repos > devteam > blast_datatypes
comparison tools/ncbi_blast_plus/ncbi_blastp_wrapper.xml @ 2:45ba7c750bc8 draft
This update should have no functional effect. Renamed files (since xml.py will be inaccurate once BLAST databases are added in future update).
author | peterjc |
---|---|
date | Thu, 20 Sep 2012 10:12:43 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
1:10dce68b584b | 2:45ba7c750bc8 |
---|---|
1 <tool id="ncbi_blastp_wrapper" name="NCBI BLAST+ blastp" version="0.0.13"> | |
2 <description>Search protein database with protein query sequence(s)</description> | |
3 <!-- If job splitting is enabled, break up the query file into parts --> | |
4 <parallelism method="multi" split_inputs="query" split_mode="to_size" split_size="1000" shared_inputs="subject" merge_outputs="output1"></parallelism> | |
5 <version_command>blastp -version</version_command> | |
6 <command> | |
7 ## The command is a Cheetah template which allows some Python based syntax. | |
8 ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces | |
9 blastp | |
10 -query "$query" | |
11 #if $db_opts.db_opts_selector == "db": | |
12 -db "${db_opts.database.fields.path}" | |
13 #else: | |
14 -subject "$db_opts.subject" | |
15 #end if | |
16 -task $blast_type | |
17 -evalue $evalue_cutoff | |
18 -out $output1 | |
19 ##Set the extended list here so if/when we add things, saved workflows are not affected | |
20 #if str($out_format)=="ext": | |
21 -outfmt "6 std sallseqid score nident positive gaps ppos qframe sframe qseq sseq qlen slen" | |
22 #else: | |
23 -outfmt $out_format | |
24 #end if | |
25 -num_threads 8 | |
26 #if $adv_opts.adv_opts_selector=="advanced": | |
27 $adv_opts.filter_query | |
28 -matrix $adv_opts.matrix | |
29 ## Need int(str(...)) because $adv_opts.max_hits is an InputValueWrapper object not a string | |
30 ## Note -max_target_seqs overrides -num_descriptions and -num_alignments | |
31 #if (str($adv_opts.max_hits) and int(str($adv_opts.max_hits)) > 0): | |
32 -max_target_seqs $adv_opts.max_hits | |
33 #end if | |
34 #if (str($adv_opts.word_size) and int(str($adv_opts.word_size)) > 0): | |
35 -word_size $adv_opts.word_size | |
36 #end if | |
37 ##Ungapped disabled for now - see comments below | |
38 ##$adv_opts.ungapped | |
39 $adv_opts.parse_deflines | |
40 ## End of advanced options: | |
41 #end if | |
42 </command> | |
43 <stdio> | |
44 <exit_code range="1:" /> | |
45 <exit_code range="://0" /> | |
46 </stdio> | |
47 <inputs> | |
48 <param name="query" type="data" format="fasta" label="Protein query sequence(s)"/> | |
49 <conditional name="db_opts"> | |
50 <param name="db_opts_selector" type="select" label="Subject database/sequences"> | |
51 <option value="db" selected="True">BLAST Database</option> | |
52 <option value="file">FASTA file (pairwise e-values)</option> | |
53 </param> | |
54 <when value="db"> | |
55 <param name="database" type="select" label="Protein BLAST database"> | |
56 <options from_file="blastdb_p.loc"> | |
57 <column name="value" index="0"/> | |
58 <column name="name" index="1"/> | |
59 <column name="path" index="2"/> | |
60 </options> | |
61 </param> | |
62 <param name="subject" type="hidden" value="" /> | |
63 </when> | |
64 <when value="file"> | |
65 <param name="database" type="hidden" value="" /> | |
66 <param name="subject" type="data" format="fasta" label="Protein FASTA file to use as database"/> | |
67 </when> | |
68 </conditional> | |
69 <param name="blast_type" type="select" display="radio" label="Type of BLAST"> | |
70 <option value="blastp">blastp</option> | |
71 <option value="blastp-short">blastp-short</option> | |
72 </param> | |
73 <param name="evalue_cutoff" type="float" size="15" value="0.001" label="Set expectation value cutoff" /> | |
74 <param name="out_format" type="select" label="Output format"> | |
75 <option value="6" selected="True">Tabular (standard 12 columns)</option> | |
76 <option value="ext">Tabular (extended 24 columns)</option> | |
77 <option value="5">BLAST XML</option> | |
78 <option value="0">Pairwise text</option> | |
79 <option value="0 -html">Pairwise HTML</option> | |
80 <option value="2">Query-anchored text</option> | |
81 <option value="2 -html">Query-anchored HTML</option> | |
82 <option value="4">Flat query-anchored text</option> | |
83 <option value="4 -html">Flat query-anchored HTML</option> | |
84 <!-- | |
85 <option value="-outfmt 11">BLAST archive format (ASN.1)</option> | |
86 --> | |
87 </param> | |
88 <conditional name="adv_opts"> | |
89 <param name="adv_opts_selector" type="select" label="Advanced Options"> | |
90 <option value="basic" selected="True">Hide Advanced Options</option> | |
91 <option value="advanced">Show Advanced Options</option> | |
92 </param> | |
93 <when value="basic" /> | |
94 <when value="advanced"> | |
95 <!-- Could use a select (yes, no, other) where other allows setting 'window locut hicut' --> | |
96 <param name="filter_query" type="boolean" label="Filter out low complexity regions (with SEG)" truevalue="-seg yes" falsevalue="-seg no" checked="false" /> | |
97 <param name="matrix" type="select" label="Scoring matrix"> | |
98 <option value="BLOSUM90">BLOSUM90</option> | |
99 <option value="BLOSUM80">BLOSUM80</option> | |
100 <option value="BLOSUM62" selected="true">BLOSUM62 (default)</option> | |
101 <option value="BLOSUM50">BLOSUM50</option> | |
102 <option value="BLOSUM45">BLOSUM45</option> | |
103 <option value="PAM250">PAM250</option> | |
104 <option value="PAM70">PAM70</option> | |
105 <option value="PAM30">PAM30</option> | |
106 </param> | |
107 <!-- Why doesn't optional override a validator? I want to accept an empty string OR a non-negative integer --> | |
108 <param name="max_hits" type="integer" value="0" label="Maximum hits to show" help="Use zero for default limits"> | |
109 <validator type="in_range" min="0" /> | |
110 </param> | |
111 <!-- I'd like word_size to be optional, with minimum 2 for blastp --> | |
112 <param name="word_size" type="integer" value="0" label="Word size for wordfinder algorithm" help="Use zero for default, otherwise minimum 2."> | |
113 <validator type="in_range" min="0" /> | |
114 </param> | |
115 <!-- | |
116 Can't use '-ungapped' on its own, error back is: | |
117 Composition-adjusted searched are not supported with an ungapped search, please add -comp_based_stats F or do a gapped search | |
118 Tried using '-ungapped -comp_based_stats F' and blastp crashed with 'Attempt to access NULL pointer.' | |
119 <param name="ungapped" type="boolean" label="Perform ungapped alignment only?" truevalue="-ungapped -comp_based_stats F" falsevalue="" checked="false" /> | |
120 --> | |
121 <param name="parse_deflines" type="boolean" label="Should the query and subject defline(s) be parsed?" truevalue="-parse_deflines" falsevalue="" checked="false" help="This affects the formatting of the query/subject ID strings"/> | |
122 </when> | |
123 </conditional> | |
124 </inputs> | |
125 <outputs> | |
126 <data name="output1" format="tabular" label="${blast_type.value_label} on ${db_opts.db_opts_selector}"> | |
127 <change_format> | |
128 <when input="out_format" value="0" format="txt"/> | |
129 <when input="out_format" value="0 -html" format="html"/> | |
130 <when input="out_format" value="2" format="txt"/> | |
131 <when input="out_format" value="2 -html" format="html"/> | |
132 <when input="out_format" value="4" format="txt"/> | |
133 <when input="out_format" value="4 -html" format="html"/> | |
134 <when input="out_format" value="5" format="blastxml"/> | |
135 </change_format> | |
136 </data> | |
137 </outputs> | |
138 <requirements> | |
139 <requirement type="binary">blastp</requirement> | |
140 </requirements> | |
141 <tests> | |
142 <test> | |
143 <param name="query" value="four_human_proteins.fasta" ftype="fasta" /> | |
144 <param name="db_opts_selector" value="file" /> | |
145 <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" /> | |
146 <param name="database" value="" /> | |
147 <param name="evalue_cutoff" value="1e-8" /> | |
148 <param name="blast_type" value="blastp" /> | |
149 <param name="out_format" value="5" /> | |
150 <param name="adv_opts_selector" value="advanced" /> | |
151 <param name="filter_query" value="False" /> | |
152 <param name="matrix" value="BLOSUM62" /> | |
153 <param name="max_hits" value="0" /> | |
154 <param name="word_size" value="0" /> | |
155 <param name="parse_deflines" value="True" /> | |
156 <output name="output1" file="blastp_four_human_vs_rhodopsin.xml" ftype="blastxml" /> | |
157 </test> | |
158 <test> | |
159 <param name="query" value="four_human_proteins.fasta" ftype="fasta" /> | |
160 <param name="db_opts_selector" value="file" /> | |
161 <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" /> | |
162 <param name="database" value="" /> | |
163 <param name="evalue_cutoff" value="1e-8" /> | |
164 <param name="blast_type" value="blastp" /> | |
165 <param name="out_format" value="6" /> | |
166 <param name="adv_opts_selector" value="advanced" /> | |
167 <param name="filter_query" value="False" /> | |
168 <param name="matrix" value="BLOSUM62" /> | |
169 <param name="max_hits" value="0" /> | |
170 <param name="word_size" value="0" /> | |
171 <param name="parse_deflines" value="True" /> | |
172 <output name="output1" file="blastp_four_human_vs_rhodopsin.tabular" ftype="tabular" /> | |
173 </test> | |
174 <test> | |
175 <param name="query" value="four_human_proteins.fasta" ftype="fasta" /> | |
176 <param name="db_opts_selector" value="file" /> | |
177 <param name="subject" value="rhodopsin_proteins.fasta" ftype="fasta" /> | |
178 <param name="database" value="" /> | |
179 <param name="evalue_cutoff" value="1e-8" /> | |
180 <param name="blast_type" value="blastp" /> | |
181 <param name="out_format" value="ext" /> | |
182 <param name="adv_opts_selector" value="advanced" /> | |
183 <param name="filter_query" value="False" /> | |
184 <param name="matrix" value="BLOSUM62" /> | |
185 <param name="max_hits" value="0" /> | |
186 <param name="word_size" value="0" /> | |
187 <param name="parse_deflines" value="True" /> | |
188 <output name="output1" file="blastp_four_human_vs_rhodopsin_ext.tabular" ftype="tabular" /> | |
189 </test> | |
190 <test> | |
191 <param name="query" value="rhodopsin_proteins.fasta" ftype="fasta" /> | |
192 <param name="db_opts_selector" value="file" /> | |
193 <param name="subject" value="four_human_proteins.fasta" ftype="fasta" /> | |
194 <param name="database" value="" /> | |
195 <param name="evalue_cutoff" value="1e-8" /> | |
196 <param name="blast_type" value="blastp" /> | |
197 <param name="out_format" value="6" /> | |
198 <param name="adv_opts_selector" value="basic" /> | |
199 <output name="output1" file="blastp_rhodopsin_vs_four_human.tabular" ftype="tabular" /> | |
200 </test> | |
201 </tests> | |
202 <help> | |
203 | |
204 .. class:: warningmark | |
205 | |
206 **Note**. Database searches may take a substantial amount of time. | |
207 For large input datasets it is advisable to allow overnight processing. | |
208 | |
209 ----- | |
210 | |
211 **What it does** | |
212 | |
213 Search a *protein database* using a *protein query*, | |
214 using the NCBI BLAST+ blastp command line tool. | |
215 | |
216 ----- | |
217 | |
218 **Output format** | |
219 | |
220 Because Galaxy focuses on processing tabular data, the default output of this | |
221 tool is tabular. The standard BLAST+ tabular output contains 12 columns: | |
222 | |
223 ====== ========= ============================================ | |
224 Column NCBI name Description | |
225 ------ --------- -------------------------------------------- | |
226 1 qseqid Query Seq-id (ID of your sequence) | |
227 2 sseqid Subject Seq-id (ID of the database hit) | |
228 3 pident Percentage of identical matches | |
229 4 length Alignment length | |
230 5 mismatch Number of mismatches | |
231 6 gapopen Number of gap openings | |
232 7 qstart Start of alignment in query | |
233 8 qend End of alignment in query | |
234 9 sstart Start of alignment in subject (database hit) | |
235 10 send End of alignment in subject (database hit) | |
236 11 evalue Expectation value (E-value) | |
237 12 bitscore Bit score | |
238 ====== ========= ============================================ | |
239 | |
240 The BLAST+ tools can optionally output additional columns of information, | |
241 but this takes longer to calculate. Most (but not all) of these columns are | |
242 included by selecting the extended tabular output. The extra columns are | |
243 included *after* the standard 12 columns. This is so that you can write | |
244 workflow filtering steps that accept either the 12 or 24 column tabular | |
245 BLAST output. | |
246 | |
247 ====== ============= =========================================== | |
248 Column NCBI name Description | |
249 ------ ------------- ------------------------------------------- | |
250 13 sallseqid All subject Seq-id(s), separated by a ';' | |
251 14 score Raw score | |
252 15 nident Number of identical matches | |
253 16 positive Number of positive-scoring matches | |
254 17 gaps Total number of gaps | |
255 18 ppos Percentage of positive-scoring matches | |
256 19 qframe Query frame | |
257 20 sframe Subject frame | |
258 21 qseq Aligned part of query sequence | |
259 22 sseq Aligned part of subject sequence | |
260 23 qlen Query sequence length | |
261 24 slen Subject sequence length | |
262 ====== ============= =========================================== | |
263 | |
264 The third option is BLAST XML output, which is designed to be parsed by | |
265 another program, and is understood by some Galaxy tools. | |
266 | |
267 You can also choose several plain text or HTML output formats which are designed to be read by a person (not by another program). | |
268 The HTML versions use basic webpage formatting and can include links to the hits on the NCBI website. | |
269 The pairwise output (the default on the NCBI BLAST website) shows each match as a pairwise alignment with the query. | |
270 The two query anchored outputs show a multiple sequence alignment between the query and all the matches, | |
271 and differ in how insertions are shown (marked as insertions or with gap characters added to the other sequences). | |
272 | |
273 ------- | |
274 | |
275 **References** | |
276 | |
277 Altschul et al. Gapped BLAST and PSI-BLAST: a new generation of protein database search programs. 1997. Nucleic Acids Res. 25:3389-3402. | |
278 | |
279 Schaffer et al. Improving the accuracy of PSI-BLAST protein database searches with composition-based statistics and other refinements. 2001. Nucleic Acids Res. 29:2994-3005. | |
280 | |
281 </help> | |
282 </tool> |