diff pick_open_reference_otus.xml @ 0:f668a753bcfc draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/qiime/ commit a9d1e0debcd357d8080a1c6c5f1d206dd45a7a4d
author iuc
date Fri, 19 May 2017 03:55:46 -0400
parents
children 41482ca21d31
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pick_open_reference_otus.xml	Fri May 19 03:55:46 2017 -0400
@@ -0,0 +1,254 @@
+<tool id="qiime_pick_open_reference_otus" name="Perform open-reference OTU picking" version="@WRAPPER_VERSION@.0">
+    <description></description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements"/>
+    <version_command>pick_open_reference_otus.py --version</version_command>
+    <command detect_errors="aggressive"><![CDATA[
+        pick_open_reference_otus.py
+            --input_fps '$input_fps'
+            -o otus
+            --otu_picking_method '$otu_picking_method'
+            #if str( $ref_sequences.selector ) == 'history'
+                #set $ref = $ref_sequences.reference_fp
+            #else:
+                #set $ref = $ref_sequences.reference_fp.fields.path
+            #end if
+            --reference_fp '$ref'
+            #if str( $prefilter.use_prefilter ) == 'yes'
+                #if str( $prefilter.prefilter_ref_seq.selector ) == 'history'
+                    #set $ref = $prefilter.prefilter_ref_seq.prefilter_refseqs_fp
+                #else:
+                    #set $ref = $prefilter.prefilter_ref_seq.prefilter_refseqs_fp.fields.path
+                #end if
+                --prefilter_refseqs_fp '$ref'
+            #end if
+            --new_ref_set_id '$new_ref_set_id'
+            $parallel
+            -O "\${GALAXY_SLOTS:-4}"
+            --percent_subsample '$percent_subsample'
+            --prefilter_percent_id '$prefilter_percent_id'
+            #if str($step1_otu_map_fp) != 'None':
+                --step1_otu_map_fp '$step1_otu_map_fp'
+            #end if
+            #if str($step1_failures_fasta_fp) != 'None':
+                --step1_failures_fasta_fp='$step1_failures_fasta_fp'
+            #end if
+            --minimum_failure_threshold '$minimum_failure_threshold'
+            $suppress_step4
+            --min_otu_size '$min_otu_size'
+            $suppress_taxonomy_assignment
+            $suppress_align_and_tree
+
+        #if str( $suppress_align_and_tree ) == ""
+            #if str( $suppress_taxonomy_assignment ) == ""
+                && mv otus/otu_table_mc*_w_tax.biom otus/otu_table_w_tax.biom
+                && mv otus/otu_table_mc*_w_tax_no_pynast_failures.biom otus/tu_table_w_tax_no_pynast_failures
+            #else
+                && mv otus/otu_table_mc*_no_pynast_failures.biom otus/otu_table_no_pynast_failures.biom
+            #end if
+        #end if
+
+    ]]></command>
+    <inputs>
+        <param argument="--input_fps" type="data" format="fasta,fastq" multiple="True" label="Input sequence files"/>
+        <param argument="--otu_picking_method" type="select" label="The OTU picking method to use for reference and de novo steps">
+            <option value="uclust" selected="True">uclust</option>
+        </param>
+        <conditional name="ref_sequences">
+            <param name="selector" type="select"  label="Reference sequences to query">
+                <option value="cached" selected="True">Public databases</option>
+                <option value="history">Databases from your history</option>
+            </param>
+            <when value="cached">
+                <param argument="--reference_fp" label="Reference sequences" type="select">
+                    <options from_data_table="qiime_rep_set"/>
+                </param>
+            </when>
+            <when value="history">
+                <param argument="--reference_fp" type="data" format="fasta" label="Reference databases"/>
+            </when>
+        </conditional>
+        <conditional name="prefilter">
+            <param name="use_prefilter" type="select" label="Use different reference sequences for the prefilter?">
+                <option value="true">True</option>
+                <option value="false" selected="True">False</option>
+            </param>
+            <when value="true">
+                <conditional name="prefilter_ref_seq">
+                    <param name="selector" type="select" label="Reference sequences to query">
+                        <option value="cached" selected="True">Public databases</option>
+                        <option value="history">Databases from your history</option>
+                    </param>
+                    <when value="cached">
+                        <param argument="--prefilter_refseqs_fp" label="Reference sequences" type="select">
+                            <options from_data_table="qiime_rep_set"/>
+                        </param>
+                    </when>
+                    <when value="history">
+                        <param argument="--prefilter_refseqs_fp" type="data" format="fasta" label="Reference databases"/>
+                    </when>
+                </conditional>
+            </when>
+            <when value="false"/>
+        </conditional>
+        <param argument="--new_ref_set_id" type="text" value="New" label="Unique identifier for OTUs that get created in this ref set" help="This is useful to support combining of reference sets"/>
+        <param argument="--parallel" type="boolean" truevalue="--parallel" falsevalue="" checked="False" label="Run in parallel where available?"/>
+        <param argument="--percent_subsample" type="float" value="0.001" min="0" max="1" label="Percent of failure sequences to include in the subsample to cluster de novo" help="Large numbers should give more comprehensive results but will be slower"/>
+        <param argument="--prefilter_percent_id" type="float" value="0.0" min="0" max="1" label="Percent of sequence pre-cluster against the reference" help="Any reads which fail to hit are discarded (a quality filter)"/>
+        <param argument="--step1_otu_map_fp" type="data" format="txt" optional="True" label="Reference OTU picking OTU map to avoid rebuilding if one has already been built (optional)" help="This must be an OTU map generated by this workflow, not (for example) by pick_closed_reference_otus"/>
+        <param argument="--step1_failures_fasta_fp" type="data" format="fasta" optional="True" label="Reference OTU picking failures fasta filepath, to avoid rebuilding if one has already been built (optional)" help="This must be a failures file generated by this workflow, not (for example) by pick_closed_reference_otus"/>
+        <param argument="--minimum_failure_threshold" type="integer" value="100000" label="Minimum number of sequences that must fail to hit the reference for subsampling to be performed" help="If fewer than this number of sequences fail to hit the reference, the de novo clustering step will run serially rather than invoking the subsampled open reference approach to improve performance"/>
+        <param argument="--suppress_step4" type="boolean" truevalue="--suppress_step4" falsevalue="" checked="False" label="Suppress the final de novo OTU picking step?" help="It may be necessary for extremely large data sets"/>
+        <param argument="--min_otu_size" type="integer" value="2" label="Minimum otu size to retain the OTU" help=""/>
+        <param argument="--suppress_taxonomy_assignment" type="boolean" truevalue="--suppress_taxonomy_assignment" falsevalue="" checked="False" label="Skip the taxonomy assignment step?" help="It results in an OTU table without taxonomy"/>
+        <param argument="--suppress_align_and_tree" type="boolean" truevalue="--suppress_align_and_tree" falsevalue="" checked="False" label="Skip the sequence alignment and tree-building steps?" help=""/>
+    </inputs>
+    <outputs>
+        <data name="final_otu_map" format="txt" from_work_dir="otus/final_otu_map.txt" label="${tool.name} on ${on_string}: Final OTU map"/>
+        <data name="final_otu_map_mc" format="txt" from_work_dir="otus/final_otu_map_mc*.txt" label="${tool.name} on ${on_string}: Final OTU map without the OTUs failing the minimum specified OTU size"/>
+        <data name="rep_set" format="fasta" from_work_dir="otus/rep_set.fna" label="${tool.name} on ${on_string}: OTU representative sequences"/>
+        <data name="otu_table_mc" format="biom1" from_work_dir="otus/otu_table_mc*.biom" label="${tool.name} on ${on_string}: OTU table"/>
+        <data name="otu_table_mc_w_tax" format="biom1" from_work_dir="otus/otu_table_w_tax.biom" label="${tool.name} on ${on_string}: OTU table with taxonomic assignment">
+            <filter>suppress_taxonomy_assignment is False</filter>
+        </data>
+        <data name="otu_table_mc_w_tax_no_pynast_failures" format="biom1" from_work_dir="otus/otu_table_w_tax_no_pynast_failures.biom"  label="${tool.name} on ${on_string}: OTU table with taxonomic assignment and without sequences failing the alignment to the OTU representative sequences">
+            <filter>suppress_taxonomy_assignment is False and suppress_align_and_tree is False</filter>
+        </data>
+        <data name="otu_table_mc_no_pynast_failures" format="biom1" from_work_dir="otus/otu_table_no_pynast_failures.biom"  label="${tool.name} on ${on_string}: OTU table without sequences failing the alignment to the OTU representative sequences">
+            <filter>suppress_taxonomy_assignment is True and suppress_align_and_tree is False</filter>
+        </data>
+        <data name="rep_set_tree" format="txt" from_work_dir="otus/rep_set.tre" label="${tool.name} on ${on_string}: Representative set tree">
+            <filter>suppress_align_and_tree is False</filter>
+        </data>
+        <data name="new_refseqs" format="fasta" from_work_dir="otus/new_refseqs.fna" label="${tool.name} on ${on_string}: New reference sequences (OTU + input reference sequences)"/>
+    </outputs>
+    <tests>
+        <test>
+            <param name="input_fps" value="pick_open_reference_otus/sequences.fasta"/>
+            <param name="otu_picking_method" value="uclust"/>
+            <conditional name="ref_sequences">
+                <param name="selector" value="history"/>
+                <param name="reference_fp" value="pick_open_reference_otus/gg_13_8_79_otus.fasta"/>
+            </conditional>
+            <conditional name="prefilter">
+                <param name="use_prefilter" value="false"/>
+            </conditional>
+            <param name="new_ref_set_id" value="New"/>
+            <param name="parallel" value="--parallel"/>
+            <param name="percent_subsample" value="0.001"/>
+            <param name="prefilter_percent_id" value="0.0"/>
+            <param name="minimum_failure_threshold" value="100000"/>
+            <param name="suppress_step4" value=""/>
+            <param name="min_otu_size" value="2"/>
+            <param name="suppress_taxonomy_assignment" value=""/>
+            <param name="suppress_align_and_tree" value=""/>
+            <output name="final_otu_map" value="pick_open_reference_otus/1_final_otu_map.txt"/>
+            <output name="final_otu_map_mc" value="pick_open_reference_otus/1_final_otu_map_mc.txt"/>
+            <output name="rep_set">
+                <assert_contents>
+                    <has_line line=">4374484 L1S8_76"></has_line>
+                    <has_text text=">New.CleanUp.ReferenceOTU6 L1S208_7"></has_text>
+                </assert_contents>
+            </output>
+            <output name="rep_set_tree" value="pick_open_reference_otus/1_rep_set_tree.tre"/>
+            <output name="new_refseqs">
+                <assert_contents>
+                    <has_line line=">1109493"></has_line>
+                    <has_text text=">945028"></has_text>
+                    <has_text text=">4437874"></has_text>
+                    <has_text text=">New.CleanUp.ReferenceOTU6 L1S208_7"></has_text>
+                </assert_contents>
+            </output>
+        </test>
+        <test>
+            <param name="input_fps" value="pick_open_reference_otus/sequences.fasta"/>
+            <param name="otu_picking_method" value="uclust"/>
+            <conditional name="ref_sequences">
+                <param name="selector" value="history"/>
+                <param name="reference_fp" value="pick_open_reference_otus/gg_13_8_79_otus.fasta"/>
+            </conditional>
+            <conditional name="prefilter">
+                <param name="use_prefilter" value="false"/>
+            </conditional>
+            <param name="new_ref_set_id" value="New"/>
+            <param name="parallel" value="--parallel"/>
+            <param name="percent_subsample" value="0.001"/>
+            <param name="prefilter_percent_id" value="0.0"/>
+            <param name="minimum_failure_threshold" value="100000"/>
+            <param name="suppress_step4" value=""/>
+            <param name="min_otu_size" value="3"/>
+            <param name="suppress_taxonomy_assignment" value="--suppress_taxonomy_assignment"/>
+            <param name="suppress_align_and_tree" value="--suppress_align_and_tree"/>
+            <output name="final_otu_map" value="pick_open_reference_otus/2_final_otu_map.txt"/>
+            <output name="final_otu_map_mc" value="pick_open_reference_otus/2_final_otu_map_mc.txt"/>
+            <output name="rep_set">
+                <assert_contents>
+                    <has_line line=">4374484 L1S8_76"></has_line>
+                    <has_text text=">New.CleanUp.ReferenceOTU6 L1S208_7"></has_text>
+                </assert_contents>
+            </output>
+            <output name="new_refseqs">
+                <assert_contents>
+                    <has_line line=">1109493"></has_line>
+                    <has_text text=">945028"></has_text>
+                    <has_text text=">4437874"></has_text>
+                    <has_text text=">New.CleanUp.ReferenceOTU6 L1S208_7"></has_text>
+                </assert_contents>
+            </output>
+        </test>
+        <test>
+            <param name="input_fps" value="pick_open_reference_otus/sequences.fasta"/>
+            <param name="otu_picking_method" value="uclust"/>
+            <conditional name="ref_sequences">
+                <param name="selector" value="history"/>
+                <param name="reference_fp" value="pick_open_reference_otus/gg_13_8_79_otus.fasta"/>
+            </conditional>
+            <conditional name="prefilter">
+                <param name="use_prefilter" value="false"/>
+            </conditional>
+            <param name="new_ref_set_id" value="New"/>
+            <param name="parallel" value="--parallel"/>
+            <param name="percent_subsample" value="0.001"/>
+            <param name="prefilter_percent_id" value="0.0"/>
+            <param name="minimum_failure_threshold" value="100000"/>
+            <param name="suppress_step4" value=""/>
+            <param name="min_otu_size" value="10"/>
+            <param name="suppress_taxonomy_assignment" value="--suppress_taxonomy_assignment"/>
+            <param name="suppress_align_and_tree" value=""/>
+            <output name="final_otu_map" value="pick_open_reference_otus/3_final_otu_map.txt"/>
+            <output name="final_otu_map_mc" value="pick_open_reference_otus/3_final_otu_map_mc.txt"/>
+            <output name="rep_set">
+                <assert_contents>
+                    <has_line line=">New.CleanUp.ReferenceOTU20 L1S8_4"></has_line>
+                    <has_text text=">New.CleanUp.ReferenceOTU21 L1S140_45"></has_text>
+                    <has_text text=">New.CleanUp.ReferenceOTU22 L1S208_15"></has_text>
+                </assert_contents>
+            </output>
+            <output name="rep_set_tree" value="pick_open_reference_otus/3_rep_set_tree.tre"/>
+            <output name="new_refseqs">
+                <assert_contents>
+                    <has_line line=">1109493"></has_line>
+                    <has_text text=">945028"></has_text>
+                    <has_text text=">4431138"></has_text>
+                    <has_text text=">New.CleanUp.ReferenceOTU22 L1S208_15"></has_text>
+                </assert_contents>
+            </output>
+        </test>
+    </tests>
+    <help><![CDATA[
+**What it does**
+
+This tool performs open-reference OTU picking from sequences.
+
+This script is broken down into 4 possible OTU picking steps, and 2 steps
+involving the creation of OTU tables and trees.
+
+More information about this tool is available on
+`QIIME documentation <http://qiime.org/scripts/pick_open_reference_otus.html>`_.
+    ]]></help>
+    <citations>
+        <expand macro="citations"/>
+    </citations>
+</tool>