Repository 'qiime2_wrappers'
hg clone https://toolshed.g2.bx.psu.edu/repos/florianbegusch/qiime2_wrappers

Changeset 0:51b9b6b57732 (2018-05-24)
Next changeset 1:6851c25d84b7 (2019-07-17)
Commit message:
Uploaded
added:
qiime2/merge_feature_table_and_taxonomy.xml
qiime2/qiime_alignment_mafft.xml
qiime2/qiime_alignment_mask.xml
qiime2/qiime_citation.xml
qiime2/qiime_composition_add-pseudocount.xml
qiime2/qiime_composition_ancom.xml
qiime2/qiime_cutadapt_demux-paired.xml
qiime2/qiime_cutadapt_demux-single.xml
qiime2/qiime_cutadapt_trim-paired.xml
qiime2/qiime_cutadapt_trim-single.xml
qiime2/qiime_dada2_denoise-paired.xml
qiime2/qiime_dada2_denoise-pyro.xml
qiime2/qiime_dada2_denoise-single.xml
qiime2/qiime_deblur_denoise-16S.xml
qiime2/qiime_deblur_denoise-other.xml
qiime2/qiime_deblur_visualize-stats.xml
qiime2/qiime_demux_emp-paired.xml
qiime2/qiime_demux_emp-single.xml
qiime2/qiime_demux_summarize.xml
qiime2/qiime_diversity_alpha-correlation.xml
qiime2/qiime_diversity_alpha-group-significance.xml
qiime2/qiime_diversity_alpha-phylogenetic.xml
qiime2/qiime_diversity_alpha-rarefaction.xml
qiime2/qiime_diversity_alpha.xml
qiime2/qiime_diversity_beta-group-significance.xml
qiime2/qiime_diversity_beta-phylogenetic-alt.xml
qiime2/qiime_diversity_beta-phylogenetic.xml
qiime2/qiime_diversity_beta-rarefaction.xml
qiime2/qiime_diversity_beta.xml
qiime2/qiime_diversity_bioenv.xml
qiime2/qiime_diversity_core-metrics-phylogenetic.xml
qiime2/qiime_diversity_core-metrics.xml
qiime2/qiime_diversity_filter-distance-matrix.xml
qiime2/qiime_diversity_mantel.xml
qiime2/qiime_diversity_pcoa.xml
qiime2/qiime_diversity_procrustes-analysis.xml
qiime2/qiime_emperor_plot.xml
qiime2/qiime_emperor_procrustes-plot.xml
qiime2/qiime_feature-classifier_classify-consensus-blast.xml
qiime2/qiime_feature-classifier_classify-consensus-vsearch.xml
qiime2/qiime_feature-classifier_classify-sklearn.xml
qiime2/qiime_feature-classifier_extract-reads.xml
qiime2/qiime_feature-classifier_fit-classifier-naive-bayes.xml
qiime2/qiime_feature-classifier_fit-classifier-sklearn.xml
qiime2/qiime_feature-table_core-features.xml
qiime2/qiime_feature-table_filter-features.xml
qiime2/qiime_feature-table_filter-samples.xml
qiime2/qiime_feature-table_filter-seqs.xml
qiime2/qiime_feature-table_group.xml
qiime2/qiime_feature-table_heatmap.xml
qiime2/qiime_feature-table_merge-seqs.xml
qiime2/qiime_feature-table_merge-taxa.xml
qiime2/qiime_feature-table_merge.xml
qiime2/qiime_feature-table_presence-absence.xml
qiime2/qiime_feature-table_rarefy.xml
qiime2/qiime_feature-table_relative-frequency.xml
qiime2/qiime_feature-table_subsample.xml
qiime2/qiime_feature-table_summarize.xml
qiime2/qiime_feature-table_tabulate-seqs.xml
qiime2/qiime_gneiss_add-pseudocount.xml
qiime2/qiime_gneiss_assign-ids.xml
qiime2/qiime_gneiss_balance-taxonomy.xml
qiime2/qiime_gneiss_correlation-clustering.xml
qiime2/qiime_gneiss_dendrogram-heatmap.xml
qiime2/qiime_gneiss_gradient-clustering.xml
qiime2/qiime_gneiss_ilr-transform.xml
qiime2/qiime_gneiss_lme-regression.xml
qiime2/qiime_gneiss_ols-regression.xml
qiime2/qiime_longitudinal_first-differences.xml
qiime2/qiime_longitudinal_first-distances.xml
qiime2/qiime_longitudinal_linear-mixed-effects.xml
qiime2/qiime_longitudinal_nmit.xml
qiime2/qiime_longitudinal_pairwise-differences.xml
qiime2/qiime_longitudinal_pairwise-distances.xml
qiime2/qiime_longitudinal_volatility.xml
qiime2/qiime_metadata_distance-matrix.xml
qiime2/qiime_metadata_tabulate.xml
qiime2/qiime_phylogeny_fasttree.xml
qiime2/qiime_phylogeny_filter-table.xml
qiime2/qiime_phylogeny_midpoint-root.xml
qiime2/qiime_quality-control_evaluate-composition.xml
qiime2/qiime_quality-control_evaluate-seqs.xml
qiime2/qiime_quality-control_exclude-seqs.xml
qiime2/qiime_quality-filter_q-score-joined.xml
qiime2/qiime_quality-filter_q-score.xml
qiime2/qiime_sample-classifier_classify-samples.xml
qiime2/qiime_sample-classifier_maturity-index.xml
qiime2/qiime_sample-classifier_regress-samples.xml
qiime2/qiime_taxa_barplot.xml
qiime2/qiime_taxa_collapse.xml
qiime2/qiime_taxa_filter-seqs.xml
qiime2/qiime_taxa_filter-table.xml
qiime2/qiime_tools_export.xml
qiime2/qiime_tools_export_collection.xml
qiime2/qiime_tools_export_paired_collection.xml
qiime2/qiime_tools_import.xml
qiime2/qiime_vsearch_cluster-features-closed-reference.xml
qiime2/qiime_vsearch_cluster-features-de-novo.xml
qiime2/qiime_vsearch_cluster-features-open-reference.xml
qiime2/qiime_vsearch_dereplicate-sequences.xml
qiime2/qiime_vsearch_join-pairs.xml
qiime2/qiime_vsearch_uchime-denovo.xml
qiime2/qiime_vsearch_uchime-ref.xml
tool_data/ref_classifier.loc
tool_data/ref_taxnonomy.loc
tool_data_table_conf.xml.sample
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/merge_feature_table_and_taxonomy.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/merge_feature_table_and_taxonomy.xml Thu May 24 05:21:07 2018 -0400
b
@@ -0,0 +1,34 @@
+<?xml version="1.0" ?>
+<tool id="merge_feature_table_and_taxonomy" name="merge feature table and taxonomy" version="2018.4">
+ <description>- Merge features and taxonomy into a single biom file.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+mkdir out;
+
+qiime tools export --output-dir out $taxonomy_qza;
+qiime tools export --output-dir out $biom_qza;
+
+sed -i '1s;^;#;' out/*.tsv;
+sed -i 's/Confidence/confidence/g' out/*.tsv;
+sed -i 's/Taxon/taxonomy/g' out/*.tsv;
+sed -i 's/Feature ID/OTU ID/g' out/*.tsv;
+
+biom add-metadata -i out/*.biom -o table_with_sample_metadata.biom --observation-metadata-fp out/*.tsv
+;
+mv *.biom $biom_and_tax_merged</command>
+ <inputs>
+ <param label="Feature table" name="biom_qza" type="data" format="qza,no_unzip.zip" collection_type="list"/>
+ <param label="Taxonomy" name="taxonomy_qza" type="data" format="qza,no_unzip.zip"/>
+ </inputs>
+ <outputs>
+ <data format="biom2" label="${tool.name} on ${on_string}: biom_and_tax_merged.biom" name="biom_and_tax_merged"/>
+ </outputs>
+ <help>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_alignment_mafft.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_alignment_mafft.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,53 @@
+<?xml version="1.0" ?>
+<tool id="qiime_alignment_mafft" name="qiime alignment mafft" version="2018.4">
+ <description> - De novo multiple sequence alignment with MAFFT</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[

+  qiime alignment mafft --i-sequences=$isequences
+  #set $pnthreads = '${GALAXY_SLOTS:-4}'
+
+  #if str($pnthreads):
+   --p-n-threads="$pnthreads"
+  #end if
+
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-alignment=oalignment;
+   
+   cp oalignment.qza $oalignment
+
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] - The sequences to be aligned.  [required]" name="isequences" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: alignment.qza" name="oalignment"/>
+ </outputs>
+ <help><![CDATA[
+De novo multiple sequence alignment with MAFFT
+----------------------------------------------
+
+Perform de novo multiple sequence alignment using MAFFT.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    The sequences to be aligned.
+
+Returns
+-------
+alignment : FeatureData[AlignedSequence]
+    The aligned sequences.
+ ]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_alignment_mask.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_alignment_mask.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,72 @@
+<?xml version="1.0" ?>
+<tool id="qiime_alignment_mask" name="qiime alignment mask" version="2018.4">
+ <description> - Positional conservation and gap filtering.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime alignment mask --i-alignment=$ialignment
+
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if

+   --o-masked-alignment=omaskedalignment
+
+  #if $pminconservation:
+   --p-min-conservation=$pminconservation
+  #end if
+
+  #if $pmaxgapfrequency:
+   --p-max-gap-frequency=$pmaxgapfrequency
+  #end if
+  ;
+  cp omaskedalignment.qza $omaskedalignment
+
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-alignment: FeatureData[AlignedSequence] - The alignment to be masked.  [required]" name="ialignment" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ <param label="--p-min-conservation: The minimum relative frequency of at least one non-gap character in a column for that column to be retained. This relative frequency must be a number between 0.0 and 1.0 (inclusive). For example, if a value of 0.4 is provided, a column will only be retained if it contains at least one character that is present in at least 40% of the sequences.  [default: 0.4]" name="pminconservation" optional="True" type="float" value="0.4"/>
+ <param label="--p-max-gap-frequency: The maximum relative frequency of gap characters in a column for the column to be retained. This relative frequency must be a number between 0.0 and 1.0 (inclusive), where 0.0 retains only those columns without gap characters, and 1.0 retains all columns regardless of gap character frequency. [default: 1.0]" name="pmaxgapfrequency" optional="True" type="float" value="1.0"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: maskedalignment.qza" name="omaskedalignment"/>
+ </outputs>
+ <help><![CDATA[
+
+Positional conservation and gap filtering.
+------------------------------------------
+
+Mask (i.e., filter) unconserved and highly gapped columns from an
+alignment.
+
+Parameters
+----------
+alignment : FeatureData[AlignedSequence]
+    The alignment to be masked.
+max_gap_frequency : Float, optional
+    The maximum relative frequency of gap characters in a column for the
+    column to be retained. This relative frequency must be a number between
+    0.0 and 1.0 (inclusive), where 0.0 retains only those columns without
+    gap characters, and 1.0 retains all columns regardless of gap character
+    frequency.
+min_conservation : Float, optional
+    The minimum relative frequency of at least one non-gap character in a
+    column for that column to be retained. This relative frequency must be
+    a number between 0.0 and 1.0 (inclusive). For example, if a value of
+    0.4 is provided, a column will only be retained if it contains at least
+    one character that is present in at least 40% of the sequences.
+
+Returns
+-------
+masked_alignment : FeatureData[AlignedSequence]
+    The masked alignment.
+ ]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_citation.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_citation.xml Thu May 24 05:21:07 2018 -0400
b
@@ -0,0 +1,21 @@
+<macros>
+  <xml name="qiime_citation">
+    <citations>
+      <citation type="bibtex">
+        @article{Caporaso_2010,
+        title={QIIME allows analysis of high-throughput community sequencing data},
+        volume={7},
+        ISSN={1548-7105},
+        DOI={10.1038/nmeth.f.303},
+        url={https://qiime2.org/},
+        number={5},
+        journal={Nature Methods},
+        publisher={Springer Nature},
+        author={Caporaso, J Gregory and Kuczynski, Justin and Stombaugh, Jesse and Bittinger, Kyle and Bushman, Frederic D and Costello, Elizabeth K and Fierer, Noah and Pena, Antonio Gonzalez and Goodrich, Julia K and Gordon, Jeffrey I and et al.},
+        year={2010},
+        month={Apr},
+        pages={335-336}
+        }</citation>
+    </citations>
+  </xml>
+</macros>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_composition_add-pseudocount.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_composition_add-pseudocount.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,55 @@
+<?xml version="1.0" ?>
+<tool id="qiime_composition_add-pseudocount" name="qiime composition add-pseudocount" version="2018.2">
+ <description> - Add pseudocount to table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime composition add-pseudocount --i-table=$itable
+  
+  #if $ppseudocount:
+   --p-pseudocount=$ppseudocount
+  #end if
+
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  --o-composition-table=ocompositiontable
+  ;
+  cp ocompositiontable.qza $ocompositiontable
+
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] - The feature table to which pseudocounts should be added.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-pseudocount: The value to add to all counts in the feature table.  [default: 1]" name="ppseudocount" optional="True" type="integer" value="1"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: compositiontable.qza" name="ocompositiontable"/>
+ </outputs>
+ <help><![CDATA[
+Add pseudocount to table
+------------------------
+
+Increment all counts in table by pseudocount.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table to which pseudocounts should be added.
+pseudocount : Int, optional
+    The value to add to all counts in the feature table.
+
+Returns
+-------
+composition_table : FeatureTable[Composition]
+    The resulting feature table.
+ ]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_composition_ancom.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_composition_ancom.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,94 @@
+<?xml version="1.0" ?>
+<tool id="qiime_composition_ancom" name="qiime composition ancom" version="2018.4">
+ <description> - Apply ANCOM to identify features that differ in abundance.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime composition ancom --i-table=$itable
+
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def

+ --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --m-metadata-column="$mmetadatacolumn"
+
+  #if str($pdifferencefunction) != 'None':
+   --p-difference-function=$pdifferencefunction
+  #end if
+
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+
+  #if str($ptransformfunction) != 'None':
+   --p-transform-function=$ptransformfunction
+  #end if

+   --o-visualization=ovisualization;
+   
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Composition] - The feature table to be used for ANCOM computation.  [required]" name="itable" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param format="tabular" label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data"/>
+ </repeat>
+ <param label="--m-metadata-column: MetadataColumn[Categorical] - Column from metadata file or artifact viewable as metadata. The categorical sample metadata column to test for differential abundance across.  [required]" name="mmetadatacolumn" optional="False" type="text"/>
+ <param label="--p-difference-function: " name="pdifferencefunction" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="mean_difference">mean_difference</option>
+ <option value="f_statistic">f_statistic</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ <param label="--p-transform-function: " name="ptransformfunction" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="log">log</option>
+ <option value="clr">clr</option>
+ <option value="sqrt">sqrt</option>
+ </param>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+<![CDATA[
+Apply ANCOM to identify features that differ in abundance.
+----------------------------------------------------------
+
+Apply Analysis of Composition of Microbiomes (ANCOM) to identify features
+that are differentially abundant across groups.
+
+Parameters
+----------
+table : FeatureTable[Composition]
+    The feature table to be used for ANCOM computation.
+metadata : MetadataColumn[Categorical]
+    The categorical sample metadata column to test for differential
+    abundance across.
+transform_function : Str % Choices({'clr', 'log', 'sqrt'}), optional
+    The method applied to transform feature values before generating
+    volcano plots.
+difference_function : Str % Choices({'f_statistic', 'mean_difference'}), optional
+    The method applied to visualize fold difference in feature abundances
+    across groups for volcano plots.
+
+Returns
+-------
+visualization : Visualization

+]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_cutadapt_demux-paired.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_cutadapt_demux-paired.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,82 @@
+<?xml version="1.0" ?>
+<tool id="qiime_cutadapt_demux-paired" name="qiime cutadapt demux-paired" version="2018.4">
+ <description> - Demultiplex paired-end sequence data with barcodes in- sequence.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime cutadapt demux-paired --i-seqs=$iseqs
+
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def

+ --m-forward-barcodes-file=$list_dict_to_string($input_files_mforwardbarcodesfile) --m-forward-barcodes-column="$mforwardbarcodescolumn"
+
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if

+ --o-per-sample-sequences=opersamplesequences --o-untrimmed-sequences=ountrimmedsequences
+
+  #if $perrorrate:
+   --p-error-rate=$perrorrate
+  #end if
+  ;
+
+  cp opersamplesequences.qza $opersamplesequences;
+  cp ountrimmedsequences.qza $ountrimmedsequences;
+  
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-seqs: Multiplexed Paired End Barcode In Sequence - The paired-end sequences to be demultiplexed.  [required]" name="iseqs" optional="False" type="data"/>
+ <repeat name="input_files_mforwardbarcodesfile" optional="False" title="--m-forward-barcodes-file">
+ <param label="--m-forward-barcodes-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--m-forward-barcodes-column: Metadata Column[Categorical] - Column from metadata file or artifact viewable as metadata. The sample metadata column listing the per-sample barcodes for the forward reads.  [required]" name="mforwardbarcodescolumn" optional="False" type="text"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ <param label="--p-error-rate: The level of error tolerance, specified as the maximum allowable error rate.  [default: 0.1]" name="perrorrate" optional="True" type="float" value="0.1"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: per-sample-sequences.qza" name="opersamplesequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: untrimmed-sequences.qza" name="ountrimmedsequences"/>
+ </outputs>
+ <help><![CDATA[ 
+  
+Demultiplex paired-end sequence data with barcodes in-sequence.
+---------------------------------------------------------------
+
+Demultiplex sequence data (i.e., map barcode reads to sample ids). Barcodes
+are expected to be located within the sequence data (versus the header, or
+a separate barcode file).
+
+Parameters
+----------
+seqs : MultiplexedPairedEndBarcodeInSequence
+    The paired-end sequences to be demultiplexed.
+forward_barcodes : MetadataColumn[Categorical]
+    The sample metadata column listing the per-sample barcodes for the
+    forward reads.
+error_rate : Float % Range(0, 1, inclusive_end=True), optional
+    The level of error tolerance, specified as the maximum allowable error
+    rate.
+
+Returns
+-------
+per_sample_sequences : SampleData[PairedEndSequencesWithQuality]
+    The resulting demultiplexed sequences.
+untrimmed_sequences : MultiplexedPairedEndBarcodeInSequence
+    The sequences that were unmatched to barcodes.
+    
+    ]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_cutadapt_demux-single.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_cutadapt_demux-single.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,81 @@
+<?xml version="1.0" ?>
+<tool id="qiime_cutadapt_demux-single" name="qiime cutadapt demux-single" version="2018.4">
+ <description> - Demultiplex single-end sequence data with barcodes in- sequence.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime cutadapt demux-single
+
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def

+ --m-barcodes-file=$list_dict_to_string($input_files_mbarcodesfile) --i-seqs=$iseqs --m-barcodes-column="$mbarcodescolumn"
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if

+   --o-per-sample-sequences=opersamplesequences --o-untrimmed-sequences=ountrimmedsequences
+
+  #if $perrorrate:
+   --p-error-rate=$perrorrate
+  #end if
+  ;
+  cp opersamplesequences.qza $opersamplesequences;
+  cp ountrimmedsequences.qza $ountrimmedsequences;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-seqs: MultiplexedSingleEndBarcodeInSequence The single-end sequences to be demultiplexed.  [required]" name="iseqs" optional="False" type="data"/>
+
+ <repeat name="input_files_mbarcodesfile" optional="False" title="--m-barcodes-file">
+ <param label="--m-barcodes-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--m-barcodes-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. The sample metadata column listing the per-sample barcodes. [required]" name="mbarcodescolumn" optional="False" type="text"/>
+
+ <param label="--p-error-rate: The level of error tolerance, specified as the maximum allowable error rate. The default value specified by cutadapt is 0.1 (=10%), which is greater than `demux emp-*`, which is 0.0 (=0%).  [default: 0.1]" name="perrorrate" optional="True" type="float" value="0.1"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: per-sample-sequences.qza" name="opersamplesequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: untrimmed-sequences.qza" name="ountrimmedsequences"/>
+ </outputs>
+ <help><![CDATA[
+Demultiplex single-end sequence data with barcodes in-sequence.
+----------------------------------------------------------------
+
+Demultiplex sequence data (i.e., map barcode reads to sample ids). Barcodes
+are expected to be located within the sequence data (versus the header, or
+a separate barcode file).
+
+Parameters
+----------
+seqs : MultiplexedSingleEndBarcodeInSequence
+    The single-end sequences to be demultiplexed.
+barcodes : MetadataColumn[Categorical]
+    The sample metadata column listing the per-sample barcodes.
+error_rate : Float % Range(0, 1, inclusive_end=True), optional
+    The level of error tolerance, specified as the maximum allowable error
+    rate. The default value specified by cutadapt is 0.1 (=10%), which is
+    greater than `demux emp-*`, which is 0.0 (=0%).
+
+Returns
+-------
+per_sample_sequences : SampleData[SequencesWithQuality]
+    The resulting demultiplexed sequences.
+untrimmed_sequences : MultiplexedSingleEndBarcodeInSequence
+    The sequences that were unmatched to barcodes.
+    ]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_cutadapt_trim-paired.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_cutadapt_trim-paired.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,186 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_cutadapt_trim-paired" name="qiime cutadapt trim-paired" version="2018.4">\n+\t<description> - Find and remove adapters in demultiplexed paired-end sequences.</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command><![CDATA[\n+  \n+  qiime cutadapt trim-paired --i-demultiplexed-sequences=$idemultiplexedsequences\n+\n+  #if str($padapterf):\n+   --p-adapter-f="$padapterf"\n+  #end if\n+ \n+   --o-trimmed-sequences=otrimmedsequences\n+\n+  #if str($cmdconfig) != \'None\':\n+   --cmd-config=$cmdconfig\n+  #end if\n+\n+  #if \'__sq__\' in str($panywheref):\n+    #set $panywheref_temp = $panywheref.replace(\'__sq__\', "\'")\n+    #set $panywheref = $panywheref_temp\n+  #end if\n+\n+  #if str($panywheref):\n+   --p-anywhere-f="$panywheref"\n+  #end if\n+\n+  #if $poverlap:\n+   --p-overlap=$poverlap\n+  #end if\n+\n+  #if \'__sq__\' in str($panywherer):\n+    #set $panywherer_temp = $panywherer.replace(\'__sq__\', "\'")\n+    #set $panywherer = $panywherer_temp\n+  #end if\n+\n+  #if str($panywherer):\n+   --p-anywhere-r="$panywherer"\n+  #end if\n+\n+  #if $ptimes:\n+   --p-times=$ptimes\n+  #end if\n+\n+  #if $pindels:\n+   --p-indels\n+  #end if\n+\n+  #if str($padapterr):\n+   --p-adapter-r="$padapterr"\n+  #end if\n+  \n+  #if $perrorrate:\n+   --p-error-rate=$perrorrate\n+  #end if\n+  \n+  #if $pmatchadapterwildcards:\n+   --p-match-adapter-wildcards\n+  #end if\n+  \n+  #set $slots = \'${GALAXY_SLOTS:-4}\'\n+   --p-cores=$slots\n+  \n+  #if str($pfrontr):\n+   --p-front-r="$pfrontr"\n+  #end if\n+  \n+  #if str($pfrontf):\n+   --p-front-f="$pfrontf"\n+  #end if\n+  \n+  #if $pmatchreadwildcards:\n+   --p-match-read-wildcards\n+  #end if\n+  ;\n+\n+  cp otrimmedsequences.qza $otrimmedsequences \n+  \n+  ]]></command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-demultiplexed-sequences: SampleData[PairedEndSequencesWithQuality] The paired-end sequences to be trimmed. [required]" name="idemultiplexedsequences" optional="False" type="data"/>\n+\n+\t\t<param label="--p-adapter-f: Sequence of an adapter ligated to the 3\' end. The adapter and any subsequent bases are trimmed. If a `$` is appended, the adapter is only found if it is at the end of the read. Search in forward read. If your sequence of interest is \'framed\' by a 5\' and a 3\' adapter, use this parameter to define a \'linked\' primer - see https://cutadapt.readthedocs.io for complete details.  [optional]" name="padapterf" optional="True" type="text"/>\n+\t\t<param label="--p-front-f: Sequence of an adapter ligated to the 5\' end. The adapter and any preceding bases are trimmed. Partial matches at the 5\' end are allowed. If a `^` character is prepended, the adapter is only found if it is at the beginning of the read. Search in forward read.  [optional]" name="pfrontf" optional="True" type="text"/>\n+\t\t<param label="--p-anywhere-f: Sequence of an adapter that may be ligated to the 5\' or 3\' end. Both types of matches as described under `adapter` and `front` are allowed. If the first base of the read is part of the match, the behavior is as with `front`, otherwise as with `adapter`. This option is mostly for rescuing failed library preparations - do not use if you know which end your adapter was ligated to. Search in forward read.  [optional]" name="panywheref" optional="True" type="text"/>\n+\n+\t\t<param label="--p-adapter-r: Sequence of an adapter ligated to the 3\' end. The adapter and any subsequent bases are trimmed. If a `$` is appended, the adapter is only found if it is at the end of the read. Search in reverse read. If your sequence of interest is \'framed\' by a 5\' and a 3\' adapter, use this parameter to define a \'linked\' primer - see https://cutadapt.readthedocs.io for complete details.  [optional]" name="padapterr" optional="True" type="text"/>\n+\t\t<param label="--p-front-r: Sequence of an adapter ligated to the 5\' end. The adapter and any preceding bases are trimmed. Partial matches at the 5\' end are allowed. If a `^` character'..b'uts>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: trimmed-sequences.qza" name="otrimmedsequences"/>\n+\t</outputs>\n+\t<help><![CDATA[\n+Find and remove adapters in demultiplexed paired-end sequences.\n+----------------------------------------------------------------\n+\n+Search demultiplexed paired-end sequences for adapters and remove them. The\n+parameter descriptions in this method are adapted from the official\n+cutadapt docs - please see those docs at https://cutadapt.readthedocs.io\n+for complete details.\n+\n+Parameters\n+----------\n+demultiplexed_sequences : SampleData[PairedEndSequencesWithQuality]\n+    The paired-end sequences to be trimmed.\n+adapter_f : List[Str], optional\n+    Sequence of an adapter ligated to the 3\' end. The adapter and any\n+    subsequent bases are trimmed. If a `$` is appended, the adapter is only\n+    found if it is at the end of the read. Search in forward read. If your\n+    sequence of interest is "framed" by a 5\' and a 3\' adapter, use this\n+    parameter to define a "linked" primer - see\n+    https://cutadapt.readthedocs.io for complete details.\n+front_f : List[Str], optional\n+    Sequence of an adapter ligated to the 5\' end. The adapter and any\n+    preceding bases are trimmed. Partial matches at the 5\' end are allowed.\n+    If a `^` character is prepended, the adapter is only found if it is at\n+    the beginning of the read. Search in forward read.\n+anywhere_f : List[Str], optional\n+    Sequence of an adapter that may be ligated to the 5\' or 3\' end. Both\n+    types of matches as described under `adapter` and `front` are allowed.\n+    If the first base of the read is part of the match, the behavior is as\n+    with `front`, otherwise as with `adapter`. This option is mostly for\n+    rescuing failed library preparations - do not use if you know which end\n+    your adapter was ligated to. Search in forward read.\n+adapter_r : List[Str], optional\n+    Sequence of an adapter ligated to the 3\' end. The adapter and any\n+    subsequent bases are trimmed. If a `$` is appended, the adapter is only\n+    found if it is at the end of the read. Search in reverse read. If your\n+    sequence of interest is "framed" by a 5\' and a 3\' adapter, use this\n+    parameter to define a "linked" primer - see\n+    https://cutadapt.readthedocs.io for complete details.\n+front_r : List[Str], optional\n+    Sequence of an adapter ligated to the 5\' end. The adapter and any\n+    preceding bases are trimmed. Partial matches at the 5\' end are allowed.\n+    If a `^` character is prepended, the adapter is only found if it is at\n+    the beginning of the read. Search in reverse read.\n+anywhere_r : List[Str], optional\n+    Sequence of an adapter that may be ligated to the 5\' or 3\' end. Both\n+    types of matches as described under `adapter` and `front` are allowed.\n+    If the first base of the read is part of the match, the behavior is as\n+    with `front`, otherwise as with `adapter`. This option is mostly for\n+    rescuing failed library preparations - do not use if you know which end\n+    your adapter was ligated to. Search in reverse read.\n+error_rate : Float % Range(0, 1, inclusive_end=True), optional\n+    Maximum allowed error rate.\n+indels : Bool, optional\n+    Allow insertions or deletions of bases when matching adapters.\n+times : Int % Range(1, None), optional\n+    Remove multiple occurrences of an adapter if it is repeated, up to\n+    `times` times.\n+overlap : Int % Range(1, None), optional\n+    Require at least `overlap` bases of overlap between read and adapter\n+    for an adapter to be found.\n+match_read_wildcards : Bool, optional\n+    Interpret IUPAC wildcards (e.g., N) in reads.\n+match_adapter_wildcards : Bool, optional\n+    Interpret IUPAC wildcards (e.g., N) in adapters.\n+\n+Returns\n+-------\n+trimmed_sequences : SampleData[PairedEndSequencesWithQuality]\n+    The resulting trimmed sequences.\n+      ]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_cutadapt_trim-single.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_cutadapt_trim-single.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,145 @@
+<?xml version="1.0" ?>
+<tool id="qiime_cutadapt_trim-single" name="qiime cutadapt trim-single" version="2018.4">
+ <description> - Find and remove adapters in demultiplexed single-end sequences.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime cutadapt trim-single --i-demultiplexed-sequences=$idemultiplexedsequences
+
+  #if '__sq__' in str($panywhere):
+    #set $panywhere_temp = $panywhere.replace('__sq__', "'")
+    #set $panywhere = $panywhere_temp
+  #end if
+  
+  #if str($panywhere):
+   --p-anywhere="$panywhere"
+  #end if
+  
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $poverlap:
+   --p-overlap=$poverlap
+  #end if
+  
+  #if str($pfront):
+   --p-front="$pfront"
+  #end if
+  
+  #if $ptimes:
+   --p-times=$ptimes
+  #end if
+  
+   --o-trimmed-sequences=otrimmedsequences
+   
+  #if $pindels:
+   --p-indels
+  #end if
+  
+  #if $perrorrate:
+   --p-error-rate=$perrorrate
+  #end if
+  
+  #if $pmatchadapterwildcards:
+   --p-match-adapter-wildcards
+  #end if
+  
+  #set $slots = '${GALAXY_SLOTS:-4}'
+   --p-cores=$slots
+  
+  #if str($padapter):
+   --p-adapter="$padapter"
+  #end if
+  
+  #if $pmatchreadwildcards:
+   --p-match-read-wildcards
+  #end if
+  ;
+  cp otrimmedsequences.qza $otrimmedsequences
+  
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demultiplexed-sequences: SampleData[SequencesWithQuality] The single-end sequences to be trimmed. [required]" name="idemultiplexedsequences" optional="False" type="data"/>
+
+ <param label="--p-adapter: Sequence of an adapter ligated to the 3' end. The adapter and any subsequent bases are trimmed. If a `$` is appended, the adapter is only found if it is at the end of the read. If your sequence of interest is 'framed' by a 5' and a 3' adapter, use this parameter to define a 'linked' primer - see https://cutadapt.readthedocs.io for complete details.  [optional]" name="padapter" optional="True" type="text"/>
+
+ <param label="--p-front: Sequence of an adapter ligated to the 5' end. The adapter and any preceding bases are trimmed. Partial matches at the 5' end are allowed. If a `^` character is prepended, the adapter is only found if it is at the beginning of the read.  [optional]" name="pfront" optional="True" type="text"/>
+ <param label="--p-anywhere: Sequence of an adapter that may be ligated to the 5' or 3' end. Both types of matches as described under `adapter` and `front` are allowed. If the first base of the read is part of the match, the behavior is as with `front`, otherwise as with `adapter`. This option is mostly for rescuing failed library preparations - do not use if you know which end your adapter was ligated to.  [optional]" name="panywhere" optional="True" type="text"/>
+
+ <param label="--p-error-rate: Maximum allowed error rate.  [default: 0.1]" name="perrorrate" optional="True" type="float" value="0.1"/>
+
+ <param label="--p-indels: --p-no-indels      Allow insertions or deletions of bases when matching adapters.  [default: True]" name="pindels" checked="False" type="boolean"/>
+ <param label="--p-times: Remove multiple occurrences of an adapter if it is repeated, up to `times` times. [default: 1]" name="ptimes" optional="True" type="integer" value="1"/>
+
+ <param label="--p-overlap: Require at least `overlap` bases of overlap between read and adapter for an adapter to be found.  [default: 3]" name="poverlap" optional="True" type="integer" value="3"/>
+
+ <param label="--p-match-read-wildcards: --p-no-match-read-wildcards Interpret IUPAC wildcards (e.g., N) in reads.  [default: False]" name="pmatchreadwildcards" checked="False" type="boolean"/>
+ <param label="--p-match-adapter-wildcards: --p-no-match-adapter-wildcards Interpret IUPAC wildcards (e.g., N) in adapters.  [default: True]" name="pmatchadapterwildcards" checked="False" type="boolean"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: trimmed-sequences.qza" name="otrimmedsequences"/>
+ </outputs>
+ <help><![CDATA[
+Find and remove adapters in demultiplexed single-end sequences.
+----------------------------------------------------------------
+
+Search demultiplexed single-end sequences for adapters and remove them. The
+parameter descriptions in this method are adapted from the official
+cutadapt docs - please see those docs at https://cutadapt.readthedocs.io
+for complete details.
+
+Parameters
+----------
+demultiplexed_sequences : SampleData[SequencesWithQuality]
+    The single-end sequences to be trimmed.
+adapter : List[Str], optional
+    Sequence of an adapter ligated to the 3' end. The adapter and any
+    subsequent bases are trimmed. If a `$` is appended, the adapter is only
+    found if it is at the end of the read. If your sequence of interest is
+    "framed" by a 5' and a 3' adapter, use this parameter to define a
+    "linked" primer - see https://cutadapt.readthedocs.io for complete
+    details.
+front : List[Str], optional
+    Sequence of an adapter ligated to the 5' end. The adapter and any
+    preceding bases are trimmed. Partial matches at the 5' end are allowed.
+    If a `^` character is prepended, the adapter is only found if it is at
+    the beginning of the read.
+anywhere : List[Str], optional
+    Sequence of an adapter that may be ligated to the 5' or 3' end. Both
+    types of matches as described under `adapter` and `front` are allowed.
+    If the first base of the read is part of the match, the behavior is as
+    with `front`, otherwise as with `adapter`. This option is mostly for
+    rescuing failed library preparations - do not use if you know which end
+    your adapter was ligated to.
+error_rate : Float % Range(0, 1, inclusive_end=True), optional
+    Maximum allowed error rate.
+indels : Bool, optional
+    Allow insertions or deletions of bases when matching adapters.
+times : Int % Range(1, None), optional
+    Remove multiple occurrences of an adapter if it is repeated, up to
+    `times` times.
+overlap : Int % Range(1, None), optional
+    Require at least `overlap` bases of overlap between read and adapter
+    for an adapter to be found.
+match_read_wildcards : Bool, optional
+    Interpret IUPAC wildcards (e.g., N) in reads.
+match_adapter_wildcards : Bool, optional
+    Interpret IUPAC wildcards (e.g., N) in adapters.
+
+Returns
+-------
+trimmed_sequences : SampleData[SequencesWithQuality]
+    The resulting trimmed sequences.
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_dada2_denoise-paired.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_dada2_denoise-paired.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,176 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_dada2_denoise-paired" name="qiime dada2 denoise-paired" version="2018.4">\n+\t<description> - Denoise and dereplicate paired-end sequences</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command><![CDATA[\n+  qiime dada2 denoise-paired --i-demultiplexed-seqs=$idemultiplexedseqs --p-trunc-len-f="$ptrunclenf" --p-trunc-len-r="$ptrunclenr"\n+\n+  #if $pmaxee:\n+   --p-max-ee=$pmaxee\n+  #end if\n+  \n+  #if $ptrimleftr:\n+   --p-trim-left-r=$ptrimleftr\n+  #end if\n+  \n+   --o-table=otable\n+   \n+  #if $phashedfeatureids:\n+   --p-hashed-feature-ids\n+  #else\n+\t--p-no-hashed-feature-ids\n+  #end if\n+  \n+  #set $pnthreads = \'${GALAXY_SLOTS:-4}\'\n+  \n+  #if str($pnthreads):\n+   --p-n-threads=$pnthreads\n+  #end if  \n+  \n+  #if $ptrimleftf:\n+   --p-trim-left-f=$ptrimleftf\n+  #end if\n+  \n+  #if str($pchimeramethod) != \'None\':\n+   --p-chimera-method=$pchimeramethod\n+  #end if\n+  \n+  #if $pnreadslearn:\n+   --p-n-reads-learn=$pnreadslearn\n+  #end if\n+  \n+   --o-representative-sequences=orepresentativesequences\n+   \n+  #if str($cmdconfig) != \'None\':\n+   --cmd-config=$cmdconfig\n+  #end if\n+  \n+  #if $ptruncq:\n+   --p-trunc-q=$ptruncq\n+  #end if\n+  \n+  --o-denoising-stats=odenoisingstats\n+  \n+  #if $pminfoldparentoverabundance:\n+   --p-min-fold-parent-over-abundance=$pminfoldparentoverabundance\n+  #end if\n+  ;\n+  cp otable.qza $otable;\n+  cp odenoisingstats.qza $odenoisingstats;\n+  cp orepresentativesequences.qza $orepresentativesequences;\n+]]></command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-demultiplexed-seqs: SampleData[PairedEndSequencesWithQuality] The paired-end demultiplexed sequences to be denoised.  [required]" name="idemultiplexedseqs" optional="False" type="data"/>\n+\t\t<param label="--p-trunc-len-f: Position at which forward read sequences should be truncated due to decrease in quality. This truncates the 3\' end of the of the input sequences, which will be the bases that were sequenced in the last cycles. Reads that are shorter than this value will be discarded. After this parameter is applied there must still be at least a 20 nucleotide overlap between the forward and reverse reads. If 0 is provided, no truncation or length filtering will be performed  [required]" name="ptrunclenf" optional="False" type="integer" value="0"/>\n+\t\t<param label="--p-trunc-len-r: Position at which reverse read sequences should be truncated due to decrease in quality. This truncates the 3\' end of the of the input sequences, which will be the bases that were sequenced in the last cycles. Reads that are shorter than this value will be discarded. After this parameter is applied there must still be at least a 20 nucleotide overlap between the forward and reverse reads. If 0 is provided, no truncation or length filtering will be performed  [required]" name="ptrunclenr" optional="False" type="integer" value="0"/>\n+\t\t<param label="--p-trim-left-f: Position at which forward read sequences should be trimmed due to low quality. This trims the 5\' end of the input sequences, which will be the bases that were sequenced in the first cycles.  [default: 0]" name="ptrimleftf" optional="True" type="integer" value="0"/>\n+\t\t<param label="--p-trim-left-r: Position at which reverse read sequences should be trimmed due to low quality. This trims the 5\' end of the input sequences, which will be the bases that were sequenced in the first cycles.  [default: 0]" name="ptrimleftr" optional="True" type="integer" value="0"/>\n+\t\t<param label="--p-max-ee: Reads with number of expected errors higher than this value will be discarded. [default: 2.0]" name="pmaxee" optional="True" type="float" value="2.0"/>\n+\t\t<param label="--p-trunc-q: Reads are truncated at the first instance of a quality score less than or equal to this value. If the resulting read is then shorter than \\`trunc_len_f\\` or \\`trunc_len_r\\` (depending on the direction of the read) it is d'..b'e paired-end sequences\n+--------------------------------------------\n+\n+This method denoises paired-end sequences, dereplicates them, and filters\n+chimeras.\n+\n+Parameters\n+----------\n+demultiplexed_seqs : SampleData[PairedEndSequencesWithQuality]\n+    The paired-end demultiplexed sequences to be denoised.\n+trunc_len_f : Int\n+    Position at which forward read sequences should be truncated due to\n+    decrease in quality. This truncates the 3\' end of the of the input\n+    sequences, which will be the bases that were sequenced in the last\n+    cycles. Reads that are shorter than this value will be discarded. After\n+    this parameter is applied there must still be at least a 20 nucleotide\n+    overlap between the forward and reverse reads. If 0 is provided, no\n+    truncation or length filtering will be performed\n+trunc_len_r : Int\n+    Position at which reverse read sequences should be truncated due to\n+    decrease in quality. This truncates the 3\' end of the of the input\n+    sequences, which will be the bases that were sequenced in the last\n+    cycles. Reads that are shorter than this value will be discarded. After\n+    this parameter is applied there must still be at least a 20 nucleotide\n+    overlap between the forward and reverse reads. If 0 is provided, no\n+    truncation or length filtering will be performed\n+trim_left_f : Int, optional\n+    Position at which forward read sequences should be trimmed due to low\n+    quality. This trims the 5\' end of the input sequences, which will be\n+    the bases that were sequenced in the first cycles.\n+trim_left_r : Int, optional\n+    Position at which reverse read sequences should be trimmed due to low\n+    quality. This trims the 5\' end of the input sequences, which will be\n+    the bases that were sequenced in the first cycles.\n+max_ee : Float, optional\n+    Reads with number of expected errors higher than this value will be\n+    discarded.\n+trunc_q : Int, optional\n+    Reads are truncated at the first instance of a quality score less than\n+    or equal to this value. If the resulting read is then shorter than\n+    \\`trunc_len_f\\` or \\`trunc_len_r\\` (depending on the direction of the read)\n+    it is discarded.\n+chimera_method : Str % Choices({\'consensus\', \'none\', \'pooled\'}), optional\n+    The method used to remove chimeras. "none": No chimera removal is\n+    performed. "pooled": All reads are pooled prior to chimera detection.\n+    "consensus": Chimeras are detected in samples individually, and\n+    sequences found chimeric in a sufficient fraction of samples are\n+    removed.\n+min_fold_parent_over_abundance : Float, optional\n+    The minimum abundance of potential parents of a sequence being tested\n+    as chimeric, expressed as a fold-change versus the abundance of the\n+    sequence being tested. Values should be greater than or equal to 1\n+    (i.e. parents should be more abundant than the sequence being tested).\n+    This parameter has no effect if chimera_method is "none".\n+n_reads_learn : Int, optional\n+    The number of reads to use when training the error model. Smaller\n+    numbers will result in a shorter run time but a less reliable error\n+    model.\n+hashed_feature_ids : Bool, optional\n+    If true, the feature ids in the resulting table will be presented as\n+    hashes of the sequences defining each feature. The hash will always be\n+    the same for the same sequence so this allows feature tables to be\n+    merged across runs of this method. You should only merge tables if the\n+    exact same parameters are used for each run.\n+\n+Returns\n+-------\n+table : FeatureTable[Frequency]\n+    The resulting feature table.\n+representative_sequences : FeatureData[Sequence]\n+    The resulting feature sequences. Each feature in the feature table will\n+    be represented by exactly one sequence, and these sequences will be the\n+    joined paired-end sequences.\n+    ]]>\n+</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_dada2_denoise-pyro.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_dada2_denoise-pyro.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,168 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_dada2_denoise-pyro" name="qiime dada2 denoise-pyro" version="2018.4">\n+\t<description> - Denoise and dereplicate single-end pyrosequences</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command><![CDATA[\n+\t\n+  qiime dada2 denoise-pyro --p-trunc-len="$ptrunclen" --i-demultiplexed-seqs=$idemultiplexedseqs\n+\n+  #if $pnreadslearn:\n+   --p-n-reads-learn=$pnreadslearn\n+  #end if\n+  \n+  #if str($pchimeramethod) != \'None\':\n+   --p-chimera-method=$pchimeramethod\n+  #end if\n+  \n+   --o-representative-sequences=orepresentativesequences\n+  \n+  #if $pminfoldparentoverabundance:\n+   --p-min-fold-parent-over-abundance=$pminfoldparentoverabundance\n+  #end if\n+  \n+  #if str($cmdconfig) != \'None\':\n+   --cmd-config=$cmdconfig\n+  #end if\n+  \n+  #if $pmaxlen:\n+   --p-max-len=$pmaxlen\n+  #end if\n+  \n+   --o-table=otable\n+   \n+  #if $ptruncq:\n+   --p-trunc-q=$ptruncq\n+  #end if\n+  \n+  #set $pnthreads = \'${GALAXY_SLOTS:-4}\'\n+  \n+  #if str($pnthreads):\n+   --p-n-threads="$pnthreads"\n+  #end if\n+  \n+  \n+  #if $ptrimleft:\n+   --p-trim-left=$ptrimleft\n+  #end if\n+  \n+  #if $phashedfeatureids:\n+   --p-hashed-feature-ids\n+  #end if\n+  \n+  #if $pmaxee:\n+   --p-max-ee=$pmaxee\n+  #end if\n+  \n+   --o-denoising-stats=odenoisingstats;\n+   \n+  cp orepresentativesequences.qza $orepresentativesequences;\n+  cp otable.qza $otable;\n+  cp odenoisingstats.qza $odenoisingstats;\n+  ]]></command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-demultiplexed-seqs: SampleData[SequencesWithQuality] The single-end demultiplexed pyrosequencing sequences (e.g. 454, IonTorrent) to be denoised.  [required]" name="idemultiplexedseqs" optional="False" type="data"/>\n+\n+\t\t<param label="--p-trunc-len: Position at which sequences should be truncated due to decrease in quality. This truncates the 3\' end of the of the input sequences, which will be the bases that were sequenced in the last cycles. Reads that are shorter than this value will be discarded. If 0 is provided, no truncation or length filtering will be performed  [required]" name="ptrunclen" optional="False" type="integer" value="0"/>\n+\t\t<param label="--p-trim-left: Position at which sequences should be trimmed due to low quality. This trims the 5\' end of the of the input sequences, which will be the bases that were sequenced in the first cycles.  [default: 0]" name="ptrimleft" optional="True" type="integer" value="0"/>\n+\t\t<param label="--p-max-ee: Reads with number of expected errors higher than this value will be discarded. [default: 2.0]" name="pmaxee" optional="True" type="float" value="2.0"/>\n+\n+\t\t<param label="--p-trunc-q: Reads are truncated at the first instance of a quality score less than or equal to this value. If the resulting read is then shorter than `trunc_len`, it is discarded. [default: 2]" name="ptruncq" optional="True" type="integer" value="2"/>\n+\n+\t\t<param label="--p-max-len: Remove reads prior to trimming or truncation which are longer than this value. If 0 is provided no reads will be removed based on length.  [default: 0]" name="pmaxlen" optional="True" type="integer" value="0"/>\n+\n+\t\t<param label="--p-chimera-method: " name="pchimeramethod" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="consensus">consensus</option>\n+\t\t\t<option value="none">none</option>\n+\t\t\t<option value="pooled">pooled</option>\n+\t\t</param>\n+\n+\t\t<param label="--p-min-fold-parent-over-abundance: The minimum abundance of potential parents of a sequence being tested as chimeric, expressed as a fold-change versus the abundance of the sequence being tested. Values should be greater than or equal to 1 (i.e. parents should be more abundant than the sequence being tested). This parameter has no effect if chimera_method is \'none\'. [default: 1.0]" name="pminfoldparentoverabundance" optional="True" type="float" value="1.0"/>\n+\n+\t\t<par'..b'ters are used for each run.  [default: True]" name="phashedfeatureids" checked="True" type="boolean"/>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: representative-sequences.qza" name="orepresentativesequences"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: table.qza" name="otable"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: denoising-stats.qza" name="odenoisingstats"/>\n+\t</outputs>\n+\t<help>\n+ <![CDATA[\n+Denoise and dereplicate single-end pyrosequences\n+-------------------------------------------------\n+This method denoises single-end pyrosequencing sequences, dereplicates\n+them, and filters chimeras.\n+\n+Parameters\n+----------\n+demultiplexed_seqs : SampleData[SequencesWithQuality]\n+    The single-end demultiplexed pyrosequencing sequences (e.g. 454,\n+    IonTorrent) to be denoised.\n+trunc_len : Int\n+    Position at which sequences should be truncated due to decrease in\n+    quality. This truncates the 3\' end of the of the input sequences, which\n+    will be the bases that were sequenced in the last cycles. Reads that\n+    are shorter than this value will be discarded. If 0 is provided, no\n+    truncation or length filtering will be performed\n+trim_left : Int, optional\n+    Position at which sequences should be trimmed due to low quality. This\n+    trims the 5\' end of the of the input sequences, which will be the bases\n+    that were sequenced in the first cycles.\n+max_ee : Float, optional\n+    Reads with number of expected errors higher than this value will be\n+    discarded.\n+trunc_q : Int, optional\n+    Reads are truncated at the first instance of a quality score less than\n+    or equal to this value. If the resulting read is then shorter than\n+    `trunc_len`, it is discarded.\n+max_len : Int, optional\n+    Remove reads prior to trimming or truncation which are longer than this\n+    value. If 0 is provided no reads will be removed based on length.\n+chimera_method : Str % Choices({\'consensus\', \'none\', \'pooled\'}), optional\n+    The method used to remove chimeras. "none": No chimera removal is\n+    performed. "pooled": All reads are pooled prior to chimera detection.\n+    "consensus": Chimeras are detected in samples individually, and\n+    sequences found chimeric in a sufficient fraction of samples are\n+    removed.\n+min_fold_parent_over_abundance : Float, optional\n+    The minimum abundance of potential parents of a sequence being tested\n+    as chimeric, expressed as a fold-change versus the abundance of the\n+    sequence being tested. Values should be greater than or equal to 1\n+    (i.e. parents should be more abundant than the sequence being tested).\n+    This parameter has no effect if chimera_method is "none".\n+n_threads : Int, optional\n+    The number of threads to use for multithreaded processing. If 0 is\n+    provided, all available cores will be used.\n+n_reads_learn : Int, optional\n+    The number of reads to use when training the error model. Smaller\n+    numbers will result in a shorter run time but a less reliable error\n+    model.\n+hashed_feature_ids : Bool, optional\n+    If true, the feature ids in the resulting table will be presented as\n+    hashes of the sequences defining each feature. The hash will always be\n+    the same for the same sequence so this allows feature tables to be\n+    merged across runs of this method. You should only merge tables if the\n+    exact same parameters are used for each run.\n+\n+Returns\n+-------\n+table : FeatureTable[Frequency]\n+    The resulting feature table.\n+representative_sequences : FeatureData[Sequence]\n+    The resulting feature sequences. Each feature in the feature table will\n+    be represented by exactly one sequence.\n+denoising_stats : SampleData[DADA2Stats]\n+\t\t\\\n+     ]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_dada2_denoise-single.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_dada2_denoise-single.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,146 @@
+<?xml version="1.0" ?>
+<tool id="qiime_dada2_denoise-single" name="qiime dada2 denoise-single" version="2018.4">
+ <description> - Denoise and dereplicate single-end sequences</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime dada2 denoise-single --i-demultiplexed-seqs=$idemultiplexedseqs --p-trunc-len="$ptrunclen"
+
+  #if $pmaxee:
+   --p-max-ee=$pmaxee
+  #end if
+  
+   --o-table=otable
+   
+  #if $phashedfeatureids:
+   --p-hashed-feature-ids
+  #end if
+  
+  #if $ptrimleft:
+   --p-trim-left=$ptrimleft
+  #end if
+  
+  #if str($pchimeramethod) != 'None':
+   --p-chimera-method=$pchimeramethod
+  #end if
+  
+  #set $pnthreads = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pnthreads):
+   --p-n-threads="$pnthreads"
+  #end if
+  
+  
+  #if $pnreadslearn:
+   --p-n-reads-learn=$pnreadslearn
+  #end if
+  
+   --o-representative-sequences=orepresentativesequences
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $ptruncq:
+   --p-trunc-q=$ptruncq
+  #end if
+  
+  #if $pminfoldparentoverabundance:
+   --p-min-fold-parent-over-abundance=$pminfoldparentoverabundance
+  #end if
+  
+   --o-denoising-stats=odenoisingstats
+  ;
+  
+  cp otable.qza $otable;
+  cp orepresentativesequences.qza $orepresentativesequences;
+  cp odenoisingstats.qza $odenoisingstats;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demultiplexed-seqs: SampleData[PairedEndSequencesWithQuality | SequencesWithQuality] The single-end demultiplexed sequences to be denoised.  [required]" name="idemultiplexedseqs" optional="False" type="data"/>
+ <param label="--p-trunc-len: Position at which sequences should be truncated due to decrease in quality. This truncates the 3' end of the of the input sequences, which will be the bases that were sequenced in the last cycles. Reads that are shorter than this value will be discarded. If 0 is provided, no truncation or length filtering will be performed  [required]" name="ptrunclen" optional="False" type="text"/>
+ <param label="--p-trim-left: Position at which sequences should be trimmed due to low quality. This trims the 5' end of the of the input sequences, which will be the bases that were sequenced in the first cycles.  [default: 0]" name="ptrimleft" optional="True" type="integer" value="0"/>
+ <param label="--p-max-ee: Reads with number of expected errors higher than this value will be discarded. [default: 2.0]" name="pmaxee" optional="True" type="float" value="2.0"/>
+ <param label="--p-trunc-q: Reads are truncated at the first instance of a quality score less than or equal to this value. If the resulting read is then shorter than \`trunc_len`, it is discarded. [default: 2]" name="ptruncq" optional="True" type="integer" value="2"/>
+ <param label="--p-chimera-method: " name="pchimeramethod" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="pooled">pooled</option>
+ <option value="consensus">consensus</option>
+ <option value="none">none</option>
+ </param>
+ <param label="--p-min-fold-parent-over-abundance: The minimum abundance of potential parents of a sequence being tested as chimeric, expressed as a fold-change versus the abundance of the sequence being tested. Values should be greater than or equal to 1 (i.e. parents should be more abundant than the sequence being tested). This parameter has no effect if chimera_method is 'none'. [default: 1.0]" name="pminfoldparentoverabundance" optional="True" type="float" value="1.0"/>
+ <param label="--p-hashed-feature-ids: --p-no-hashed-feature-ids If true, the feature ids in the resulting table will be presented as hashes of the sequences defining each feature. The hash will always be the same for the same sequence so this allows feature tables to be merged across runs of this method. You should only merge tables if the exact same parameters are used for each run.  [default: True]" name="phashedfeatureids" checked="True" type="boolean"/>
+ <param label="--p-n-reads-learn: The number of reads to use when training the error model. Smaller numbers will result in a shorter run time but a less reliable error model.  [default: 1000000]" name="pnreadslearn" optional="True" type="integer" value="1000000"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: table.qza" name="otable"/>
+ <data format="qza" label="${tool.name} on ${on_string}: representative-sequences.qza" name="orepresentativesequences"/>
+   <data format="qza" label="${tool.name} on ${on_string}: denoising-stats.qza" name="odenoisingstats"/>
+ </outputs>
+ <help><![CDATA[
+Denoise and dereplicate single-end sequences
+--------------------------------------------
+
+This method denoises single-end sequences, dereplicates them, and filters
+chimeras.
+
+Parameters
+----------
+demultiplexed_seqs : SampleData[PairedEndSequencesWithQuality | SequencesWithQuality]
+    The single-end demultiplexed sequences to be denoised.
+trunc_len : Int
+    Position at which sequences should be truncated due to decrease in
+    quality. This truncates the 3' end of the of the input sequences, which
+    will be the bases that were sequenced in the last cycles. Reads that
+    are shorter than this value will be discarded. If 0 is provided, no
+    truncation or length filtering will be performed
+trim_left : Int, optional
+    Position at which sequences should be trimmed due to low quality. This
+    trims the 5' end of the of the input sequences, which will be the bases
+    that were sequenced in the first cycles.
+max_ee : Float, optional
+    Reads with number of expected errors higher than this value will be
+    discarded.
+trunc_q : Int, optional
+    Reads are truncated at the first instance of a quality score less than
+    or equal to this value. If the resulting read is then shorter than
+    \`trunc_len`, it is discarded.
+chimera_method : Str % Choices({'consensus', 'none', 'pooled'}), optional
+    The method used to remove chimeras. "none": No chimera removal is
+    performed. "pooled": All reads are pooled prior to chimera detection.
+    "consensus": Chimeras are detected in samples individually, and
+    sequences found chimeric in a sufficient fraction of samples are
+    removed.
+min_fold_parent_over_abundance : Float, optional
+    The minimum abundance of potential parents of a sequence being tested
+    as chimeric, expressed as a fold-change versus the abundance of the
+    sequence being tested. Values should be greater than or equal to 1
+    (i.e. parents should be more abundant than the sequence being tested).
+    This parameter has no effect if chimera_method is "none".
+n_reads_learn : Int, optional
+    The number of reads to use when training the error model. Smaller
+    numbers will result in a shorter run time but a less reliable error
+    model.
+hashed_feature_ids : Bool, optional
+    If true, the feature ids in the resulting table will be presented as
+    hashes of the sequences defining each feature. The hash will always be
+    the same for the same sequence so this allows feature tables to be
+    merged across runs of this method. You should only merge tables if the
+    exact same parameters are used for each run.
+
+Returns
+-------
+table : FeatureTable[Frequency]
+    The resulting feature table.
+representative_sequences : FeatureData[Sequence]
+    The resulting feature sequences. Each feature in the feature table will
+    be represented by exactly one sequence.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_deblur_denoise-16S.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_deblur_denoise-16S.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,125 @@
+<?xml version="1.0" ?>
+<tool id="qiime_deblur_denoise-16S" name="qiime deblur denoise-16S" version="2018.4">
+ <description>- Deblur sequences using a 16S positive filter.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime deblur denoise-16S --p-trim-length="$ptrimlength" --i-demultiplexed-seqs=$idemultiplexedseqs --o-representative-sequences=orepresentativesequences
+
+  #if $pmeanerror:
+   --p-mean-error=$pmeanerror
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $pminreads:
+   --p-min-reads=$pminreads
+  #end if
+  
+  #if $pindelprob:
+   --p-indel-prob=$pindelprob
+  #end if
+  
+  #set $pjobstostart = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pjobstostart):
+   --p-jobs-to-start="$pjobstostart"
+  #end if
+  
+   --o-stats=ostats
+   
+  #if $pindelmax:
+   --p-indel-max=$pindelmax
+  #end if
+  
+  #if $pminsize:
+   --p-min-size=$pminsize
+  #end if
+  
+  #if $phashedfeatureids:
+   --p-hashed-feature-ids
+  #else 
+  --p-no-hashed-feature-ids
+  #end if
+  
+   --o-table=otable
+  
+   --p-sample-stats 
+  
+  ;
+  cp orepresentativesequences.qza $orepresentativesequences;
+  cp ostats.qza $ostats;
+  cp otable.qza $otable;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demultiplexed-seqs: SampleData[JoinedSequencesWithQuality | PairedEndSequencesWithQuality | SequencesWithQuality] The demultiplexed sequences to be denoised. [required]" name="idemultiplexedseqs" optional="False" type="data"/>
+ <param label="--p-trim-length: Sequence trim length, specify -1 to disable trimming.  [required]" name="ptrimlength" optional="False" type="text"/>
+ <param label="--p-mean-error: The mean per nucleotide error, used for original sequence estimate.  [default: 0.005]" name="pmeanerror" optional="True" type="float" value="0.005"/>
+ <param label="--p-indel-prob: Insertion/deletion (indel) probability (same for N indels).  [default: 0.01]" name="pindelprob" optional="True" type="float" value="0.01"/>
+ <param label="--p-indel-max: Maximum number of insertion/deletions. [default: 3]" name="pindelmax" optional="True" type="integer" value="3"/>
+ <param label="--p-min-reads: Retain only features appearing at least min_reads times across all samples in the resulting feature table.  [default: 10]" name="pminreads" optional="True" type="integer" value="10"/>
+ <param label="--p-min-size: In each sample, discard all features with an abundance less than min_size.  [default: 2]" name="pminsize" optional="True" type="integer" value="2"/>
+ <param label="--p-hashed-feature-ids: --p-no-hashed-feature-ids If true, hash the feature IDs.  [default: True]" name="phashedfeatureids" checked="True" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: representative-sequences.qza" name="orepresentativesequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: stats.qza" name="ostats"/>
+ <data format="qza" label="${tool.name} on ${on_string}: table.qza" name="otable"/>
+ </outputs>
+ <help><![CDATA[
+Deblur sequences using a 16S positive filter.
+----------------------------------------------
+
+Perform sequence quality control for Illumina data using the Deblur
+workflow with a 16S reference as a positive filter. Only forward reads are
+supported at this time. The specific reference used is the 88% OTUs from
+Greengenes 13_8. This mode of operation should only be used when data were
+generated from a 16S amplicon protocol on an Illumina platform. The
+reference is only used to assess whether each sequence is likely to be 16S
+by a local alignment using SortMeRNA with a permissive e-value; the
+reference is not used to characterize the sequences.
+
+Parameters
+----------
+demultiplexed_seqs : SampleData[JoinedSequencesWithQuality | PairedEndSequencesWithQuality | SequencesWithQuality]
+    The demultiplexed sequences to be denoised.
+trim_length : Int
+    Sequence trim length, specify -1 to disable trimming.
+sample_stats : Bool, optional
+    If true, gather stats per sample.
+mean_error : Float, optional
+    The mean per nucleotide error, used for original sequence estimate.
+indel_prob : Float, optional
+    Insertion/deletion (indel) probability (same for N indels).
+indel_max : Int, optional
+    Maximum number of insertion/deletions.
+min_reads : Int, optional
+    Retain only features appearing at least min_reads times across all
+    samples in the resulting feature table.
+min_size : Int, optional
+    In each sample, discard all features with an abundance less than
+    min_size.
+jobs_to_start : Int, optional
+    Number of jobs to start (if to run in parallel).
+hashed_feature_ids : Bool, optional
+    If true, hash the feature IDs.
+
+Returns
+-------
+table : FeatureTable[Frequency]
+    The resulting denoised feature table.
+representative_sequences : FeatureData[Sequence]
+    The resulting feature sequences.
+stats : DeblurStats
+    Per-sample stats if requested.
+     ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_deblur_denoise-other.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_deblur_denoise-other.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,126 @@
+<?xml version="1.0" ?>
+<tool id="qiime_deblur_denoise-other" name="qiime deblur denoise-other" version="2018.4">
+ <description> - Deblur sequences using a user-specified positive filter.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime deblur denoise-other --i-demultiplexed-seqs=$idemultiplexedseqs --p-trim-length="$ptrimlength" --i-reference-seqs=$ireferenceseqs
+
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $phashedfeatureids:
+   --p-hashed-feature-ids
+  #else 
+  --p-no-hashed-feature-ids
+  #end if
+  
+  #if $pindelprob:
+   --p-indel-prob=$pindelprob
+  #end if
+  
+  #if $pindelmax:
+   --p-indel-max=$pindelmax
+  #end if
+  
+  #if $pmeanerror:
+   --p-mean-error=$pmeanerror
+  #end if
+  
+   --o-representative-sequences=orepresentativesequences --o-table=otable --o-stats=ostats
+   
+  #set $pjobstostart = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pjobstostart):
+   --p-jobs-to-start="$pjobstostart"
+  #end if  
+  
+  #if $pminreads:
+   --p-min-reads=$pminreads
+  #end if
+  
+  #if $pminsize:
+   --p-min-size=$pminsize
+  #end if  
+  
+   --p-sample-stats  
+  ;
+  cp orepresentativesequences.qza $orepresentativesequences;
+  cp otable.qza $otable;
+  cp ostats.qza $ostats;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demultiplexed-seqs: SampleData[JoinedSequencesWithQuality | PairedEndSequencesWithQuality | SequencesWithQuality] The demultiplexed sequences to be denoised. [required]" name="idemultiplexedseqs" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-seqs: FeatureData[Sequence] Positive filtering database. Keep all sequences aligning to these sequences. [required]" name="ireferenceseqs" optional="False" type="data"/>
+ <param label="--p-trim-length: Sequence trim length, specify -1 to disable trimming.  [required]" name="ptrimlength" optional="False" type="text"/>
+ <param label="--p-mean-error: The mean per nucleotide error, used for original sequence estimate.  [default: 0.005]" name="pmeanerror" optional="True" type="float" value="0.005"/>
+ <param label="--p-indel-prob: Insertion/deletion (indel) probability (same for N indels).  [default: 0.01]" name="pindelprob" optional="True" type="float" value="0.01"/>
+ <param label="--p-indel-max: Maximum number of insertion/deletions. [default: 3]" name="pindelmax" optional="True" type="integer" value="3"/>
+ <param label="--p-min-reads: Retain only features appearing at least min_reads times across all samples in the resulting feature table.  [default: 10]" name="pminreads" optional="True" type="integer" value="10"/>
+ <param label="--p-min-size: In each sample, discard all features with an abundance less than min_size.  [default: 2]" name="pminsize" optional="True" type="integer" value="2"/>
+ <param label="--p-hashed-feature-ids: --p-no-hashed-feature-ids If true, hash the feature IDs.  [default: True]" name="phashedfeatureids" checked="True" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: representative-sequences.qza" name="orepresentativesequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: table.qza" name="otable"/>
+ <data format="qza" label="${tool.name} on ${on_string}: stats.qza" name="ostats"/>
+ </outputs>
+ <help><![CDATA[
+Deblur sequences using a user-specified positive filter.
+---------------------------------------------------------
+
+Perform sequence quality control for Illumina data using the Deblur
+workflow, including positive alignment-based filtering. Only forward reads
+are supported at this time. This mode of execution is particularly useful
+when operating on non-16S data. For example, to apply Deblur to 18S data,
+you would want to specify a reference composed of 18S sequences in order to
+filter out sequences which do not appear to be 18S. The assessment is
+performed by local alignment using SortMeRNA with a permissive e-value
+threshold.
+
+Parameters
+----------
+demultiplexed_seqs : SampleData[JoinedSequencesWithQuality | PairedEndSequencesWithQuality | SequencesWithQuality]
+    The demultiplexed sequences to be denoised.
+reference_seqs : FeatureData[Sequence]
+    Positive filtering database. Keep all sequences aligning to these
+    sequences.
+trim_length : Int
+    Sequence trim length, specify -1 to disable trimming.
+sample_stats : Bool, optional
+    If true, gather stats per sample.
+mean_error : Float, optional
+    The mean per nucleotide error, used for original sequence estimate.
+indel_prob : Float, optional
+    Insertion/deletion (indel) probability (same for N indels).
+indel_max : Int, optional
+    Maximum number of insertion/deletions.
+min_reads : Int, optional
+    Retain only features appearing at least min_reads times across all
+    samples in the resulting feature table.
+min_size : Int, optional
+    In each sample, discard all features with an abundance less than
+    min_size.
+jobs_to_start : Int, optional
+    Number of jobs to start (if to run in parallel).
+hashed_feature_ids : Bool, optional
+    If true, hash the feature IDs.
+
+Returns
+-------
+table : FeatureTable[Frequency]
+    The resulting denoised feature table.
+representative_sequences : FeatureData[Sequence]
+    The resulting feature sequences.
+stats : DeblurStats
+    Per-sample stats if requested.
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_deblur_visualize-stats.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_deblur_visualize-stats.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,48 @@
+<?xml version="1.0" ?>
+<tool id="qiime_deblur_visualize-stats" name="qiime deblur visualize-stats" version="2018.4">
+ <description> - Visualize Deblur stats per sample.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime deblur visualize-stats --i-deblur-stats=$ideblurstats
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-visualization=ovisualization;
+  
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-deblur-stats: DeblurStats Summary statistics of the Deblur process. [required]" name="ideblurstats" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Visualize Deblur stats per sample.
+----------------------------------
+
+Display Deblur statistics per sample
+
+Parameters
+----------
+deblur_stats : DeblurStats
+    Summary statistics of the Deblur process.
+
+Returns
+-------
+visualization : Visualization
+ \
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_demux_emp-paired.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_demux_emp-paired.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,84 @@
+<?xml version="1.0" ?>
+<tool id="qiime_demux_emp-paired" name="qiime demux emp-paired" version="2018.4">
+ <description>- Demultiplex paired-end sequence data generated with the EMP protocol.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime demux emp-paired --m-barcodes-column="$mbarcodescolumn" --i-seqs=$iseqs
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-barcodes-file=$list_dict_to_string($input_files_mbarcodesfile) --o-per-sample-sequences=opersamplesequences
+  
+  #if $prevcompbarcodes:
+   --p-rev-comp-barcodes
+  #else
+  --p-no-rev-comp-barcodes
+  #end if
+  
+  #if $prevcompmappingbarcodes:
+   --p-rev-comp-mapping-barcodes
+  #else
+  --p-no-rev-comp-mapping-barcodes
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  ;
+  cp opersamplesequences.qza $opersamplesequences;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-seqs: EMPPairedEndSequences The paired-end sequences to be demultiplexed.  [required]" name="iseqs" optional="False" type="data"/>
+ <repeat name="input_files_mbarcodesfile" optional="False" title="--m-barcodes-file">
+ <param label="--m-barcodes-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--m-barcodes-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. The sample metadata column containing the per-sample barcodes. [required]" name="mbarcodescolumn" optional="False" type="text"/>
+ <param label="--p-rev-comp-barcodes: --p-no-rev-comp-barcodes If provided, the barcode sequence reads will be reverse complemented prior to demultiplexing.  [default: False]" name="prevcompbarcodes" checked="False" type="boolean"/>
+ <param label="--p-rev-comp-mapping-barcodes: --p-no-rev-comp-mapping-barcodes If provided, the barcode sequences in the sample metadata will be reverse complemented prior to demultiplexing.  [default: False]" name="prevcompmappingbarcodes" checked="False" type="boolean"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: per-sample-sequences.qza" name="opersamplesequences"/>
+ </outputs>
+ <help><![CDATA[
+Demultiplex paired-end sequence data generated with the EMP protocol.
+---------------------------------------------------------------------
+
+Demultiplex paired-end sequence data (i.e., map barcode reads to sample
+ids) for data generated with the Earth Microbiome Project (EMP) amplicon
+sequencing protocol. Details about this protocol can be found at
+http://www.earthmicrobiome.org/protocols-and-standards/
+
+Parameters
+----------
+seqs : EMPPairedEndSequences
+    The paired-end sequences to be demultiplexed.
+barcodes : MetadataColumn[Categorical]
+    The sample metadata column containing the per-sample barcodes.
+rev_comp_barcodes : Bool, optional
+    If provided, the barcode sequence reads will be reverse complemented
+    prior to demultiplexing.
+rev_comp_mapping_barcodes : Bool, optional
+    If provided, the barcode sequences in the sample metadata will be
+    reverse complemented prior to demultiplexing.
+
+Returns
+-------
+per_sample_sequences : SampleData[PairedEndSequencesWithQuality]
+    The resulting demultiplexed sequences.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_demux_emp-single.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_demux_emp-single.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,83 @@
+<?xml version="1.0" ?>
+<tool id="qiime_demux_emp-single" name="qiime demux emp-single" version="2018.4">
+ <description>- Demultiplex sequence data generated with the EMP protocol.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime demux emp-single --m-barcodes-column="$mbarcodescolumn" --i-seqs=$iseqs
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-barcodes-file=$list_dict_to_string($input_files_mbarcodesfile) --o-per-sample-sequences=opersamplesequences
+   
+  #if $prevcompbarcodes:
+   --p-rev-comp-barcodes
+  #else
+    --p-no-rev-comp-barcodes
+  #end if
+  
+  #if $prevcompmappingbarcodes:
+   --p-rev-comp-mapping-barcodes
+  #else
+    --p-no-rev-comp-mapping-barcodes
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  ;
+  cp opersamplesequences.qza $opersamplesequences;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-seqs: EMPPairedEndSequences | EMPSingleEndSequences | RawSequences The single-end sequences to be demultiplexed.  [required]" name="iseqs" optional="False" type="data"/>
+ <repeat name="input_files_mbarcodesfile" optional="False" title="--m-barcodes-file">
+ <param label="--m-barcodes-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip"/>
+ </repeat>
+ <param label="--m-barcodes-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. The sample metadata column containing the per-sample barcodes. [required]" name="mbarcodescolumn" optional="False" type="text"/>
+ <param label="--p-rev-comp-barcodes: --p-no-rev-comp-barcodes If provided, the barcode sequence reads will be reverse complemented prior to demultiplexing.  [default: False]" name="prevcompbarcodes" checked="False" type="boolean"/>
+ <param label="--p-rev-comp-mapping-barcodes: --p-no-rev-comp-mapping-barcodes If provided, the barcode sequences in the sample metadata will be reverse complemented prior to demultiplexing.  [default: False]" name="prevcompmappingbarcodes" checked="False" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: per-sample-sequences.qza" name="opersamplesequences"/>
+ </outputs>
+ <help><![CDATA[
+Demultiplex sequence data generated with the EMP protocol.
+----------------------------------------------------------
+
+Demultiplex sequence data (i.e., map barcode reads to sample ids) for data
+generated with the Earth Microbiome Project (EMP) amplicon sequencing
+protocol. Details about this protocol can be found at
+http://www.earthmicrobiome.org/protocols-and-standards/
+
+Parameters
+----------
+seqs : EMPPairedEndSequences | EMPSingleEndSequences | RawSequences
+    The single-end sequences to be demultiplexed.
+barcodes : MetadataColumn[Categorical]
+    The sample metadata column containing the per-sample barcodes.
+rev_comp_barcodes : Bool, optional
+    If provided, the barcode sequence reads will be reverse complemented
+    prior to demultiplexing.
+rev_comp_mapping_barcodes : Bool, optional
+    If provided, the barcode sequences in the sample metadata will be
+    reverse complemented prior to demultiplexing.
+
+Returns
+-------
+per_sample_sequences : SampleData[SequencesWithQuality]
+    The resulting demultiplexed sequences.
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_demux_summarize.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_demux_summarize.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,60 @@
+<?xml version="1.0" ?>
+<tool id="qiime_demux_summarize" name="qiime demux summarize" version="2018.4">
+ <description> - Summarize counts per sample.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime demux summarize --i-data=$idata
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $pn:
+   --p-n=$pn
+  #end if
+  
+   --o-visualization=ovisualization;
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-data: SampleData[JoinedSequencesWithQuality | PairedEndSequencesWithQuality | SequencesWithQuality] The demultiplexed sequences to be summarized.  [required]" name="idata" optional="False" type="data"/>
+ <param label="--p-n: The number of sequences that should be selected at random for quality score plots. The quality plots will present the average positional qualities across all of the sequences selected. If input sequences are paired end, plots will be generated for both forward and reverse reads for the same \`n\` sequences.  [default: 10000]" name="pn" optional="True" type="integer" value="10000"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Summarize counts per sample.
+-----------------------------
+
+Summarize counts per sample for all samples, and generate interactive
+positional quality plots based on \`n\` randomly selected sequences.
+
+Parameters
+----------
+data : SampleData[JoinedSequencesWithQuality | PairedEndSequencesWithQuality | SequencesWithQuality]
+    The demultiplexed sequences to be summarized.
+n : Int, optional
+    The number of sequences that should be selected at random for quality
+    score plots. The quality plots will present the average positional
+    qualities across all of the sequences selected. If input sequences are
+    paired end, plots will be generated for both forward and reverse reads
+    for the same \`n\` sequences.
+
+Returns
+-------
+visualization : Visualization
+ \
+   ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_alpha-correlation.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_alpha-correlation.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,75 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_alpha-correlation" name="qiime diversity alpha-correlation" version="2018.4">
+ <description> - Alpha diversity correlation</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime diversity alpha-correlation
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-alpha-diversity=$ialphadiversity
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if str($pmethod) != 'None':
+   --p-method=$pmethod
+  #end if
+  
+   --o-visualization=ovisualization;
+  
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-alpha-diversity: SampleData[AlphaDiversity] Vector of alpha diversity values by sample. [required]" name="ialphadiversity" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--p-method: " name="pmethod" optional="True" type="select" >
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="spearman">spearman</option>
+ <option value="pearson">pearson</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Alpha diversity correlation
+----------------------------
+
+Determine whether numeric sample metadata columns are correlated with alpha
+diversity.
+
+Parameters
+----------
+alpha_diversity : SampleData[AlphaDiversity]
+    Vector of alpha diversity values by sample.
+metadata : Metadata
+    The sample metadata.
+method : Str % Choices({'pearson', 'spearman'}), optional
+    The correlation test to be applied.
+
+Returns
+-------
+visualization : Visualization
+ \
+     ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_alpha-group-significance.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_alpha-group-significance.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,61 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_alpha-group-significance" name="qiime diversity alpha-group-significance" version="2018.4">
+ <description> - Alpha diversity comparisons</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity alpha-group-significance
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-alpha-diversity=$ialphadiversity
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-visualization=ovisualization;
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization'; 
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-alpha-diversity: SampleData[AlphaDiversity] Vector of alpha diversity values by sample. [required]" name="ialphadiversity" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Alpha diversity comparisons
+----------------------------
+
+Visually and statistically compare groups of alpha diversity values.
+
+Parameters
+----------
+alpha_diversity : SampleData[AlphaDiversity]
+    Vector of alpha diversity values by sample.
+metadata : Metadata
+    The sample metadata.
+
+Returns
+-------
+visualization : Visualization
+ \
+   ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_alpha-phylogenetic.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_alpha-phylogenetic.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,59 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_alpha-phylogenetic" name="qiime diversity alpha-phylogenetic" version="2018.4">
+ <description> - Alpha diversity (phylogenetic)</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity alpha-phylogenetic --i-phylogeny=$iphylogeny --i-table=$itable --p-metric=$pmetric
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-alpha-diversity=oalphadiversity;
+   
+  cp oalphadiversity.qza  $oalphadiversity;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples for which alpha diversity should be computed. [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-phylogeny: Phylogeny[Rooted] Phylogenetic tree containing tip identifiers that correspond to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  [required]" name="iphylogeny" optional="False" type="data"/>
+ <param label="--p-metric: " name="pmetric" optional="False" type="select" >
+ <option value="faith_pd">faith_pd</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: alpha-diversity.qza" name="oalphadiversity"/>
+ </outputs>
+ <help><![CDATA[
+Alpha diversity (phylogenetic)
+------------------------------
+
+Computes a user-specified phylogenetic alpha diversity metric for all
+samples in a feature table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table containing the samples for which alpha diversity
+    should be computed.
+phylogeny : Phylogeny[Rooted]
+    Phylogenetic tree containing tip identifiers that correspond to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+metric : Str % Choices({'faith_pd'})
+    The alpha diversity metric to be computed.
+
+Returns
+-------
+alpha_diversity : SampleData[AlphaDiversity] % Properties(['phylogenetic'])
+    Vector containing per-sample alpha diversities.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_alpha-rarefaction.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_alpha-rarefaction.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,137 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_alpha-rarefaction" name="qiime diversity alpha-rarefaction" version="2018.4">
+ <description> - Alpha rarefaction curves</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity alpha-rarefaction --p-max-depth="$pmaxdepth" --i-table=$itable
+  
+  #if str($pmetrics) != 'None':
+   --p-metrics=$pmetrics
+  #end if
+  
+  #if $pmindepth:
+   --p-min-depth=$pmindepth
+  #end if
+  
+  #if $piterations:
+   --p-iterations=$piterations
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $input_files_mmetadatafile:
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+  #end if
+  
+  #if $psteps:
+   --p-steps=$psteps
+  #end if
+  
+  #if str($iphylogeny) != 'None':
+   --i-phylogeny=$iphylogeny
+  #end if
+  
+   --o-visualization=ovisualization;
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table to compute rarefaction curves from.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-max-depth: The maximum rarefaction depth. Must be greater than min_depth.  [required]" name="pmaxdepth" optional="False" type="text"/>
+ <param format="qza,no_unzip.zip" label="--i-phylogeny: Phylogeny[Rooted] Optional phylogeny for phylogenetic metrics. [optional]" name="iphylogeny" optional="True" type="data"/>
+ <param name="pmetrics" optional="True" type="select" label="--p-metrics: The metrics to be measured. By default
+                                  computes observed_otus, shannon, and if
+                                  phylogeny is provided, faith_pd.  [optional]">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="goods_coverage">goods_coverage</option>
+ <option value="heip_e">heip_e</option>
+ <option value="mcintosh_d">mcintosh_d</option>
+ <option value="observed_otus">observed_otus</option>
+ <option value="doubles">doubles</option>
+ <option value="michaelis_menten_fit">michaelis_menten_fit</option>
+ <option value="shannon">shannon</option>
+ <option value="margalef">margalef</option>
+ <option value="simpson">simpson</option>
+ <option value="lladser_pe">lladser_pe</option>
+ <option value="menhinick">menhinick</option>
+ <option value="singles">singles</option>
+ <option value="gini_index">gini_index</option>
+ <option value="robbins">robbins</option>
+ <option value="ace">ace</option>
+ <option value="simpson_e">simpson_e</option>
+ <option value="enspie">enspie</option>
+ <option value="berger_parker_d">berger_parker_d</option>
+ <option value="fisher_alpha">fisher_alpha</option>
+ <option value="dominance">dominance</option>
+ <option value="pielou_e">pielou_e</option>
+ <option value="chao1">chao1</option>
+ <option value="mcintosh_e">mcintosh_e</option>
+ <option value="faith_pd">faith_pd</option>
+ <option value="brillouin_d">brillouin_d</option>
+ </param>
+ <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--p-min-depth: The minimum rarefaction depth.  [default: 1]" name="pmindepth" optional="True" type="integer" value="1"/>
+ <param label="--p-steps: The number of rarefaction depths to include between min_depth and max_depth.  [default: 10]" name="psteps" optional="True" type="integer" value="10"/>
+ <param label="--p-iterations: The number of rarefied feature tables to compute at each step.  [default: 10]" name="piterations" optional="True" type="integer" value="10"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Alpha rarefaction curves
+-------------------------
+
+Generate interactive alpha rarefaction curves by computing rarefactions
+between \`min_depth\` and \`max_depth\`. The number of intermediate depths to
+compute is controlled by the \`steps\` parameter, with n \`iterations\` being
+computed at each rarefaction depth. If sample metadata is provided, samples
+may be grouped based on distinct values within a metadata column.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    Feature table to compute rarefaction curves from.
+phylogeny : Phylogeny[Rooted], optional
+    Optional phylogeny for phylogenetic metrics.
+max_depth : Int % Range(1, None)
+    The maximum rarefaction depth. Must be greater than min_depth.
+metrics : Set[Str % Choices({'ace', 'berger_parker_d', 'brillouin_d', 'chao1', 'dominance', 'doubles', 'enspie', 'faith_pd', 'fisher_alpha', 'gini_index', 'goods_coverage', 'heip_e', 'lladser_pe', 'margalef', 'mcintosh_d', 'mcintosh_e', 'menhinick', 'michaelis_menten_fit', 'observed_otus', 'pielou_e', 'robbins', 'shannon', 'simpson', 'simpson_e', 'singles'})], optional
+    The metrics to be measured. By default computes observed_otus, shannon,
+    and if phylogeny is provided, faith_pd.
+metadata : Metadata, optional
+    The sample metadata.
+min_depth : Int % Range(1, None), optional
+    The minimum rarefaction depth.
+steps : Int % Range(2, None), optional
+    The number of rarefaction depths to include between min_depth and
+    max_depth.
+iterations : Int % Range(1, None), optional
+    The number of rarefied feature tables to compute at each step.
+
+Returns
+-------
+visualization : Visualization
+ \
+   ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_alpha.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_alpha.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,83 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_alpha" name="qiime diversity alpha" version="2018.4">
+ <description> - Alpha diversity</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity alpha --i-table=$itable --p-metric=$pmetric
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-alpha-diversity=oalphadiversity;
+   
+  cp oalphadiversity.qza $oalphadiversity;
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples for which alpha diversity should be computed. [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-metric: The alpha diversity metric to be computed.
+                                  [required]" name="pmetric" optional="False" type="select" >
+ <option value="goods_coverage">goods_coverage</option>
+ <option value="heip_e">heip_e</option>
+ <option value="mcintosh_d">mcintosh_d</option>
+ <option value="esty_ci">esty_ci</option>
+ <option value="doubles">doubles</option>
+ <option value="michaelis_menten_fit">michaelis_menten_fit</option>
+ <option value="observed_otus">observed_otus</option>
+ <option value="kempton_taylor_q">kempton_taylor_q</option>
+ <option value="chao1_ci">chao1_ci</option>
+ <option value="shannon">shannon</option>
+ <option value="margalef">margalef</option>
+ <option value="simpson">simpson</option>
+ <option value="lladser_ci">lladser_ci</option>
+ <option value="lladser_pe">lladser_pe</option>
+ <option value="osd">osd</option>
+ <option value="menhinick">menhinick</option>
+ <option value="singles">singles</option>
+ <option value="gini_index">gini_index</option>
+ <option value="robbins">robbins</option>
+ <option value="ace">ace</option>
+ <option value="simpson_e">simpson_e</option>
+ <option value="enspie">enspie</option>
+ <option value="berger_parker_d">berger_parker_d</option>
+ <option value="fisher_alpha">fisher_alpha</option>
+ <option value="dominance">dominance</option>
+ <option value="pielou_e">pielou_e</option>
+ <option value="chao1">chao1</option>
+ <option value="mcintosh_e">mcintosh_e</option>
+ <option value="strong">strong</option>
+ <option value="brillouin_d">brillouin_d</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: alpha-diversity.qza" name="oalphadiversity"/>
+ </outputs>
+ <help><![CDATA[
+Alpha diversity
+---------------
+
+Computes a user-specified alpha diversity metric for all samples in a
+feature table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table containing the samples for which alpha diversity
+    should be computed.
+metric : Str % Choices({'ace', 'berger_parker_d', 'brillouin_d', 'chao1', 'chao1_ci', 'dominance', 'doubles', 'enspie', 'esty_ci', 'fisher_alpha', 'gini_index', 'goods_coverage', 'heip_e', 'kempton_taylor_q', 'lladser_ci', 'lladser_pe', 'margalef', 'mcintosh_d', 'mcintosh_e', 'menhinick', 'michaelis_menten_fit', 'observed_otus', 'osd', 'pielou_e', 'robbins', 'shannon', 'simpson', 'simpson_e', 'singles', 'strong'})
+    The alpha diversity metric to be computed.
+
+Returns
+-------
+alpha_diversity : SampleData[AlphaDiversity]
+    Vector containing per-sample alpha diversities.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_beta-group-significance.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_beta-group-significance.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,95 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_beta-group-significance" name="qiime diversity beta-group-significance" version="2018.4">
+ <description> - Beta diversity group significance</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity beta-group-significance --i-distance-matrix=$idistancematrix
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --m-metadata-column="$mmetadatacolumn"
+   
+  #if $ppairwise:
+   --p-pairwise
+  #else
+    --p-no-pairwise
+  #end if
+  
+   --o-visualization=ovisualization
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if str($pmethod) != 'None':
+   --p-method=$pmethod
+  #end if
+  
+  #if $ppermutations:
+   --p-permutations=$ppermutations
+  #end if
+  ;
+  
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-distance-matrix: DistanceMatrix Matrix of distances between pairs of samples.  [required]" name="idistancematrix" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--m-metadata-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. Categorical sample metadata column.  [required]" name="mmetadatacolumn" optional="False" type="text"/>
+ <param label="--p-method: " name="pmethod" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="anosim">anosim</option>
+ <option value="permanova">permanova</option>
+ </param>
+ <param label="--p-pairwise: --p-no-pairwise  Perform pairwise tests between all pairs of groups in addition to the test across all groups. This can be very slow if there are a lot of groups in the metadata column. [default: False]" name="ppairwise" checked="False" type="boolean"/>
+ <param label="--p-permutations: The number of permutations to be run when computing p-values.  [default: 999]" name="ppermutations" optional="True" type="integer" value="999"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Beta diversity group significance
+---------------------------------
+
+Determine whether groups of samples are significantly different from one
+another using a permutation-based statistical test.
+
+Parameters
+----------
+distance_matrix : DistanceMatrix
+    Matrix of distances between pairs of samples.
+metadata : MetadataColumn[Categorical]
+    Categorical sample metadata column.
+method : Str % Choices({'anosim', 'permanova'}), optional
+    The group significance test to be applied.
+pairwise : Bool, optional
+    Perform pairwise tests between all pairs of groups in addition to the
+    test across all groups. This can be very slow if there are a lot of
+    groups in the metadata column.
+permutations : Int, optional
+    The number of permutations to be run when computing p-values.
+
+Returns
+-------
+visualization : Visualization
+ \
+   ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_beta-phylogenetic-alt.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_beta-phylogenetic-alt.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,112 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_beta-phylogenetic-alt" name="qiime diversity beta-phylogenetic-alt" version="2018.4">
+ <description> - Beta diversity (phylogenetic) - High Performance Computation</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  
+  qiime diversity beta-phylogenetic-alt --i-table=$itable --i-phylogeny=$iphylogeny --p-metric=$pmetric
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $pbypasstips:
+   --p-bypass-tips
+  #else
+    --p-no-bypass-tips
+  #end if
+  
+  #set $pnjobs = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pnjobs):
+   --p-n-jobs="$pnjobs"
+  #end if
+  
+   --o-distance-matrix=odistancematrix
+   
+  #if $pvarianceadjusted:
+   --p-variance-adjusted
+  #else
+    --p-no-variance-adjusted
+  #end if
+  
+  #if str($palpha):
+   --p-alpha="$palpha"
+  #end if
+  ;
+  cp odistancematrix.qza $odistancematrix;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples over which beta diversity should be computed.  [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-phylogeny: Phylogeny[Rooted] Phylogenetic tree containing tip identifiers that correspond to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  [required]" name="iphylogeny" optional="False" type="data"/>
+ <param label="--p-metric: The beta diversity metric to be computed.
+                                  [required]" name="pmetric" optional="False" type="select">
+ <option selected="True" value="generalized_unifrac">generalized_unifrac</option>
+ <option value="weighted_unifrac">weighted_unifrac</option>
+ <option value="weighted_normalized_unifrac">weighted_normalized_unifrac</option>
+ <option value="unweighted_unifrac">unweighted_unifrac</option>
+ </param>
+ <param label="--p-variance-adjusted: --p-no-variance-adjusted Perform variance adjustment based on Chang et al. BMC Bioinformatics 2011. Weights distances based on the proportion of the relative abundance represented between the samples at a given node under evaluation. [default: False]" name="pvarianceadjusted" checked="False" type="boolean"/>
+ <param label="--p-alpha: This parameter is only used when the choice of metric is generalized_unifrac. The value of alpha controls importance of sample proportions. 1.0 is weighted normalized UniFrac. 0.0 is close to unweighted UniFrac, but only if the sample proportions are dichotomized.  [optional]" name="palpha" optional="True" type="text"/>
+ <param label="--p-bypass-tips: --p-no-bypass-tips In a bifurcating tree, the tips make up about 50% of the nodes in a tree. By ignoring them, specificity can be traded for reduced compute time. This has the effect of collapsing the phylogeny, and is analogous (in concept) to moving from 99% to 97% OTUs [default: False]" name="pbypasstips" checked="False" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: distance-matrix.qza" name="odistancematrix"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Beta diversity (phylogenetic) - High Performance Computation
+-------------------------------------------------------------
+
+Computes a user-specified phylogenetic beta diversity metric for all pairs
+of samples in a feature table. This implementation is recommended for large
+datasets, otherwise the results are identical to beta_phylogenetic.  This
+method is an implementation of the Strided State UniFrac algorithm.
+Multiple variants of the UniFrac metric are available, including
+Generalized UniFrac (Chen et al. 2012), Variance Adjusted UniFrac (Chang et
+al. 2011), as well as Weighted normalized and unnormalized UniFrac
+(Lozupone et al. 2007) and unweighted UniFrac (Lozupone et al. 2005)
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table containing the samples over which beta diversity
+    should be computed.
+phylogeny : Phylogeny[Rooted]
+    Phylogenetic tree containing tip identifiers that correspond to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+metric : Str % Choices({'generalized_unifrac', 'unweighted_unifrac', 'weighted_normalized_unifrac', 'weighted_unifrac'})
+    The beta diversity metric to be computed.
+variance_adjusted : Bool, optional
+    Perform variance adjustment based on Chang et al. BMC Bioinformatics
+    2011. Weights distances based on the proportion of the relative
+    abundance represented between the samples at a given node under
+    evaluation.
+alpha : Float % Range(0, 1, inclusive_end=True), optional
+    This parameter is only used when the choice of metric is
+    generalized_unifrac. The value of alpha controls importance of sample
+    proportions. 1.0 is weighted normalized UniFrac. 0.0 is close to
+    unweighted UniFrac, but only if the sample proportions are
+    dichotomized.
+bypass_tips : Bool, optional
+    In a bifurcating tree, the tips make up about 50% of the nodes in a
+    tree. By ignoring them, specificity can be traded for reduced compute
+    time. This has the effect of collapsing the phylogeny, and is analogous
+    (in concept) to moving from 99% to 97% OTUs
+
+Returns
+-------
+distance_matrix : DistanceMatrix % Properties(['phylogenetic'])
+    The resulting distance matrix.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_beta-phylogenetic.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_beta-phylogenetic.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,67 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_beta-phylogenetic" name="qiime diversity beta-phylogenetic" version="2018.4">
+ <description> - Beta diversity (phylogenetic)</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity beta-phylogenetic --i-table=$itable --i-phylogeny=$iphylogeny --p-metric=$pmetric
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #set $pnjobs = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pnjobs):
+   --p-n-jobs="$pnjobs"
+  #end if
+  
+   --o-distance-matrix=odistancematrix;
+   
+  cp odistancematrix.qza $odistancematrix;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples over which beta diversity should be computed.  [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-phylogeny: Phylogeny[Rooted] Phylogenetic tree containing tip identifiers that correspond to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  [required]" name="iphylogeny" optional="False" type="data"/>
+ <param label="--p-metric: The beta diversity metric to be computed.
+                                  [required]" name="pmetric" optional="False" type="select" >
+ <option value="weighted_unifrac">weighted_unifrac</option>
+ <option value="unweighted_unifrac">unweighted_unifrac</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: distance-matrix.qza" name="odistancematrix"/>
+ </outputs>
+ <help><![CDATA[
+Beta diversity (phylogenetic)
+-----------------------------
+
+Computes a user-specified phylogenetic beta diversity metric for all pairs
+of samples in a feature table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table containing the samples over which beta diversity
+    should be computed.
+phylogeny : Phylogeny[Rooted]
+    Phylogenetic tree containing tip identifiers that correspond to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+metric : Str % Choices({'unweighted_unifrac', 'weighted_unifrac'})
+    The beta diversity metric to be computed.
+
+Returns
+-------
+distance_matrix : DistanceMatrix % Properties(['phylogenetic'])
+    The resulting distance matrix.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_beta-rarefaction.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_beta-rarefaction.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,176 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_diversity_beta-rarefaction" name="qiime diversity beta-rarefaction" version="2018.4">\n+\t<description> - Beta diversity rarefaction</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command><![CDATA[\n+  qiime diversity beta-rarefaction --i-table=$itable\n+  \n+  #def list_dict_to_string(list_dict):\n+  \t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+  \t#for d in list_dict[1:]:\n+  \t\t#set $file_list = $file_list + \',\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+  \t#end for\n+  \t#return $file_list\n+  #end def\n+  \n+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-clustering-method=$pclusteringmethod --p-metric=$pmetric --p-sampling-depth="$psamplingdepth"\n+   \n+  #if str($pcorrelationmethod) != \'None\':\n+   --p-correlation-method=$pcorrelationmethod\n+  #end if\n+  \n+  #if str($pcolorscheme) != \'None\':\n+   --p-color-scheme=$pcolorscheme\n+  #end if\n+  \n+   --o-visualization=ovisualization\n+   \n+  #if str($cmdconfig) != \'None\':\n+   --cmd-config=$cmdconfig\n+  #end if\n+  \n+  #if str($iphylogeny) != \'None\':\n+   --i-phylogeny=$iphylogeny\n+  #end if\n+  \n+  #if $piterations:\n+   --p-iterations=$piterations\n+  #end if\n+  ;\n+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+  && cp -r out/* \'$ovisualization.files_path\'\n+  && mv \'$ovisualization.files_path/index.html\' \'$ovisualization\';\n+  ]]></command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table upon which to perform beta diversity rarefaction analyses.  [required]" name="itable" optional="False" type="data"/>\n+\t\t<param format="qza,no_unzip.zip" label="--i-phylogeny: Phylogeny[Rooted] Phylogenetic tree containing tip identifiers that correspond to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree. [required for phylogenetic metrics]  [optional]" name="iphylogeny" optional="True" type="data"/>\n+\n+\t\t<param label="--p-metric: The beta diversity metric to be computed.\n+                                  [required]" name="pmetric" optional="False" type="select">\n+\t\t\t<option value="hamming">hamming</option>\n+\t\t\t<option value="sqeuclidean">sqeuclidean</option>\n+\t\t\t<option value="cityblock">cityblock</option>\n+\t\t\t<option value="sokalmichener">sokalmichener</option>\n+\t\t\t<option value="braycurtis">braycurtis</option>\n+\t\t\t<option value="cosine">cosine</option>\n+\t\t\t<option value="euclidean">euclidean</option>\n+\t\t\t<option value="rogerstanimoto">rogerstanimoto</option>\n+\t\t\t<option value="weighted_unifrac">weighted_unifrac</option>\n+\t\t\t<option value="canberra">canberra</option>\n+\t\t\t<option value="seuclidean">seuclidean</option>\n+\t\t\t<option value="correlation">correlation</option>\n+\t\t\t<option value="unweighted_unifrac">unweighted_unifrac</option>\n+\t\t\t<option value="sokalsneath">sokalsneath</option>\n+\t\t\t<option value="chebyshev">chebyshev</option>\n+\t\t\t<option value="mahalanobis">mahalanobis</option>\n+\t\t\t<option value="matching">matching</option>\n+\t\t\t<option value="kulsinski">kulsinski</option>\n+\t\t\t<option value="yule">yule</option>\n+\t\t\t<option value="dice">dice</option>\n+\t\t\t<option value="russellrao">russellrao</option>\n+\t\t\t<option value="wminkowski">wminkowski</option>\n+\t\t\t<option value="jaccard">jaccard</option>\n+\t\t</param>\n+\t\t<param label="--p-clustering-method: Samples can be clustered with neighbor\n+                                  joining or UPGMA. An arbitrary rarefaction\n+                                  trial will be used for the tree, and the\n+                                  remaining trials are used to calculate the\n+                                  support of the internal nodes of that tree.\n+                                  [required]" name="pclusteringmethod" optional="False" type="selec'..b'diversity distance matrices.  [default:\n+                                  spearman]" name="pcorrelationmethod" optional="True" type="select">\t\t\t\n+\t\t\t<option selected="True" value="spearman">spearman</option>\n+\t\t\t<option value="pearson">pearson</option>\n+\t\t</param>\n+\n+\t\t<param label="--p-color-scheme: The matplotlib color scheme to generate the\n+                                  heatmap with.  [default: BrBG]" name="pcolorscheme" optional="True" type="select">\t\t\t\n+\t\t\t<option value="PiYG">PiYG</option>\n+\t\t\t<option value="RdYlGn_r">RdYlGn_r</option>\n+\t\t\t<option value="RdYlBu_r">RdYlBu_r</option>\n+\t\t\t<option value="RdYlGn">RdYlGn</option>\n+\t\t\t<option value="BrBG_r">BrBG_r</option>\n+\t\t\t<option value="RdYlBu">RdYlBu</option>\n+\t\t\t<option value="RdGy">RdGy</option>\n+\t\t\t<option value="PuOr">PuOr</option>\n+\t\t\t<option value="RdBu_r">RdBu_r</option>\n+\t\t\t<option value="RdGy_r">RdGy_r</option>\n+\t\t\t<option value="PiYG_r">PiYG_r</option>\n+\t\t\t<option value="RdBu">RdBu</option>\n+\t\t\t<option value="PuOr_r">PuOr_r</option>\n+\t\t\t<option value="PRGn">PRGn</option>\n+\t\t\t<option selected="True" value="BrBG">BrBG</option>\n+\t\t\t<option value="PRGn_r">PRGn_r</option>\n+\t\t</param>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help><![CDATA[\n+Beta diversity rarefaction\n+--------------------------\n+\n+Repeatedly rarefy a feature table to compare beta diversity results within\n+a given rarefaction depth.  For a given beta diversity metric, this\n+visualizer will provide: an Emperor jackknifed PCoA plot, samples clustered\n+by UPGMA or neighbor joining with support calculation, and a heatmap\n+showing the correlation between rarefaction trials of that beta diversity\n+metric.\n+\n+Parameters\n+----------\n+table : FeatureTable[Frequency]\n+    Feature table upon which to perform beta diversity rarefaction\n+    analyses.\n+phylogeny : Phylogeny[Rooted], optional\n+    Phylogenetic tree containing tip identifiers that correspond to the\n+    feature identifiers in the table. This tree can contain tip ids that\n+    are not present in the table, but all feature ids in the table must be\n+    present in this tree. [required for phylogenetic metrics]\n+metric : Str % Choices({\'braycurtis\', \'canberra\', \'chebyshev\', \'cityblock\', \'correlation\', \'cosine\', \'dice\', \'euclidean\', \'hamming\', \'jaccard\', \'kulsinski\', \'mahalanobis\', \'matching\', \'rogerstanimoto\', \'russellrao\', \'seuclidean\', \'sokalmichener\', \'sokalsneath\', \'sqeuclidean\', \'unweighted_unifrac\', \'weighted_unifrac\', \'wminkowski\', \'yule\'})\n+    The beta diversity metric to be computed.\n+clustering_method : Str % Choices({\'nj\', \'upgma\'})\n+    Samples can be clustered with neighbor joining or UPGMA. An arbitrary\n+    rarefaction trial will be used for the tree, and the remaining trials\n+    are used to calculate the support of the internal nodes of that tree.\n+metadata : Metadata\n+    The sample metadata used for the Emperor jackknifed PCoA plot.\n+sampling_depth : Int % Range(1, None)\n+    The total frequency that each sample should be rarefied to prior to\n+    computing the diversity metric.\n+iterations : Int % Range(2, None), optional\n+    Number of times to rarefy the feature table at a given sampling depth.\n+correlation_method : Str % Choices({\'pearson\', \'spearman\'}), optional\n+    The Mantel correlation test to be applied when computing correlation\n+    between beta diversity distance matrices.\n+color_scheme : Str % Choices({\'BrBG\', \'BrBG_r\', \'PRGn\', \'PRGn_r\', \'PiYG\', \'PiYG_r\', \'PuOr\', \'PuOr_r\', \'RdBu\', \'RdBu_r\', \'RdGy\', \'RdGy_r\', \'RdYlBu\', \'RdYlBu_r\', \'RdYlGn\', \'RdYlGn_r\'}), optional\n+    The matplotlib color scheme to generate the heatmap with.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+    ]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_beta.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_beta.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,81 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_beta" name="qiime diversity beta" version="2018.4">
+ <description> - Beta diversity</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity beta --i-table=$itable --p-metric=$pmetric --o-distance-matrix=odistancematrix
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #set $pnjobs = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pnjobs):
+   --p-n-jobs="$pnjobs"
+  #end if
+  
+  ;
+  cp odistancematrix.qza $odistancematrix;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples over which beta diversity should be computed.  [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-metric:  The beta diversity metric to be computed.
+                                  [required]" name="pmetric" optional="False" type="select" >
+ <option value="hamming">hamming</option>
+ <option value="sqeuclidean">sqeuclidean</option>
+ <option value="cityblock">cityblock</option>
+ <option value="sokalmichener">sokalmichener</option>
+ <option value="braycurtis">braycurtis</option>
+ <option value="cosine">cosine</option>
+ <option value="euclidean">euclidean</option>
+ <option value="rogerstanimoto">rogerstanimoto</option>
+ <option value="canberra">canberra</option>
+ <option value="seuclidean">seuclidean</option>
+ <option value="correlation">correlation</option>
+ <option value="sokalsneath">sokalsneath</option>
+ <option value="chebyshev">chebyshev</option>
+ <option value="mahalanobis">mahalanobis</option>
+ <option value="matching">matching</option>
+ <option value="kulsinski">kulsinski</option>
+ <option value="yule">yule</option>
+ <option value="dice">dice</option>
+ <option value="russellrao">russellrao</option>
+ <option value="wminkowski">wminkowski</option>
+ <option value="jaccard">jaccard</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: distance-matrix.qza" name="odistancematrix"/>
+ </outputs>
+ <help><![CDATA[
+Beta diversity
+--------------
+
+Computes a user-specified beta diversity metric for all pairs of samples in
+a feature table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table containing the samples over which beta diversity
+    should be computed.
+metric : Str % Choices({'braycurtis', 'canberra', 'chebyshev', 'cityblock', 'correlation', 'cosine', 'dice', 'euclidean', 'hamming', 'jaccard', 'kulsinski', 'mahalanobis', 'matching', 'rogerstanimoto', 'russellrao', 'seuclidean', 'sokalmichener', 'sokalsneath', 'sqeuclidean', 'wminkowski', 'yule'})
+    The beta diversity metric to be computed.
+
+Returns
+-------
+distance_matrix : DistanceMatrix
+    The resulting distance matrix.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_bioenv.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_bioenv.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,67 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_bioenv" name="qiime diversity bioenv" version="2018.4">
+ <description> - bioenv</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity bioenv --i-distance-matrix=$idistancematrix
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-visualization=ovisualization;
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-distance-matrix: DistanceMatrix Matrix of distances between pairs of samples.  [required]" name="idistancematrix" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+bioenv
+------
+
+Find the subsets of variables in metadata whose Euclidean distances are
+maximally rank-correlated with distance matrix. All numeric variables in
+metadata will be considered, and samples which are missing data will be
+dropped. The output visualization will indicate how many samples were
+dropped due to missing data, if any were dropped.
+
+Parameters
+----------
+distance_matrix : DistanceMatrix
+    Matrix of distances between pairs of samples.
+metadata : Metadata
+    The sample metadata.
+
+Returns
+-------
+visualization : Visualization
+ \
+   ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_core-metrics-phylogenetic.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_core-metrics-phylogenetic.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,162 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_diversity_core-metrics-phylogenetic" name="qiime diversity core-metrics-phylogenetic" version="2018.4">\n+\t<description> - Core diversity metrics (phylogenetic and non- phylogenetic)</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command><![CDATA[\n+  qiime diversity core-metrics-phylogenetic --i-table=$itable\n+  \n+  #def list_dict_to_string(list_dict):\n+  \t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+  \t#for d in list_dict[1:]:\n+  \t\t#set $file_list = $file_list + \',\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+  \t#end for\n+  \t#return $file_list\n+  #end def\n+  \n+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-phylogeny=$iphylogeny --p-sampling-depth="$psamplingdepth"\n+   \n+  #if str($cmdconfig) != \'None\':\n+   --cmd-config=$cmdconfig\n+  #end if\n+  \n+   --o-unweighted-unifrac-emperor=ounweightedunifracemperor --o-weighted-unifrac-distance-matrix=oweightedunifracdistancematrix --o-unweighted-unifrac-distance-matrix=ounweightedunifracdistancematrix --o-bray-curtis-pcoa-results=obraycurtispcoaresults --o-observed-otus-vector=oobservedotusvector --o-faith-pd-vector=ofaithpdvector --o-jaccard-pcoa-results=ojaccardpcoaresults --o-weighted-unifrac-pcoa-results=oweightedunifracpcoaresults --o-jaccard-emperor=ojaccardemperor --o-shannon-vector=oshannonvector --o-bray-curtis-distance-matrix=obraycurtisdistancematrix --o-bray-curtis-emperor=obraycurtisemperor --o-rarefied-table=orarefiedtable --o-jaccard-distance-matrix=ojaccarddistancematrix\n+   \n+  #set $pnjobs = \'${GALAXY_SLOTS:-4}\'\n+  \n+  #if str($pnjobs):\n+   --p-n-jobs="$pnjobs"\n+  #end if\n+  \n+   --o-weighted-unifrac-emperor=oweightedunifracemperor --o-evenness-vector=oevennessvector --o-unweighted-unifrac-pcoa-results=ounweightedunifracpcoaresults;\n+   \n+   \n+ qiime tools export ounweightedunifracemperor.qzv --output-dir out   && mkdir -p \'$ounweightedunifracemperor.files_path\'\n+  && cp -r out/* \'$ounweightedunifracemperor.files_path\'\n+  && mv \'$ounweightedunifracemperor.files_path/index.html\' \'$ounweightedunifracemperor\'; \n+  \n+ cp oweightedunifracdistancematrix.qza $oweightedunifracdistancematrix;\n+ cp ounweightedunifracdistancematrix.qza $ounweightedunifracdistancematrix;\n+ cp obraycurtispcoaresults.qza $obraycurtispcoaresults;\n+ cp oobservedotusvector.qza $oobservedotusvector;\n+ cp ofaithpdvector.qza $ofaithpdvector;\n+ cp ojaccardpcoaresults.qza $ojaccardpcoaresults;\n+ cp oweightedunifracpcoaresults.qza $oweightedunifracpcoaresults;\n+ \n+\n+  qiime tools export ojaccardemperor.qzv --output-dir out   && mkdir -p \'$ojaccardemperor.files_path\'\n+  && cp -r out/* \'$ojaccardemperor.files_path\'\n+  && mv \'$ojaccardemperor.files_path/index.html\' \'$ojaccardemperor\';\n+  \n+  cp oshannonvector.qza $oshannonvector;\n+  cp obraycurtisdistancematrix.qza $obraycurtisdistancematrix;  \n+  \n+  qiime tools export obraycurtisemperor.qzv --output-dir out   && mkdir -p \'$obraycurtisemperor.files_path\'\n+  && cp -r out/* \'$obraycurtisemperor.files_path\'\n+  && mv \'$obraycurtisemperor.files_path/index.html\' \'$obraycurtisemperor\';\n+  \n+  cp orarefiedtable.qza $orarefiedtable;\n+  cp ojaccarddistancematrix.qza $ojaccarddistancematrix;  \n+  \n+  qiime tools export oweightedunifracemperor.qzv --output-dir out   && mkdir -p \'$oweightedunifracemperor.files_path\'\n+  && cp -r out/* \'$oweightedunifracemperor.files_path\'\n+  && mv \'$oweightedunifracemperor.files_path/index.html\' \'$oweightedunifracemperor\';\n+  \n+  cp oevennessvector.qza $oevennessvector;\n+  cp ounweightedunifracpcoaresults.qza $ounweightedunifracpcoaresults;\n+  ]]></command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples over which diversity metrics should be computed.  [required]" name="itable" optional="False" type="data"/>\n+\t\t<param format="qza,no_unzip.zip" label="--i-phylogeny'..b'nce-matrix.qza" name="ojaccarddistancematrix"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: bray-curtis-distance-matrix.qza" name="obraycurtisdistancematrix"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: unweighted-unifrac-pcoa-results.qza" name="ounweightedunifracpcoaresults"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: weighted-unifrac-pcoa-results.qza" name="oweightedunifracpcoaresults"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: jaccard-pcoa-results.qza" name="ojaccardpcoaresults"/>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: bray-curtis-pcoa-results.qza" name="obraycurtispcoaresults"/>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: unweighted-unifrac-emperor.qzv" name="ounweightedunifracemperor"/>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: weighted-unifrac-emperor.qzv" name="oweightedunifracemperor"/>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: jaccard-emperor.qzv" name="ojaccardemperor"/>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: bray-curtis-emperor.qzv" name="obraycurtisemperor"/>\n+\t</outputs>\n+\t<help><![CDATA[\n+Core diversity metrics (phylogenetic and non-phylogenetic)\n+----------------------------------------------------------\n+\n+Applies a collection of diversity metrics (both phylogenetic and non-\n+phylogenetic) to a feature table.\n+\n+Parameters\n+----------\n+table : FeatureTable[Frequency]\n+    The feature table containing the samples over which diversity metrics\n+    should be computed.\n+phylogeny : Phylogeny[Rooted]\n+    Phylogenetic tree containing tip identifiers that correspond to the\n+    feature identifiers in the table. This tree can contain tip ids that\n+    are not present in the table, but all feature ids in the table must be\n+    present in this tree.\n+sampling_depth : Int % Range(1, None)\n+    The total frequency that each sample should be rarefied to prior to\n+    computing diversity metrics.\n+metadata : Metadata\n+    The sample metadata to use in the emperor plots.\n+\n+Returns\n+-------\n+rarefied_table : FeatureTable[Frequency]\n+    The resulting rarefied feature table.\n+faith_pd_vector : SampleData[AlphaDiversity]\n+    Vector of Faith PD values by sample.\n+observed_otus_vector : SampleData[AlphaDiversity]\n+    Vector of Observed OTUs values by sample.\n+shannon_vector : SampleData[AlphaDiversity]\n+    Vector of Shannon diversity values by sample.\n+evenness_vector : SampleData[AlphaDiversity]\n+    Vector of Pielou\'s evenness values by sample.\n+unweighted_unifrac_distance_matrix : DistanceMatrix\n+    Matrix of unweighted UniFrac distances between pairs of samples.\n+weighted_unifrac_distance_matrix : DistanceMatrix\n+    Matrix of weighted UniFrac distances between pairs of samples.\n+jaccard_distance_matrix : DistanceMatrix\n+    Matrix of Jaccard distances between pairs of samples.\n+bray_curtis_distance_matrix : DistanceMatrix\n+    Matrix of Bray-Curtis distances between pairs of samples.\n+unweighted_unifrac_pcoa_results : PCoAResults\n+    PCoA matrix computed from unweighted UniFrac distances between samples.\n+weighted_unifrac_pcoa_results : PCoAResults\n+    PCoA matrix computed from weighted UniFrac distances between samples.\n+jaccard_pcoa_results : PCoAResults\n+    PCoA matrix computed from Jaccard distances between samples.\n+bray_curtis_pcoa_results : PCoAResults\n+    PCoA matrix computed from Bray-Curtis distances between samples.\n+unweighted_unifrac_emperor : Visualization\n+    Emperor plot of the PCoA matrix computed from unweighted UniFrac.\n+weighted_unifrac_emperor : Visualization\n+    Emperor plot of the PCoA matrix computed from weighted UniFrac.\n+jaccard_emperor : Visualization\n+    Emperor plot of the PCoA matrix computed from Jaccard.\n+bray_curtis_emperor : Visualization\n+    Emperor plot of the PCoA matrix computed from Bray-Curtis.\n+    ]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_core-metrics.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_core-metrics.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,119 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_core-metrics" name="qiime diversity core-metrics" version="2018.4">
+ <description> - Core diversity metrics (non-phylogenetic)</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity core-metrics --i-table=$itable
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-sampling-depth="$psamplingdepth"
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-jaccard-pcoa-results=ojaccardpcoaresults --o-jaccard-emperor=ojaccardemperor --o-shannon-vector=oshannonvector --o-bray-curtis-distance-matrix=obraycurtisdistancematrix --o-bray-curtis-emperor=obraycurtisemperor --o-rarefied-table=orarefiedtable --o-jaccard-distance-matrix=ojaccarddistancematrix
+   
+  #set $pnjobs = '${GALAXY_SLOTS:-4}'
+  
+  #if str($pnjobs):
+   --p-n-jobs="$pnjobs"
+  #end if
+  
+   --o-evenness-vector=oevennessvector --o-bray-curtis-pcoa-results=obraycurtispcoaresults --o-observed-otus-vector=oobservedotusvector;
+   
+  cp ojaccardpcoaresults.qza $ojaccardpcoaresults;
+
+  qiime tools export ojaccardemperor.qzv --output-dir out   && mkdir -p '$ojaccardemperor.files_path'
+  && cp -r out/* '$ojaccardemperor.files_path'
+  && mv '$ojaccardemperor.files_path/index.html' '$ojaccardemperor';
+  
+  cp oshannonvector.qza $oshannonvector;
+  cp obraycurtisdistancematrix.qza $obraycurtisdistancematrix;  
+  
+  qiime tools export obraycurtisemperor.qzv --output-dir out   && mkdir -p '$obraycurtisemperor.files_path'
+  && cp -r out/* '$obraycurtisemperor.files_path'
+  && mv '$obraycurtisemperor.files_path/index.html' '$obraycurtisemperor';
+  
+  cp orarefiedtable.qza $orarefiedtable;
+  cp ojaccarddistancematrix.qza $ojaccarddistancematrix;
+  cp oevennessvector.qza $oevennessvector;
+  cp obraycurtispcoaresults.qza $obraycurtispcoaresults;
+  cp oobservedotusvector.qza $oobservedotusvector;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table containing the samples over which diversity metrics should be computed.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-sampling-depth: The total frequency that each sample should be rarefied to prior to computing diversity metrics.  [required]" name="psamplingdepth" optional="False" type="text"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata to use in the emperor plots. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: rarefied-table.qza" name="orarefiedtable"/>
+ <data format="qza" label="${tool.name} on ${on_string}: observed-otus-vector.qza" name="oobservedotusvector"/>
+ <data format="qza" label="${tool.name} on ${on_string}: shannon-vector.qza" name="oshannonvector"/>
+ <data format="qza" label="${tool.name} on ${on_string}: evenness-vector.qza" name="oevennessvector"/>
+ <data format="qza" label="${tool.name} on ${on_string}: jaccard-distance-matrix.qza" name="ojaccarddistancematrix"/>
+ <data format="qza" label="${tool.name} on ${on_string}: bray-curtis-distance-matrix.qza" name="obraycurtisdistancematrix"/>
+ <data format="qza" label="${tool.name} on ${on_string}: jaccard-pcoa-results.qza" name="ojaccardpcoaresults"/>
+ <data format="qza" label="${tool.name} on ${on_string}: bray-curtis-pcoa-results.qza" name="obraycurtispcoaresults"/>
+ <data format="html" label="${tool.name} on ${on_string}: jaccard-emperor.qzv" name="ojaccardemperor"/>
+ <data format="html" label="${tool.name} on ${on_string}: bray-curtis-emperor.qzv" name="obraycurtisemperor"/>
+ </outputs>
+ <help><![CDATA[
+Core diversity metrics (non-phylogenetic)
+-----------------------------------------
+
+Applies a collection of diversity metrics (non-phylogenetic) to a feature
+table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table containing the samples over which diversity metrics
+    should be computed.
+sampling_depth : Int % Range(1, None)
+    The total frequency that each sample should be rarefied to prior to
+    computing diversity metrics.
+metadata : Metadata
+    The sample metadata to use in the emperor plots.
+
+Returns
+-------
+rarefied_table : FeatureTable[Frequency]
+    The resulting rarefied feature table.
+observed_otus_vector : SampleData[AlphaDiversity]
+    Vector of Observed OTUs values by sample.
+shannon_vector : SampleData[AlphaDiversity]
+    Vector of Shannon diversity values by sample.
+evenness_vector : SampleData[AlphaDiversity]
+    Vector of Pielou's evenness values by sample.
+jaccard_distance_matrix : DistanceMatrix
+    Matrix of Jaccard distances between pairs of samples.
+bray_curtis_distance_matrix : DistanceMatrix
+    Matrix of Bray-Curtis distances between pairs of samples.
+jaccard_pcoa_results : PCoAResults
+    PCoA matrix computed from Jaccard distances between samples.
+bray_curtis_pcoa_results : PCoAResults
+    PCoA matrix computed from Bray-Curtis distances between samples.
+jaccard_emperor : Visualization
+    Emperor plot of the PCoA matrix computed from Jaccard.
+bray_curtis_emperor : Visualization
+    Emperor plot of the PCoA matrix computed from Bray-Curtis.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_filter-distance-matrix.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_filter-distance-matrix.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,92 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_filter-distance-matrix" name="qiime diversity filter-distance-matrix" version="2018.4">
+ <description> - Filter samples from a distance matrix.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity filter-distance-matrix --i-distance-matrix=$idistancematrix
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+   
+  #if '__sq__' in str($pwhere):
+    #set $pwhere_temp = $pwhere.replace('__sq__', "'")
+    #set $pwhere = $pwhere_temp
+  #end if
+  
+  #if str($pwhere):
+   --p-where="$pwhere"
+  #end if  
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $pexcludeids:
+   --p-exclude-ids
+  #else
+    --p-no-exclude-ids
+  #end if
+  
+   --o-filtered-distance-matrix=ofiltereddistancematrix;
+   
+  cp ofiltereddistancematrix.qza $ofiltereddistancematrix;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-distance-matrix: DistanceMatrix Distance matrix to filter by sample. [required]" name="idistancematrix" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata used with \`where\` parameter when selecting samples to retain, or with \`exclude_ids\` when selecting samples to discard.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--p-where: SQLite WHERE clause specifying sample metadata criteria that must be met to be included in the filtered distance matrix. If not provided, all samples in \`metadata\` that are also in the input distance matrix will be retained.  [optional]" name="pwhere" optional="True" type="text"/>
+ <param label="--p-exclude-ids: --p-no-exclude-ids If \`True`, the samples selected by \`metadata\` or \`where\` parameters will be excluded from the filtered distance matrix instead of being retained.  [default: False]" name="pexcludeids" checked="False" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-distance-matrix.qza" name="ofiltereddistancematrix"/>
+ </outputs>
+ <help><![CDATA[
+Filter samples from a distance matrix.
+---------------------------------------
+
+Filter samples from a distance matrix, retaining only the samples matching
+search criteria specified by \`metadata\` and \`where\` parameters (or
+retaining only the samples not matching that criteria, if \`exclude_ids\` is
+True). See the filtering tutorial on https://docs.qiime2.org for additional
+details.
+
+Parameters
+----------
+distance_matrix : DistanceMatrix
+    Distance matrix to filter by sample.
+metadata : Metadata
+    Sample metadata used with \`where\` parameter when selecting samples to
+    retain, or with \`exclude_ids\` when selecting samples to discard.
+where : Str, optional
+    SQLite WHERE clause specifying sample metadata criteria that must be
+    met to be included in the filtered distance matrix. If not provided,
+    all samples in \`metadata\` that are also in the input distance matrix
+    will be retained.
+exclude_ids : Bool, optional
+    If \`True`, the samples selected by \`metadata\` or \`where\` parameters
+    will be excluded from the filtered distance matrix instead of being
+    retained.
+
+Returns
+-------
+filtered_distance_matrix : DistanceMatrix
+    Distance matrix filtered to include samples matching search criteria
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_mantel.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_mantel.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,103 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_mantel" name="qiime diversity mantel" version="2018.4">
+ <description> - Apply the Mantel test to two distance matrices</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity mantel --i-dm2=$idm2 --i-dm1=$idm1
+  
+  #if $pintersectids:
+   --p-intersect-ids
+  #else
+  --p-no-intersect-ids
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if str($plabel2):
+   --p-label2="$plabel2"
+  #end if
+  
+  #if str($plabel1):
+   --p-label1="$plabel1"
+  #end if
+  
+   --o-visualization=ovisualization
+   
+  #if str($pmethod) != 'None':
+   --p-method=$pmethod
+  #end if
+  
+  #if $ppermutations:
+   --p-permutations=$ppermutations
+  #end if
+  ;
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-dm1: DistanceMatrix Matrix of distances between pairs of samples.  [required]" name="idm1" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-dm2: DistanceMatrix Matrix of distances between pairs of samples.  [required]" name="idm2" optional="False" type="data"/>
+ <param label="--p-method: " name="pmethod" optional="True" type="select">
+ <option selected="True" value="spearman">spearman</option>
+ <option value="pearson">pearson</option>
+ </param>
+ <param label="--p-permutations: The number of permutations to be run when computing p-values. Supplying a value of zero will disable permutation testing and p-values will not be calculated (this results in *much* quicker execution time if p-values are not desired).  [default: 999]" name="ppermutations" optional="True" type="integer" value="999"/>
+ <param label="--p-intersect-ids: --p-no-intersect-ids If supplied, IDs that are not found in both distance matrices will be discarded before applying the Mantel test. Default behavior is to error on any mismatched IDs. [default: False]" name="pintersectids" checked="False" type="boolean"/>
+ <param label="--p-label1: Label for \`dm1\` in the output visualization. [default: Distance Matrix 1]" name="plabel1" optional="True" type="text" value="Distance Matrix 1"/>
+ <param label="--p-label2: Label for \`dm2\` in the output visualization. [default: Distance Matrix 2]" name="plabel2" optional="True" type="text" value="Distance Matrix 2"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Apply the Mantel test to two distance matrices
+----------------------------------------------
+
+Apply a two-sided Mantel test to identify correlation between two distance
+matrices.  Note: the directionality of the comparison has no bearing on the
+results. Thus, comparing distance matrix X to distance matrix Y is
+equivalent to comparing Y to X.  Note: the order of samples within the two
+distance matrices does not need to be the same; the distance matrices will
+be reordered before applying the Mantel test.  See the scikit-bio docs for
+more details about the Mantel test:  http://scikit-
+bio.org/docs/latest/generated/generated/skbio.stats.distance.mantel.html
+
+Parameters
+----------
+dm1 : DistanceMatrix
+    Matrix of distances between pairs of samples.
+dm2 : DistanceMatrix
+    Matrix of distances between pairs of samples.
+method : Str % Choices({'pearson', 'spearman'}), optional
+    The correlation test to be applied in the Mantel test.
+permutations : Int % Range(0, None), optional
+    The number of permutations to be run when computing p-values. Supplying
+    a value of zero will disable permutation testing and p-values will not
+    be calculated (this results in *much* quicker execution time if
+    p-values are not desired).
+intersect_ids : Bool, optional
+    If supplied, IDs that are not found in both distance matrices will be
+    discarded before applying the Mantel test. Default behavior is to error
+    on any mismatched IDs.
+label1 : Str, optional
+    Label for \`dm1\` in the output visualization.
+label2 : Str, optional
+    Label for \`dm2\` in the output visualization.
+
+Returns
+-------
+visualization : Visualization
+ \
+   ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_pcoa.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_pcoa.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,46 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_pcoa" name="qiime diversity pcoa" version="2018.4">
+ <description> - Principal Coordinate Analysis</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity pcoa --i-distance-matrix=$idistancematrix
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-pcoa=opcoa;
+   
+  cp opcoa.qza $opcoa;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-distance-matrix: DistanceMatrix The distance matrix on which PCoA should be computed.  [required]" name="idistancematrix" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: pcoa.qza" name="opcoa"/>
+ </outputs>
+ <help><![CDATA[
+Principal Coordinate Analysis
+------------------------------
+
+Apply principal coordinate analysis.
+
+Parameters
+----------
+distance_matrix : DistanceMatrix
+    The distance matrix on which PCoA should be computed.
+
+Returns
+-------
+pcoa : PCoAResults
+    The resulting PCoA matrix.
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_diversity_procrustes-analysis.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_diversity_procrustes-analysis.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,62 @@
+<?xml version="1.0" ?>
+<tool id="qiime_diversity_procrustes-analysis" name="qiime diversity procrustes-analysis" version="2018.4">
+ <description> - Procrustes Analysis</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime diversity procrustes-analysis --i-reference=$ireference --i-other=$iother
+  
+  #if $pdimensions:
+   --p-dimensions=$pdimensions
+  #end if
+  
+   --o-transformed-other=otransformedother --o-transformed-reference=otransformedreference
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  ;
+  cp otransformedother.qza $otransformedother;
+  cp otransformedreference.qza $otransformedreference;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-reference: PCoAResults The ordination matrix to which data is fitted to.  [required]" name="ireference" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-other: PCoAResults The ordination matrix that's fitted to the reference ordination.  [required]" name="iother" optional="False" type="data"/>
+
+ <param label="--p-dimensions: [default: 5]" name="pdimensions" optional="True" type="integer" value="5"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: transformed-other.qza" name="otransformedother"/>
+ <data format="qza" label="${tool.name} on ${on_string}: transformed-reference.qza" name="otransformedreference"/>
+ </outputs>
+ <help><![CDATA[
+Procrustes Analysis
+--------------------
+
+Fit two ordination matrices with Procrustes analysis
+
+Parameters
+----------
+reference : PCoAResults
+    The ordination matrix to which data is fitted to.
+other : PCoAResults
+    The ordination matrix that's fitted to the reference ordination.
+dimensions : Int % Range(1, None), optional
+ \
+
+Returns
+-------
+transformed_reference : PCoAResults
+    A normalized version of the "reference" ordination matrix.
+transformed_other : PCoAResults
+    A normalized and fitted version of the "other" ordination matrix.
+     ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_emperor_plot.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_emperor_plot.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,71 @@
+<?xml version="1.0" ?>
+<tool id="qiime_emperor_plot" name="qiime emperor plot" version="2018.4">
+ <description> - Visualize and Interact with Principal Coordinates Analysis Plots</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime emperor plot
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-pcoa=$ipcoa
+   
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if str($pcustomaxes):
+   --p-custom-axes="$pcustomaxes"
+  #end if
+  
+   --o-visualization=ovisualization;
+   
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-pcoa: PCoAResults The principal coordinates matrix to be plotted.  [required]" name="ipcoa" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--p-custom-axes: Numeric sample metadata columns that should be included as axes in the Emperor plot. [optional]" name="pcustomaxes" optional="True" type="text"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Visualize and Interact with Principal Coordinates Analysis Plots
+----------------------------------------------------------------
+
+Generate visualization of your ordination.
+
+Parameters
+----------
+pcoa : PCoAResults
+    The principal coordinates matrix to be plotted.
+metadata : Metadata
+    The sample metadata.
+custom_axes : List[Str], optional
+    Numeric sample metadata columns that should be included as axes in the
+    Emperor plot.
+
+Returns
+-------
+visualization : Visualization
+ \
+     ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_emperor_procrustes-plot.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_emperor_procrustes-plot.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,79 @@
+<?xml version="1.0" ?>
+<tool id="qiime_emperor_procrustes-plot" name="qiime emperor procrustes-plot" version="2018.4">
+ <description> - Visualize and Interact with a procrustes plot</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime emperor procrustes-plot --i-reference-pcoa=$ireferencepcoa
+  
+  #def list_dict_to_string(list_dict):
+   #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+   #for d in list_dict[1:]:
+   #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+   #end for
+   #return $file_list
+  #end def
+  
+   --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-other-pcoa=$iotherpcoa
+  
+  #if str($pcustomaxes):
+   --p-custom-axes="$pcustomaxes"
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+   --o-visualization=ovisualization;
+   
+  qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+  && cp -r out/* '$ovisualization.files_path'
+  && mv '$ovisualization.files_path/index.html' '$ovisualization';
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-reference-pcoa: PCoAResults The reference ordination matrix to be plotted.  [required]" name="ireferencepcoa" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-other-pcoa: PCoAResults The 'other' ordination matrix to be plotted (the one that was fitted to the reference). [required]" name="iotherpcoa" optional="False" type="data"/>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+
+ </repeat>
+
+ <param label="--p-custom-axes: Numeric sample metadata columns that should be included as axes in the Emperor plot. [optional]" name="pcustomaxes" optional="True" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Visualize and Interact with a procrustes plot
+----------------------------------------------
+
+Plot two procrustes-fitted matrices
+
+Parameters
+----------
+reference_pcoa : PCoAResults
+    The reference ordination matrix to be plotted.
+other_pcoa : PCoAResults
+    The "other" ordination matrix to be plotted (the one that was fitted to
+    the reference).
+metadata : Metadata
+    The sample metadata.
+custom_axes : List[Str], optional
+    Numeric sample metadata columns that should be included as axes in the
+    Emperor plot.
+
+Returns
+-------
+visualization : Visualization
+ \
+     ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-classifier_classify-consensus-blast.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-classifier_classify-consensus-blast.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,127 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-classifier_classify-consensus-blast" name="qiime feature-classifier classify-consensus-blast" version="2018.4">
+ <description>- BLAST+ consensus taxonomy classifier</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime feature-classifier classify-consensus-blast --i-query=$iquery
+
+  #if str( $id_to_taxonomy_fp.selector ) == 'history'
+   #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+   --i-reference-taxonomy '$tax'
+  #else:
+   #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+   --i-reference-taxonomy '$tax'
+  #end if
+  
+    --i-reference-reads=$ireferencereads
+  #if $ppercidentity:
+   --p-perc-identity=$ppercidentity
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $pminconsensus:
+   --p-min-consensus=$pminconsensus
+  #end if
+  
+  #if str($pstrand) != 'None':
+   --p-strand=$pstrand
+  #end if
+  
+  #if str($punassignablelabel):
+   --p-unassignable-label="$punassignablelabel"
+  #end if
+  
+  #if $pevalue:
+   --p-evalue=$pevalue
+  #end if
+   --o-classification=oclassification
+  #if $pmaxaccepts:
+   --p-maxaccepts=$pmaxaccepts
+  #end if
+  ;
+  cp oclassification.qza $oclassification;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-query: FeatureData[Sequence] Sequences to classify taxonomically. [required]" name="iquery" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-reads: FeatureData[Sequence] reference sequences.  [required]" name="ireferencereads" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-maxaccepts: Maximum number of hits to keep for each query. Must be in range [0, infinity]. [default: 10]" name="pmaxaccepts" optional="True" type="integer" value="10"/>
+ <param label="--p-perc-identity: Reject match if percent identity to query is lower. Must be in range [0.0, 1.0]. [default: 0.8]" name="ppercidentity" optional="True" type="float" value="0.8"/>
+ <param label="--p-strand: [both|plus|minus]    Align against reference sequences in forward ('plus'), reverse ('minus'), or both directions ('both').  [default: both]" name="pstrand" optional="True" type="select">
+ <option selected="True" value="both">both</option>
+ <option value="plus">plus</option>
+ <option value="minus">minus</option>
+ </param>
+ <param label="--p-evalue: BLAST expectation value (E) threshold for saving hits.  [default: 0.001]" name="pevalue" optional="True" type="float" value="0.001"/>
+ <param label="--p-min-consensus: Minimum fraction of assignments must match top hit to be accepted as consensus assignment. Must be in range (0.5, 1.0]. [default: 0.51]" name="pminconsensus" optional="True" type="float" value="0.51"/>
+ <param label="--p-unassignable-label: [default: Unassigned]" name="punassignablelabel" optional="True" type="text" value="Unassigned"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: classification.qza" name="oclassification"/>
+ </outputs>
+ <help><![CDATA[
+BLAST+ consensus taxonomy classifier
+------------------------------------
+
+Assign taxonomy to query sequences using BLAST+. Performs BLAST+ local
+alignment between query and reference_reads, then assigns consensus
+taxonomy to each query sequence from among maxaccepts top hits,
+min_consensus of which share that taxonomic assignment.
+
+Parameters
+----------
+query : FeatureData[Sequence]
+    Sequences to classify taxonomically.
+reference_reads : FeatureData[Sequence]
+    reference sequences.
+reference_taxonomy : FeatureData[Taxonomy]
+    reference taxonomy labels.
+maxaccepts : Int % Range(1, None), optional
+    Maximum number of hits to keep for each query. Must be in range [0,
+    infinity].
+perc_identity : Float % Range(0.0, 1.0, inclusive_end=True), optional
+    Reject match if percent identity to query is lower. Must be in range
+    [0.0, 1.0].
+strand : Str % Choices({'both', 'minus', 'plus'}), optional
+    Align against reference sequences in forward ("plus"), reverse
+    ("minus"), or both directions ("both").
+evalue : Float, optional
+    BLAST expectation value (E) threshold for saving hits.
+min_consensus : Float % Range(0.5, 1.0, inclusive_start=False, inclusive_end=True), optional
+    Minimum fraction of assignments must match top hit to be accepted as
+    consensus assignment. Must be in range (0.5, 1.0].
+unassignable_label : Str, optional
+ \
+
+Returns
+-------
+classification : FeatureData[Taxonomy]
+    Taxonomy classifications of query sequences.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-classifier_classify-consensus-vsearch.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-classifier_classify-consensus-vsearch.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,124 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-classifier_classify-consensus-vsearch" name="qiime feature-classifier classify-consensus-vsearch" version="2018.4">
+ <description> - VSEARCH consensus taxonomy classifier</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime feature-classifier classify-consensus-vsearch --i-query=$iquery
+
+  #if str( $id_to_taxonomy_fp.selector ) == 'history'
+   #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+   --i-reference-taxonomy '$tax'
+  #else:
+   #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+   --i-reference-taxonomy '$tax'
+  #end if  
+  
+   --i-reference-reads=$ireferencereads
+  #if $ppercidentity:
+   --p-perc-identity=$ppercidentity
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $pminconsensus:
+   --p-min-consensus=$pminconsensus
+  #end if
+  
+  #if str($pstrand) != 'None':
+   --p-strand=$pstrand
+  #end if
+  
+   --o-classification=oclassification
+   
+  #if str($punassignablelabel):
+   --p-unassignable-label="$punassignablelabel"
+  #end if
+  
+  #set $pthreads = '${GALAXY_SLOTS:-4}'
+   --p-threads="$pthreads"
+  
+  #if $pmaxaccepts:
+   --p-maxaccepts=$pmaxaccepts
+  #end if
+  ;
+  cp oclassification.qza $oclassification;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-query: FeatureData[Sequence] Sequences to classify taxonomically. [required]" name="iquery" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-reads: FeatureData[Sequence] reference sequences.  [required]" name="ireferencereads" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-maxaccepts: Maximum number of hits to keep for each query. Must be in range [0, infinity]. [default: 10]" name="pmaxaccepts" optional="True" type="integer" value="10"/>
+ <param label="--p-perc-identity: Reject match if percent identity to query is lower. Must be in range [0.0, 1.0]. [default: 0.8]" name="ppercidentity" optional="True" type="float" value="0.8"/>
+ <param label="--p-strand: [both|plus] Align against reference sequences in forward ('plus') or both directions ('both'). [default: both]" name="pstrand" optional="True" type="select">
+ <option selected="True" value="both">both</option>
+ <option value="plus">plus</option>
+ </param>
+ <param label="--p-min-consensus: Minimum fraction of assignments must match top hit to be accepted as consensus assignment. Must be in range (0.5, 1.0]. [default: 0.51]" name="pminconsensus" optional="True" type="float" value="0.51"/>
+ <param label="--p-unassignable-label: [default: Unassigned]" name="punassignablelabel" optional="True" type="text" value="Unassigned"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: classification.qza" name="oclassification"/>
+ </outputs>
+ <help><![CDATA[
+VSEARCH consensus taxonomy classifier
+-------------------------------------
+
+Assign taxonomy to query sequences using VSEARCH. Performs VSEARCH global
+alignment between query and reference_reads, then assigns consensus
+taxonomy to each query sequence from among maxaccepts top hits,
+min_consensus of which share that taxonomic assignment.
+
+Parameters
+----------
+query : FeatureData[Sequence]
+    Sequences to classify taxonomically.
+reference_reads : FeatureData[Sequence]
+    reference sequences.
+reference_taxonomy : FeatureData[Taxonomy]
+    reference taxonomy labels.
+maxaccepts : Int % Range(1, None), optional
+    Maximum number of hits to keep for each query. Must be in range [0,
+    infinity].
+perc_identity : Float % Range(0.0, 1.0, inclusive_end=True), optional
+    Reject match if percent identity to query is lower. Must be in range
+    [0.0, 1.0].
+strand : Str % Choices({'both', 'plus'}), optional
+    Align against reference sequences in forward ("plus") or both
+    directions ("both").
+min_consensus : Float % Range(0.5, 1.0, inclusive_start=False, inclusive_end=True), optional
+    Minimum fraction of assignments must match top hit to be accepted as
+    consensus assignment. Must be in range (0.5, 1.0].
+unassignable_label : Str, optional
+ \
+
+Returns
+-------
+classification : FeatureData[Taxonomy]
+    The resulting taxonomy classifications.
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-classifier_classify-sklearn.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-classifier_classify-sklearn.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,106 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-classifier_classify-sklearn" name="qiime feature-classifier classify-sklearn" version="2018.4">
+ <description>- Pre-fitted sklearn-based taxonomy classifier</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime feature-classifier classify-sklearn
+
+  #if str( $id_to_classifier_fp.selector ) == 'history'
+   #set $classifier = $id_to_classifier_fp.classifier_fp
+   --i-classifier '$classifier'
+  #else:
+   #set $classifier = $id_to_classifier_fp.classifier.fields.path
+   --i-classifier '$classifier'
+  #end if
+  
+   --i-reads=$ireads
+  
+    #if str($pconfidence) != '':
+      #if float($pconfidence) >= 0.0:
+        --p-confidence=$pconfidence
+      #end if
+    #end if
+  
+  #if str($preadorientation) != 'None':
+    --p-read-orientation=$preadorientation
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #set $pnjobs = '${GALAXY_SLOTS:-4}'
+   --p-n-jobs="$pnjobs"
+   --o-classification=oclassification;
+   
+  cp oclassification.qza $oclassification;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-reads: FeatureData[Sequence] The feature data to be classified. [required]" name="ireads" optional="False" type="data"/>
+
+ <conditional name="id_to_classifier_fp" optional="True">
+    <param name="selector" type="select" label="Reference classifier to query">
+   <option value="cached">Public classifiers</option>
+   <option value="history">Classifiers from your history</option>
+    </param>
+    <when value="cached">
+   <param name="classifier_fp" label="Reference classifier" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param name="classifier_fp" type="data" format="qza,no_unzip.zip" label="Reference classifier" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-confidence: Confidence threshold for limiting taxonomic depth. Provide -1 to disable confidence calculation, or 0 to calculate confidence but not apply it to limit the taxonomic depth of the assignments.  [default: 0.7]" name="pconfidence" optional="True" type="float" value="0.7"/>
+ <param label="--p-read-orientation: [reverse-complement|same] Direction of reads with respect to reference sequences. same will cause reads to be classified unchanged; reverse-complement will cause reads to be reversed and complemented prior to classification. Default is to autodetect based on the confidence estimates for the first 100 reads.  [optional]" name="preadorientation" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="reverse-complement">reverse-complement</option>
+ <option value="same">same</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: classification.qza" name="oclassification"/>
+ </outputs>
+ <help><![CDATA[
+Pre-fitted sklearn-based taxonomy classifier
+---------------------------------------------
+
+Classify reads by taxon using a fitted classifier.
+
+Parameters
+----------
+reads : FeatureData[Sequence]
+    The feature data to be classified.
+classifier : TaxonomicClassifier
+    The taxonomic classifier for classifying the reads.
+reads_per_batch : Int % Range(0, None), optional
+    Number of reads to process in each batch. If 0, this parameter is
+    autoscaled to the number of query sequences / n_jobs.
+pre_dispatch : Str, optional
+    "all" or expression, as in "3*n_jobs". The number of batches (of tasks)
+    to be pre-dispatched.
+confidence : Float, optional
+    Confidence threshold for limiting taxonomic depth. Provide -1 to
+    disable confidence calculation, or 0 to calculate confidence but not
+    apply it to limit the taxonomic depth of the assignments.
+read_orientation : Str % Choices({'reverse-complement', 'same'}), optional
+    Direction of reads with respect to reference sequences. same will cause
+    reads to be classified unchanged; reverse-complement will cause reads
+    to be reversed and complemented prior to classification. Default is to
+    autodetect based on the confidence estimates for the first 100 reads.
+
+Returns
+-------
+classification : FeatureData[Taxonomy]
+]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-classifier_extract-reads.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-classifier_extract-reads.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,72 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-classifier_extract-reads" name="qiime feature-classifier extract-reads" version="2018.4">
+ <description> - Extract reads from reference</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[
+  qiime feature-classifier extract-reads --i-sequences=$isequences --p-r-primer="$prprimer" --p-f-primer="$pfprimer"
+  
+  #if $ptrunclen:
+   --p-trunc-len=$ptrunclen
+  #end if
+  
+  #if str($cmdconfig) != 'None':
+   --cmd-config=$cmdconfig
+  #end if
+  
+  #if $ptrimleft:
+   --p-trim-left=$ptrimleft
+  #end if
+   --o-reads=oreads
+  #if $pidentity:
+   --p-identity=$pidentity
+  #end if
+  ;
+  cp oreads.qza $oreads;
+  ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] [required]" name="isequences" optional="False" type="data"/>
+ <param label="--p-f-primer: forward primer sequence  [required]" name="pfprimer" optional="False" type="text"/>
+ <param label="--p-r-primer: reverse primer sequence  [required]" name="prprimer" optional="False" type="text"/>
+ <param label="--p-trunc-len: read is cut to trunc_len if trunc_len is positive. Applied before trim_left. [default: 0]" name="ptrunclen" optional="True" type="integer" value="0"/>
+ <param label="--p-trim-left: trim_left nucleotides are removed from the 5' end if trim_left is positive. Applied after trunc_len.  [default: 0]" name="ptrimleft" optional="True" type="integer" value="0"/>
+ <param label="--p-identity: minimum combined primer match identity threshold.  [default: 0.8]" name="pidentity" optional="True" type="float" value="0.8"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: reads.qza" name="oreads"/>
+ </outputs>
+ <help><![CDATA[
+Extract reads from reference
+-----------------------------
+
+Extract sequencing-like reads from a reference database.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+
+f_primer : Str
+    forward primer sequence
+r_primer : Str
+    reverse primer sequence
+trunc_len : Int, optional
+    read is cut to trunc_len if trunc_len is positive. Applied before
+    trim_left.
+trim_left : Int, optional
+    trim_left nucleotides are removed from the 5' end if trim_left is
+    positive. Applied after trunc_len.
+identity : Float, optional
+    minimum combined primer match identity threshold.
+
+Returns
+-------
+reads : FeatureData[Sequence]
+]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-classifier_fit-classifier-naive-bayes.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-classifier_fit-classifier-naive-bayes.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,270 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_feature-classifier_fit-classifier-naive-bayes" name="qiime feature-classifier fit-classifier-naive-bayes" version="2018.4">\n+\t<description>- Train the naive_bayes classifier</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t\t<![CDATA[\n+\tqiime feature-classifier fit-classifier-naive-bayes\n+\n+\t#if str( $id_to_taxonomy_fp.selector ) == \'history\'\n+\t\t#set $tax = $id_to_taxonomy_fp.taxonomy_fp\n+\t\t--i-reference-taxonomy \'$tax\'\n+\t#else:\n+\t\t#set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path\n+\t\t--i-reference-taxonomy \'$tax\'\n+\t#end if\n+\n+\n+\t\t--i-reference-reads=$ireferencereads\n+\n+\t#if $pfeatextnonnegative:\n+\t --p-feat-ext--non-negative\n+\t#else\n+\t\t--p-no-feat-ext--non-negative\n+\t#end if\n+\n+\t#if str($pfeatexttokenpattern):\n+\t\t#if \'__ob__\' in str($pfeatexttokenpattern):\n+\t\t  #set $pfeatexttokenpattern_temp = $pfeatexttokenpattern.replace(\'__ob__\', \'[\')\n+\t\t  #set $pfeatexttokenpattern = $pfeatexttokenpattern_temp\n+\t\t#end if\n+\t\t#if \'X\' in str($pfeatexttokenpattern):\n+\t\t  #set $pfeatexttokenpattern_temp = $pfeatexttokenpattern.replace(\'X\', \'\\\\\')\n+\t\t  #set $pfeatexttokenpattern = $pfeatexttokenpattern_temp\n+\t\t#end if\n+\t\t--p-feat-ext--token-pattern="$pfeatexttokenpattern"\n+\t#end if\n+\n+\t#if str($pfeatextencoding):\n+\t --p-feat-ext--encoding="$pfeatextencoding"\n+\t#end if\n+\n+\t#if $pfeatextnfeatures:\n+\t --p-feat-ext--n-features=$pfeatextnfeatures\n+\t#end if\n+\n+\t#if str($pfeatextstopwords):\n+\t --p-feat-ext--stop-words="$pfeatextstopwords"\n+\t#end if\n+\n+\t#if str($pfeatextngramrange):\n+\t\t#if \'__ob__\' in str($pfeatextngramrange):\n+\t\t  #set $pfeatextngramrange_temp = $pfeatextngramrange.replace(\'__ob__\', \'[\')\n+\t\t  #set $pfeatextngramrange = $pfeatextngramrange_temp\n+\t\t#end if\n+\t\t#if \'X\' in str($pfeatextngramrange):\n+\t\t  #set $pfeatextngramrange_temp = $pfeatextngramrange.replace(\'X\', \'\\\\\')\n+\t\t  #set $pfeatextngramrange = $pfeatextngramrange_temp\n+\t\t#end if\n+\t\t --p-feat-ext--ngram-range="$pfeatextngramrange"\n+\t#end if\n+\n+\t#if str($pfeatextanalyzer):\n+\t --p-feat-ext--analyzer="$pfeatextanalyzer"\n+\t#end if\n+\n+\t#if $pclassifyalpha:\n+\t --p-classify--alpha=$pclassifyalpha\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\n+\t#if $pclassifyfitprior:\n+\t --p-classify--fit-prior\n+\t#else\n+\t\t--p-no-classify--fit-prior\n+\t#end if\n+\n+\t#if $pfeatextbinary:\n+\t --p-feat-ext--binary\n+\t#else\n+\t\t--p-no-feat-ext--binary\n+\t#end if\n+\n+\t#if str($iclassweight) != \'None\':\n+\t --i-class-weight=$iclassweight\n+\t#end if\n+\n+\t#if str($pfeatextpreprocessor):\n+\t --p-feat-ext--preprocessor="$pfeatextpreprocessor"\n+\t#end if\n+\n+\t#if $pfeatextalternatesign:\n+\t --p-feat-ext--alternate-sign\n+\t#else\n+\t\t--p-no-feat-ext--alternate-sign\n+\t#end if\n+\n+\t#if $pclassifychunksize:\n+\t --p-classify--chunk-size=$pclassifychunksize\n+\t#end if\n+\n+\t#if str($pclassifyclassprior):\n+\t --p-classify--class-prior="$pclassifyclassprior"\n+\t#end if\n+\n+\t#if str($pmemory):\n+\t --p-memory="$pmemory"\n+\t#end if\n+\n+\t#if $pfeatextlowercase:\n+\t\t--p-feat-ext--lowercase\n+\t#else\n+\t\t--p-no-feat-ext--lowercase\n+\t#end if\n+\n+\t#if str($pfeatextinput):\n+\t --p-feat-ext--input="$pfeatextinput"\n+\t#end if\n+\n+\t#if str($pfeatexttokenizer):\n+\t --p-feat-ext--tokenizer="$pfeatexttokenizer"\n+\t#end if\n+\t --o-classifier=oclassifier\n+\t#if str($pfeatextnorm):\n+\t --p-feat-ext--norm="$pfeatextnorm"\n+\t#end if\n+\n+\t#if str($pfeatextdecodeerror):\n+\t --p-feat-ext--decode-error="$pfeatextdecodeerror"\n+\t#end if\n+\n+\t#if str($pfeatextstripaccents):\n+\t --p-feat-ext--strip-accents="$pfeatextstripaccents"\n+\t#end if\n+\t;\n+\tcp oclassifier.qza $oclassifier;\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-reference-reads: FeatureData[Sequence] [required]" name="ireferencereads" optional="False" type="data"/>\n+\n+\t\t<conditional name="id_to_taxonomy_fp" optional="True">\n+\t\t   <param name="selector" type="select" label="Reference taxonomy to query">\n+\t\t\t  <option value="cac'..b'lse]" name="pclassifyfitprior" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-feat-ext--alternate-sign: --p-no-feat-ext--alternate-sign [default: False]" name="pfeatextalternatesign" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-feat-ext--analyzer: [default: char_wb]" name="pfeatextanalyzer" optional="True" type="text" value="char_wb"/>\n+\t\t<param label="--p-feat-ext--binary: --p-no-feat-ext--binary [default: False]" name="pfeatextbinary" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-feat-ext--decode-error: [default: strict]" name="pfeatextdecodeerror" optional="True" type="text" value="strict"/>\n+\n+\t\t<param label="--p-feat-ext--encoding: [default: utf-8]" name="pfeatextencoding" optional="True" type="text" value="utf-8"/>\n+\t\t<param label="--p-feat-ext--input: [default: content]" name="pfeatextinput" optional="True" type="text" value="content"/>\n+\t\t<param label="--p-feat-ext--lowercase: --p-no-feat-ext--lowercase [default: True]" name="pfeatextlowercase" checked="True" type="boolean"/>\n+\n+\t\t<param label="--p-feat-ext--n-features: [default: 8192]" name="pfeatextnfeatures" optional="True" type="integer" value="8192"/>\n+\n+\t\t<param label="--p-feat-ext--ngram-range: [default: [8, 8]]" name="pfeatextngramrange" optional="True" type="text" value="[8, 8]"/>\n+\t\t<param label="--p-feat-ext--non-negative: --p-no-feat-ext--non-negative [default: False]" name="pfeatextnonnegative" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-feat-ext--norm: [default: l2]" name="pfeatextnorm" optional="True" type="text" value="l2"/>\n+\t\t<param label="--p-feat-ext--preprocessor: [default: null]" name="pfeatextpreprocessor" optional="True" type="text" value="null"/>\n+\n+\t\t<param label="--p-feat-ext--stop-words: [default: null]" name="pfeatextstopwords" optional="True" type="text" value="null"/>\n+\t\t<param label="--p-feat-ext--strip-accents: [default: null]" name="pfeatextstripaccents" optional="True" type="text" value="null"/>\n+\n+\t\t<param label="--p-feat-ext--token-pattern: [default: (?u)\\b\\w\\w+\\b]" name="pfeatexttokenpattern" optional="True" type="text" value="(?u)\\b\\w\\w+\\b"/>\n+\n+\t\t<param label="--p-feat-ext--tokenizer: [default: null]" name="pfeatexttokenizer" optional="True" type="text" value="null"/>\n+\n+\t\t<param label="--p-memory: [default: null]" name="pmemory" optional="True" type="text" value="null"/>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: classifier.qza" name="oclassifier"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Train the naive_bayes classifier\n+--------------------------------\n+\n+Create a scikit-learn naive_bayes classifier for reads\n+\n+Parameters\n+----------\n+reference_reads : FeatureData[Sequence]\n+\t\t\\\n+reference_taxonomy : FeatureData[Taxonomy]\n+\t\t\\\n+class_weight : FeatureTable[RelativeFrequency], optional\n+\t\t\\\n+classify__alpha : Float, optional\n+\t\t\\\n+classify__chunk_size : Int, optional\n+\t\t\\\n+classify__class_prior : Str, optional\n+\t\t\\\n+classify__fit_prior : Bool, optional\n+\t\t\\\n+feat_ext__alternate_sign : Bool, optional\n+\t\t\\\n+feat_ext__analyzer : Str, optional\n+\t\t\\\n+feat_ext__binary : Bool, optional\n+\t\t\\\n+feat_ext__decode_error : Str, optional\n+\t\t\\\n+feat_ext__encoding : Str, optional\n+\t\t\\\n+feat_ext__input : Str, optional\n+\t\t\\\n+feat_ext__lowercase : Bool, optional\n+\t\t\\\n+feat_ext__n_features : Int, optional\n+\t\t\\\n+feat_ext__ngram_range : Str, optional\n+\t\t\\\n+feat_ext__non_negative : Bool, optional\n+\t\t\\\n+feat_ext__norm : Str, optional\n+\t\t\\\n+feat_ext__preprocessor : Str, optional\n+\t\t\\\n+feat_ext__stop_words : Str, optional\n+\t\t\\\n+feat_ext__strip_accents : Str, optional\n+\t\t\\\n+feat_ext__token_pattern : Str, optional\n+\t\t\\\n+feat_ext__tokenizer : Str, optional\n+\t\t\\\n+memory : Str, optional\n+\t\t\\\n+\n+Returns\n+-------\n+classifier : TaxonomicClassifier\n+\t\t\\\n+\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-classifier_fit-classifier-sklearn.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-classifier_fit-classifier-sklearn.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,84 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-classifier_fit-classifier-sklearn" name="qiime feature-classifier fit-classifier-sklearn" version="2018.4">
+ <description>- Train an almost arbitrary scikit-learn classifier</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-classifier fit-classifier-sklearn --p-classifier-specification="$pclassifierspecification"
+
+ #if str( $id_to_taxonomy_fp.selector ) == 'history'
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+ --i-reference-taxonomy '$tax'
+ #else:
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+ --i-reference-taxonomy '$tax'
+ #end if
+
+ --i-reference-reads=$ireferencereads
+ #if str($iclassweight) != 'None':
+  --i-class-weight=$iclassweight
+ #end if
+  --o-classifier=oclassifier
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+ ;
+ cp oclassifier.qza $oclassifier;
+]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-reference-reads: FeatureData[Sequence] [required]" name="ireferencereads" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param format="qza,no_unzip.zip" label="--i-class-weight: FeatureTable[RelativeFrequency] [optional]" name="iclassweight" optional="True" type="data"/>
+ <param label="--p-classifier-specification: [required]" name="pclassifierspecification" optional="False" type="text"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: classifier.qza" name="oclassifier"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Train an almost arbitrary scikit-learn classifier
+-------------------------------------------------
+
+Train a scikit-learn classifier to classify reads.
+
+Parameters
+----------
+reference_reads : FeatureData[Sequence]
+ \
+reference_taxonomy : FeatureData[Taxonomy]
+ \
+class_weight : FeatureTable[RelativeFrequency], optional
+ \
+classifier_specification : Str
+ \
+
+Returns
+-------
+classifier : TaxonomicClassifier
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_core-features.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_core-features.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,80 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_core-features" name="qiime feature-table core-features" version="2018.4">
+ <description> - Identify core features in table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table core-features --i-table=$itable
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $pminfraction:
+  --p-min-fraction=$pminfraction
+ #end if
+
+ #if $pmaxfraction:
+  --p-max-fraction=$pmaxfraction
+ #end if
+  --o-visualization=ovisualization
+ #if $psteps:
+  --p-steps=$psteps
+ #end if
+ ;
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization';
+]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to use in core features calculations.  [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-min-fraction: The minimum fraction of samples that a feature must be observed in for that feature to be considered a core feature.  [default: 0.5]" name="pminfraction" optional="True" type="float" value="0.5"/>
+ <param label="--p-max-fraction: The maximum fraction of samples that a feature must be observed in for that feature to be considered a core feature.  [default: 1.0]" name="pmaxfraction" optional="True" type="float" value="1.0"/>
+
+ <param label="--p-steps: The number of steps to take between `min_fraction` and `max_fraction` for core features calculations. This parameter has no effect if `min_fraction` and `max_fraction` are the same value.  [default: 11]" name="psteps" optional="True" type="integer" value="11"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Identify core features in table
+--------------------------------
+
+Identify "core" features, which are features observed in a user-defined
+fraction of the samples. Since the core features are a function of the
+fraction of samples that the feature must be observed in to be considered
+core, this is computed over a range of fractions defined by the
+`min_fraction`, `max_fraction`, and `steps` parameters.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table to use in core features calculations.
+min_fraction : Float % Range(0.0, 1.0, inclusive_start=False), optional
+    The minimum fraction of samples that a feature must be observed in for
+    that feature to be considered a core feature.
+max_fraction : Float % Range(0.0, 1.0, inclusive_end=True), optional
+    The maximum fraction of samples that a feature must be observed in for
+    that feature to be considered a core feature.
+steps : Int % Range(2, None), optional
+    The number of steps to take between `min_fraction` and `max_fraction`
+    for core features calculations. This parameter has no effect if
+    `min_fraction` and `max_fraction` are the same value.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_filter-features.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_filter-features.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,133 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_filter-features" name="qiime feature-table filter-features" version="2018.4">
+ <description> - Filter features from table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table filter-features --i-table=$itable
+
+ #if '__sq__' in str($pwhere):
+ #set $pwhere_temp = $pwhere.replace('__sq__', "'")
+ #set $pwhere = $pwhere_temp
+ #end if
+
+ #if str($pwhere):
+  --p-where="$pwhere"
+ #end if
+
+
+ #if $input_files_mmetadatafile:
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if str($pmaxsamples):
+  --p-max-samples="$pmaxsamples"
+ #end if
+
+ #if str($pmaxfrequency):
+  --p-max-frequency="$pmaxfrequency"
+ #end if
+
+ #if $pminsamples:
+  --p-min-samples=$pminsamples
+ #end if
+
+ #if $pexcludeids:
+  --p-exclude-ids
+ #else
+ --p-no-exclude-ids
+ #end if
+
+ #if $pminfrequency:
+  --p-min-frequency=$pminfrequency
+ #end if
+  --o-filtered-table=ofilteredtable;
+
+ cp ofilteredtable.qza $ofilteredtable;
+]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table from which features should be filtered.  [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-min-frequency: The minimum total frequency that a feature must have to be retained.  [default: 0]" name="pminfrequency" optional="True" type="integer" value="0"/>
+ <param label="--p-max-frequency: The maximum total frequency that a feature can have to be retained. If no value is provided this will default to infinity (i.e., no maximum frequency filter will be applied).  [optional]" name="pmaxfrequency" optional="True" type="text"/>
+
+ <param label="--p-min-samples: The minimum number of samples that a feature must be observed in to be retained. [default: 0]" name="pminsamples" optional="True" type="integer" value="0"/>
+ <param label="--p-max-samples: The maximum number of samples that a feature can be observed in to be retained. If no value is provided this will default to infinity (i.e., no maximum sample filter will be applied).  [optional]" name="pmaxsamples" optional="True" type="text"/>
+
+ <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Feature metadata used with `where` parameter when selecting features to retain, or with `exclude_ids` when selecting features to discard.  [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-where: SQLite WHERE clause specifying feature metadata criteria that must be met to be included in the filtered feature table. If not provided, all features in `metadata` that are also in the feature table will be retained.  [optional]" name="pwhere" optional="True" type="text"/>
+
+ <param label="--p-exclude-ids: --p-no-exclude-ids If true, the features selected by `metadata` or `where` parameters will be excluded from the filtered table instead of being retained.  [default: False]" name="pexcludeids" checked="False" type="boolean"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filteredtable.qza" name="ofilteredtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Filter features from table
+--------------------------
+
+Filter features from table based on frequency and/or metadata. Any samples
+with a frequency of zero after feature filtering will also be removed. See
+the filtering tutorial on https://docs.qiime2.org for additional details.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table from which features should be filtered.
+min_frequency : Int, optional
+    The minimum total frequency that a feature must have to be retained.
+max_frequency : Int, optional
+    The maximum total frequency that a feature can have to be retained. If
+    no value is provided this will default to infinity (i.e., no maximum
+    frequency filter will be applied).
+min_samples : Int, optional
+    The minimum number of samples that a feature must be observed in to be
+    retained.
+max_samples : Int, optional
+    The maximum number of samples that a feature can be observed in to be
+    retained. If no value is provided this will default to infinity (i.e.,
+    no maximum sample filter will be applied).
+metadata : Metadata, optional
+    Feature metadata used with `where` parameter when selecting features to
+    retain, or with `exclude_ids` when selecting features to discard.
+where : Str, optional
+    SQLite WHERE clause specifying feature metadata criteria that must be
+    met to be included in the filtered feature table. If not provided, all
+    features in `metadata` that are also in the feature table will be
+    retained.
+exclude_ids : Bool, optional
+    If true, the features selected by `metadata` or `where` parameters will
+    be excluded from the filtered table instead of being retained.
+
+Returns
+-------
+filtered_table : FeatureTable[Frequency]
+    The resulting feature table filtered by feature.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_filter-samples.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_filter-samples.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,125 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_filter-samples" name="qiime feature-table filter-samples" version="2018.4">
+ <description> - Filter samples from table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table filter-samples --i-table=$itable
+ #if '__sq__' in str($pwhere):
+ #set $pwhere_temp = $pwhere.replace('__sq__', "'")
+ #set $pwhere = $pwhere_temp
+ #end if
+
+ #if str($pwhere):
+  --p-where="$pwhere"
+ #end if
+
+
+ #if $input_files_mmetadatafile:
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $pexcludeids:
+  --p-exclude-ids
+ #else
+ --p-no-exclude-ids
+ #end if
+
+ #if $pminfeatures:
+  --p-min-features=$pminfeatures
+ #end if
+
+ #if str($pmaxfrequency):
+  --p-max-frequency="$pmaxfrequency"
+ #end if
+
+ #if str($pmaxfeatures):
+  --p-max-features="$pmaxfeatures"
+ #end if
+
+ #if $pminfrequency:
+  --p-min-frequency=$pminfrequency
+ #end if
+  --o-filtered-table=ofilteredtable;
+
+ cp ofilteredtable.qza $ofilteredtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table from which samples should be filtered.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-min-frequency: The minimum total frequency that a sample must have to be retained.  [default: 0]" name="pminfrequency" optional="True" type="integer" value="0"/>
+ <param label="--p-max-features: The maximum number of features that a sample can have to be retained. If no value is provided this will default to infinity (i.e., no maximum feature filter will be applied).  [optional]" name="pmaxfeatures" optional="True" type="text"/>
+ <param label="--p-min-features: The minimum number of features that a sample must have to be retained.  [default: 0]" name="pminfeatures" optional="True" type="integer" value="0"/>
+ <param label="--p-max-frequency: The maximum total frequency that a sample can have to be retained. If no value is provided this will default to infinity (i.e., no maximum frequency filter will be applied).  [optional]" name="pmaxfrequency" optional="True" type="text"/>
+ <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata used with `where` parameter when selecting samples to retain, or with `exclude_ids` when selecting samples to discard.  [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--p-where: SQLite WHERE clause specifying sample metadata criteria that must be met to be included in the filtered feature table. If not provided, all samples in `metadata` that are also in the feature table will be retained.  [optional]" name="pwhere" optional="True" type="text"/>
+ <param label="--p-exclude-ids: --p-no-exclude-ids If true, the samples selected by `metadata` or `where` parameters will be excluded from the filtered table instead of being retained.  [default: False]" name="pexcludeids" checked="False" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-table.qza" name="ofilteredtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Filter samples from table
+-------------------------
+
+Filter samples from table based on frequency and/or metadata. Any features
+with a frequency of zero after sample filtering will also be removed. See
+the filtering tutorial on https://docs.qiime2.org for additional details.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table from which samples should be filtered.
+min_frequency : Int, optional
+    The minimum total frequency that a sample must have to be retained.
+max_frequency : Int, optional
+    The maximum total frequency that a sample can have to be retained. If
+    no value is provided this will default to infinity (i.e., no maximum
+    frequency filter will be applied).
+min_features : Int, optional
+    The minimum number of features that a sample must have to be retained.
+max_features : Int, optional
+    The maximum number of features that a sample can have to be retained.
+    If no value is provided this will default to infinity (i.e., no maximum
+    feature filter will be applied).
+metadata : Metadata, optional
+    Sample metadata used with `where` parameter when selecting samples to
+    retain, or with `exclude_ids` when selecting samples to discard.
+where : Str, optional
+    SQLite WHERE clause specifying sample metadata criteria that must be
+    met to be included in the filtered feature table. If not provided, all
+    samples in `metadata` that are also in the feature table will be
+    retained.
+exclude_ids : Bool, optional
+    If true, the samples selected by `metadata` or `where` parameters will
+    be excluded from the filtered table instead of being retained.
+
+Returns
+-------
+filtered_table : FeatureTable[Frequency]
+    The resulting feature table filtered by sample.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_filter-seqs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_filter-seqs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,104 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_filter-seqs" name="qiime feature-table filter-seqs" version="2018.4">
+ <description> - Filter features from sequences</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table filter-seqs --i-data=$idata
+ #if '__sq__' in str($pwhere):
+ #set $pwhere_temp = $pwhere.replace('__sq__', "'")
+ #set $pwhere = $pwhere_temp
+ #end if
+
+ #if str($pwhere):
+  --p-where="$pwhere"
+ #end if
+
+
+ #if str($itable) != 'None':
+  --i-table=$itable
+ #end if
+
+ #if $input_files_mmetadatafile:
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $pexcludeids:
+   --p-exclude-ids
+ #else
+ --p-no-exclude-ids
+ #end if
+
+  --o-filtered-data=ofiltereddata;
+  cp ofiltereddata.qza $ofiltereddata;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-data: FeatureData[Sequence] The sequences from which features should be filtered.  [required]" name="idata" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Table containing feature ids used for id- based filtering.  [optional]" name="itable" optional="True" type="data"/>
+ <param label="--p-where: SQLite WHERE clause specifying feature metadata criteria that must be met to be included in the filtered feature table. If not provided, all features in `metadata` that are also in the sequences will be retained.  [optional]" name="pwhere" optional="True" type="text"/>
+
+ <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Feature metadata used for id-based filtering, with `where` parameter when selecting features to retain, or with `exclude_ids` when selecting features to discard.  [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-exclude-ids: --p-no-exclude-ids If true, the features selected by the `metadata` (with or without the `where` parameter) or `table` parameter will be excluded from the filtered sequences instead of being retained.  [default: False]" name="pexcludeids" checked="False" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-data.qza" name="ofiltereddata"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Filter features from sequences
+-------------------------------
+
+Filter features from sequences based on a feature table or metadata. See
+the filtering tutorial on https://docs.qiime2.org for additional details.
+This method can filter based on ids in a table or a metadata file, but not
+both (i.e., the table and metadata options are mutually exclusive).
+
+Parameters
+----------
+data : FeatureData[Sequence]
+    The sequences from which features should be filtered.
+table : FeatureTable[Frequency], optional
+    Table containing feature ids used for id-based filtering.
+metadata : Metadata, optional
+    Feature metadata used for id-based filtering, with `where` parameter
+    when selecting features to retain, or with `exclude_ids` when selecting
+    features to discard.
+where : Str, optional
+    SQLite WHERE clause specifying feature metadata criteria that must be
+    met to be included in the filtered feature table. If not provided, all
+    features in `metadata` that are also in the sequences will be retained.
+exclude_ids : Bool, optional
+    If true, the features selected by the `metadata` (with or without the
+    `where` parameter) or `table` parameter will be excluded from the
+    filtered sequences instead of being retained.
+
+Returns
+-------
+filtered_data : FeatureData[Sequence]
+    The resulting filtered sequences.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_group.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_group.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,96 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_group" name="qiime feature-table group" version="2018.4">
+ <description> - Group samples or features by a metadata column</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table group --i-table=$itable
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+
+ #end def
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-mode=$pmode --m-metadata-column="$mmetadatacolumn" --p-axis=$paxis
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-grouped-table=ogroupedtable;
+ cp ogroupedtable.qza $ogroupedtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The table to group samples or features on. [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-axis: Along which axis to group. Each ID in the
+                                  given axis must exist in `metadata`.
+                                  [required]" name="paxis" optional="False" type="select">
+ <option value="sample">sample</option>
+ <option value="feature">feature</option>
+ </param>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--m-metadata-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. A column defining the groups. Each unique value will become a new ID for the table on the given `axis`. [required]" name="mmetadatacolumn" optional="False" type="text"/>
+
+ <param label="--p-mode: How to combine samples or features within a
+                                  group. `sum` will sum the frequencies across
+                                  all samples or features within a group;
+                                  `mean-ceiling` will take the ceiling of the
+                                  mean of these frequencies; `median-ceiling`
+                                  will take the ceiling of the median of these
+                                  frequencies.  [required]" name="pmode" optional="False" type="select">
+ <option value="median-ceiling">median-ceiling</option>
+ <option value="mean-ceiling">mean-ceiling</option>
+ <option value="sum">sum</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: grouped-table.qza" name="ogroupedtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Group samples or features by a metadata column
+-----------------------------------------------
+
+Group samples or features in a feature table using metadata to define the
+mapping of IDs to a group.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The table to group samples or features on.
+axis : Str % Choices({'feature', 'sample'})
+    Along which axis to group. Each ID in the given axis must exist in
+    `metadata`.
+metadata : MetadataColumn[Categorical]
+    A column defining the groups. Each unique value will become a new ID
+    for the table on the given `axis`.
+mode : Str % Choices({'mean-ceiling', 'median-ceiling', 'sum'})
+    How to combine samples or features within a group. `sum` will sum the
+    frequencies across all samples or features within a group; `mean-
+    ceiling` will take the ceiling of the mean of these frequencies;
+    `median-ceiling` will take the ceiling of the median of these
+    frequencies.
+
+Returns
+-------
+grouped_table : FeatureTable[Frequency]
+    A table that has been grouped along the given `axis`. IDs on that axis
+    are replaced by values in the `metadata` column.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_heatmap.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_heatmap.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,353 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_feature-table_heatmap" name="qiime feature-table heatmap" version="2018.4">\n+\t<description> - Generate a heatmap representation of a feature table</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t\t<![CDATA[\n+\t\tqiime feature-table heatmap --i-table=$itable\n+\n+\t#if str($pcluster) != \'None\':\n+\t --p-cluster=$pcluster\n+\t#end if\n+\n+\t#if $input_files_mmetadatafile:\n+\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \' --m-metadata-file=\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\t --o-visualization=ovisualization\n+\t#if str($mmetadatacolumn):\n+\t --m-metadata-column="$mmetadatacolumn"\n+\t#end if\n+\n+\t#if $pnormalize:\n+\t  --p-normalize\n+\t#else\n+\t\t--p-no-normalize\n+\t#end if\n+\n+\t#if str($pmetric) != \'None\':\n+\t --p-metric=$pmetric\n+\t#end if\n+\n+\t#if str($ptitle):\n+\t --p-title="$ptitle"\n+\t#end if\n+\n+\t#if str($pcolorscheme) != \'None\':\n+\t --p-color-scheme=$pcolorscheme\n+\t#end if\n+\n+\t#if str($pmethod) != \'None\':\n+\t --p-method=$pmethod\n+\t#end if\n+\t;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to visualize.  [required]" name="itable" optional="False" type="data"/>\n+\n+\t\t<repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\t\t<param label="--m-metadata-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. Annotate the sample IDs with these metadata values. When metadata is present and `cluster`=\'feature\', samples will be sorted by the metadata values.  [optional]" name="mmetadatacolumn" optional="True" type="text"/>\n+\n+\t\t<param label="--p-normalize: --p-no-normalize Normalize the feature table by adding a psuedocount of 1 and then taking the log10 of the table.  [default: True]" name="pnormalize" checked="True" type="boolean"/>\n+\t\t<param label="--p-title: Optional custom plot title.  [optional]" name="ptitle" optional="True" type="text"/>\n+\n+\t\t<param label="--p-metric: Metrics exposed by seaborn (see http://seabo\n+                                  rn.pydata.org/generated/seaborn.clustermap.h\n+                                  tml#seaborn.clustermap for more detail).\n+                                  [default: euclidean]" name="pmetric" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="hamming">hamming</option>\n+\t\t\t<option value="sqeuclidean">sqeuclidean</option>\n+\t\t\t<option value="cityblock">cityblock</option>\n+\t\t\t<option value="sokalmichener">sokalmichener</option>\n+\t\t\t<option value="braycurtis">braycurtis</option>\n+\t\t\t<option value="cosine">cosine</option>\n+\t\t\t<option value="euclidean">euclidean</option>\n+\t\t\t<option value="rogerstanimoto">rogerstanimoto</option>\n+\t\t\t<option value="seuclidean">seuclidean</option>\n+\t\t\t<option value="canberra">canberra</option>\n+\t\t\t<option value="correlation">correlation</option>\n+\t\t\t<option value="sokalsneath">sokalsneath</option>\n+\t\t\t<option value="chebyshev">chebyshev</option>\n+\t\t\t<option value="mahalanobis">mahalanobis</option>\n+\t\t\t<option value="kulsinski">kulsinski</opti'..b'="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Generate a heatmap representation of a feature table\n+-----------------------------------------------------\n+\n+Generate a heatmap representation of a feature table with optional\n+clustering on both the sample and feature axes.  Tip: To generate a heatmap\n+containing taxonomic annotations, use `qiime taxa collapse` to collapse the\n+feature table at the desired taxonomic level.\n+\n+Parameters\n+----------\n+table : FeatureTable[Frequency]\n+    The feature table to visualize.\n+metadata : MetadataColumn[Categorical], optional\n+    Annotate the sample IDs with these metadata values. When metadata is\n+    present and `cluster`=\'feature\', samples will be sorted by the metadata values.\n+normalize : Bool, optional\n+    Normalize the feature table by adding a psuedocount of 1 and then\n+    taking the log10 of the table.\n+title : Str, optional\n+    Optional custom plot title.\n+metric : Str % Choices({\'braycurtis\', \'canberra\', \'chebyshev\', \'cityblock\', \'correlation\', \'cosine\', \'dice\', \'euclidean\', \'hamming\', \'jaccard\', \'kulsinski\', \'mahalanobis\', \'matching\', \'minkowski\', \'rogerstanimoto\', \'russellrao\', \'seuclidean\', \'sokalmichener\', \'sokalsneath\', \'sqeuclidean\', \'yule\'}), optional\n+    Metrics exposed by seaborn (see http://seaborn.pydata.org/generated/sea\n+    born.clustermap.html#seaborn.clustermap for more detail).\n+method : Str % Choices({\'average\', \'centroid\', \'complete\', \'median\', \'single\', \'ward\', \'weighted\'}), optional\n+    Clustering methods exposed by seaborn (see http://seaborn.pydata.org/ge\n+    nerated/seaborn.clustermap.html#seaborn.clustermap for more detail).\n+cluster : Str % Choices({\'both\', \'features\', \'samples\'}), optional\n+    Specify which axes to cluster.\n+color_scheme : Str % Choices({\'Accent\', \'Accent_r\', \'Blues\', \'Blues_r\', \'BrBG\', \'BrBG_r\', \'BuGn\', \'BuGn_r\', \'BuPu\', \'BuPu_r\', \'CMRmap\', \'CMRmap_r\', \'Dark2\', \'Dark2_r\', \'GnBu\', \'GnBu_r\', \'Greens\', \'Greens_r\', \'Greys\', \'Greys_r\', \'OrRd\', \'OrRd_r\', \'Oranges\', \'Oranges_r\', \'PRGn\', \'PRGn_r\', \'Paired\', \'Paired_r\', \'Pastel1\', \'Pastel1_r\', \'Pastel2\', \'Pastel2_r\', \'PiYG\', \'PiYG_r\', \'PuBu\', \'PuBuGn\', \'PuBuGn_r\', \'PuBu_r\', \'PuOr\', \'PuOr_r\', \'PuRd\', \'PuRd_r\', \'Purples\', \'Purples_r\', \'RdBu\', \'RdBu_r\', \'RdGy\', \'RdGy_r\', \'RdPu\', \'RdPu_r\', \'RdYlBu\', \'RdYlBu_r\', \'RdYlGn\', \'RdYlGn_r\', \'Reds\', \'Reds_r\', \'Set1\', \'Set1_r\', \'Set2\', \'Set2_r\', \'Set3\', \'Set3_r\', \'Spectral\', \'Spectral_r\', \'Vega10\', \'Vega10_r\', \'Vega20\', \'Vega20_r\', \'Vega20b\', \'Vega20b_r\', \'Vega20c\', \'Vega20c_r\', \'Wistia\', \'Wistia_r\', \'YlGn\', \'YlGnBu\', \'YlGnBu_r\', \'YlGn_r\', \'YlOrBr\', \'YlOrBr_r\', \'YlOrRd\', \'YlOrRd_r\', \'afmhot\', \'afmhot_r\', \'autumn\', \'autumn_r\', \'binary\', \'binary_r\', \'bone\', \'bone_r\', \'brg\', \'brg_r\', \'bwr\', \'bwr_r\', \'cool\', \'cool_r\', \'coolwarm\', \'coolwarm_r\', \'copper\', \'copper_r\', \'cubehelix\', \'cubehelix_r\', \'flag\', \'flag_r\', \'gist_earth\', \'gist_earth_r\', \'gist_gray\', \'gist_gray_r\', \'gist_heat\', \'gist_heat_r\', \'gist_ncar\', \'gist_ncar_r\', \'gist_rainbow\', \'gist_rainbow_r\', \'gist_stern\', \'gist_stern_r\', \'gist_yarg\', \'gist_yarg_r\', \'gnuplot\', \'gnuplot2\', \'gnuplot2_r\', \'gnuplot_r\', \'gray\', \'gray_r\', \'hot\', \'hot_r\', \'hsv\', \'hsv_r\', \'icefire\', \'icefire_r\', \'inferno\', \'inferno_r\', \'jet\', \'jet_r\', \'magma\', \'magma_r\', \'mako\', \'mako_r\', \'nipy_spectral\', \'nipy_spectral_r\', \'ocean\', \'ocean_r\', \'pink\', \'pink_r\', \'plasma\', \'plasma_r\', \'prism\', \'prism_r\', \'rainbow\', \'rainbow_r\', \'rocket\', \'rocket_r\', \'seismic\', \'seismic_r\', \'spectral\', \'spectral_r\', \'spring\', \'spring_r\', \'summer\', \'summer_r\', \'tab10\', \'tab10_r\', \'tab20\', \'tab20_r\', \'tab20b\', \'tab20b_r\', \'tab20c\', \'tab20c_r\', \'terrain\', \'terrain_r\', \'viridis\', \'viridis_r\', \'vlag\', \'vlag_r\', \'winter\', \'winter_r\'}), optional\n+    The matplotlib colorscheme to generate the heatmap with.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_merge-seqs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_merge-seqs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,62 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_merge-seqs" name="qiime feature-table merge-seqs" version="2018.4">
+ <description> - Combine collections of feature sequences</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table merge-seqs
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --i-data=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+
+  --i-data=$list_dict_to_string($input_files_idata)
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-merged-data=omergeddata;
+  cp omergeddata.qza $omergeddata;
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_idata" optional="False" title="--i-data">
+ <param format="qza,no_unzip.zip" label="--i-data: PATH List[FeatureData[Sequence]] The collection of feature sequences to be merged.  [required]" name="additional_input" type="data"/>
+ </repeat>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: merged-data.qza" name="omergeddata"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Combine collections of feature sequences
+-----------------------------------------
+
+Combines feature data objects which may or may not contain data for the
+same features. If different feature data is present for the same feature id
+in the inputs, the data from the first will be propagated to the result.
+
+Parameters
+----------
+data : List[FeatureData[Sequence]]
+    The collection of feature sequences to be merged.
+
+Returns
+-------
+merged_data : FeatureData[Sequence]
+    The resulting collection of feature sequences containing all feature
+    sequences provided.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_merge-taxa.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_merge-taxa.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,64 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_merge-taxa" name="qiime feature-table merge-taxa" version="2018.4">
+ <description> - Combine collections of feature taxonomies</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table merge-taxa
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --i-data=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+
+  --i-data=$list_dict_to_string($input_files_idata)
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-merged-data=omergeddata;
+
+ cp omergeddata.qza $omergeddata;
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_idata" optional="False" title="--i-data">
+ <param format="qza,no_unzip.zip" label="--i-data: PATH List[FeatureData[Taxonomy]] The collection of feature taxonomies to be merged.  [required]" name="additional_input" type="data"/>
+ </repeat>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: merged-data.qza" name="omergeddata"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Combine collections of feature taxonomies
+------------------------------------------
+
+Combines a pair of feature data objects which may or may not contain data
+for the same features. If different feature data is present for the same
+feature id in the inputs, the data from the first will be propagated to the
+result.
+
+Parameters
+----------
+data : List[FeatureData[Taxonomy]]
+    The collection of feature taxonomies to be merged.
+
+Returns
+-------
+merged_data : FeatureData[Taxonomy]
+    The resulting collection of feature taxonomies containing all feature
+    taxonomies provided.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_merge.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_merge.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,73 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_merge" name="qiime feature-table merge" version="2018.4">
+ <description> - Combine multiple tables</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table merge
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --i-tables=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+
+  --i-tables=$list_dict_to_string($input_files_itables)
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-merged-table=omergedtable
+ #if str($poverlapmethod) != 'None':
+  --p-overlap-method=$poverlapmethod
+ #end if
+ ;
+ cp omergedtable.qza $omergedtable;
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_itables" optional="False" title="--i-tables">
+ <param format="qza,no_unzip.zip" label="--i-tables: PATH List[FeatureTable[Frequency]] The collection of feature tables to be merged.  [required]" name="additional_input" type="data"/>
+ </repeat>
+ <param label="--p-overlap-method: Method for handling overlapping ids.
+                                  [default: error_on_overlapping_sample]" name="poverlapmethod" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="error_on_overlapping_feature">error_on_overlapping_feature</option>
+ <option value="error_on_overlapping_sample">error_on_overlapping_sample</option>
+ <option value="sum">sum</option>
+ </param>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: merged-table.qza" name="omergedtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Combine multiple tables
+------------------------
+
+Combines feature tables using the `overlap_method` provided.
+
+Parameters
+----------
+tables : List[FeatureTable[Frequency]]
+    The collection of feature tables to be merged.
+overlap_method : Str % Choices({'error_on_overlapping_feature', 'error_on_overlapping_sample', 'sum'}), optional
+    Method for handling overlapping ids.
+
+Returns
+-------
+merged_table : FeatureTable[Frequency]
+    The resulting merged feature table.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_presence-absence.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_presence-absence.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,49 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_presence-absence" name="qiime feature-table presence-absence" version="2018.4">
+ <description> - Convert to presence/absence</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table presence-absence --i-table=$itable
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-presence-absence-table=opresenceabsencetable;
+
+  cp opresenceabsencetable.qza $opresenceabsencetable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency | RelativeFrequency] The feature table to be converted into presence/absence abundances.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: presence-absence-table.qza" name="opresenceabsencetable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Convert to presence/absence
+----------------------------
+
+Convert frequencies to binary values indicating presence or absence of a
+feature in a sample.
+
+Parameters
+----------
+table : FeatureTable[Frequency | RelativeFrequency]
+    The feature table to be converted into presence/absence abundances.
+
+Returns
+-------
+presence_absence_table : FeatureTable[PresenceAbsence]
+    The resulting presence/absence feature table.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_rarefy.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_rarefy.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,54 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_rarefy" name="qiime feature-table rarefy" version="2018.4">
+ <description> - Rarefy table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table rarefy --i-table=$itable --p-sampling-depth="$psamplingdepth"
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-rarefied-table=orarefiedtable;
+
+ cp orarefiedtable.qza $orarefiedtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to be rarefied. [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-sampling-depth: The total frequency that each sample should be rarefied to. Samples where the sum of frequencies is less than the sampling depth will be not be included in the resulting table.  [required]" name="psamplingdepth" optional="False" type="text"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: rarefied-table.qza" name="orarefiedtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Rarefy table
+-------------
+
+Subsample frequencies from all samples without replacement so that the sum
+of frequencies in each sample is equal to sampling-depth.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table to be rarefied.
+sampling_depth : Int % Range(1, None)
+    The total frequency that each sample should be rarefied to. Samples
+    where the sum of frequencies is less than the sampling depth will be
+    not be included in the resulting table.
+
+Returns
+-------
+rarefied_table : FeatureTable[Frequency]
+    The resulting rarefied feature table.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_relative-frequency.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_relative-frequency.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,53 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_relative-frequency" name="qiime feature-table relative-frequency" version="2018.4">
+ <description> - Convert to relative frequencies</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table relative-frequency --i-table=$itable
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-relative-frequency-table=orelativefrequencytable;
+
+ cp orelativefrequencytable.qza $orelativefrequencytable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to be converted into relative frequencies.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: relative-frequency-table.qza" name="orelativefrequencytable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Rarefy table
+-------------
+
+Subsample frequencies from all samples without replacement so that the sum
+of frequencies in each sample is equal to sampling-depth.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table to be rarefied.
+sampling_depth : Int % Range(1, None)
+    The total frequency that each sample should be rarefied to. Samples
+    where the sum of frequencies is less than the sampling depth will be
+    not be included in the resulting table.
+
+Returns
+-------
+rarefied_table : FeatureTable[Frequency]
+    The resulting rarefied feature table.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_subsample.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_subsample.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,68 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_subsample" name="qiime feature-table subsample" version="2018.4">
+ <description> - Subsample table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table subsample --i-table=$itable --p-subsampling-depth="$psubsamplingdepth" --p-axis=$paxis
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-sampled-table=osampledtable;
+
+ cp osampledtable.qza $osampledtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to be sampled.  [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-subsampling-depth: The total number of samples or features to be randomly sampled. Samples or features that are reduced to a zero sum will not be included in the resulting table.  [required]" name="psubsamplingdepth" optional="False" type="text"/>
+
+ <param label="--p-axis: The axis to sample over. If 'sample' then
+                                  samples will be randomly selected to be
+                                  retained. If 'feature' then a random set of
+                                  features will be selected to be retained.
+                                  [required]" name="paxis" optional="False" type="select">
+ <option value="sample">sample</option>
+ <option value="feature">feature</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: sampled-table.qza" name="osampledtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Subsample table
+----------------
+
+Randomly pick samples or features, without replacement, from the table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table to be sampled.
+subsampling_depth : Int % Range(1, None)
+    The total number of samples or features to be randomly sampled. Samples
+    or features that are reduced to a zero sum will not be included in the
+    resulting table.
+axis : Str % Choices({'feature', 'sample'})
+    The axis to sample over. If "sample" then samples will be randomly
+    selected to be retained. If "feature" then a random set of features
+    will be selected to be retained.
+
+Returns
+-------
+sampled_table : FeatureTable[Frequency]
+    The resulting subsampled feature table.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_summarize.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_summarize.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,67 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_summarize" name="qiime feature-table summarize" version="2018.4">
+ <description> - Summarize table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table summarize --i-table=$itable
+
+ #if $input_files_msamplemetadatafile:
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+  --m-sample-metadata-file=$list_dict_to_string($input_files_msamplemetadatafile)
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization;
+
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency | PresenceAbsence | RelativeFrequency] The feature table to be summarized. [required]" name="itable" optional="False" type="data"/>
+ <repeat name="input_files_msamplemetadatafile" optional="True" title="--m-sample-metadata-file">
+ <param label="--m-sample-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Summarize table
+----------------
+
+Generate visual and tabular summaries of a feature table.
+
+Parameters
+----------
+table : FeatureTable[Frequency | PresenceAbsence | RelativeFrequency]
+    The feature table to be summarized.
+sample_metadata : Metadata, optional
+    The sample metadata.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_feature-table_tabulate-seqs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_feature-table_tabulate-seqs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,51 @@
+<?xml version="1.0" ?>
+<tool id="qiime_feature-table_tabulate-seqs" name="qiime feature-table tabulate-seqs" version="2018.4">
+ <description> - View sequence associated with each feature</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime feature-table tabulate-seqs --i-data=$idata
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization;
+
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-data: FeatureData[Sequence] The feature sequences to be tabulated. [required]" name="idata" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+View sequence associated with each feature
+-------------------------------------------
+
+Generate tabular view of feature identifier to sequence mapping, including
+links to BLAST each sequence against the NCBI nt database.
+
+Parameters
+----------
+data : FeatureData[Sequence]
+    The feature sequences to be tabulated.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_add-pseudocount.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_add-pseudocount.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,55 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_add-pseudocount" name="qiime gneiss add-pseudocount" version="2018.4">
+ <description> - Add pseudocount to table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss add-pseudocount --i-table=$itable
+
+ #if $ppseudocount:
+  --p-pseudocount=$ppseudocount
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-composition-table=ocompositiontable;
+
+ cp ocompositiontable.qza $ocompositiontable
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to which pseudocounts should be added.  [required]" name="itable" optional="False" type="data"/>
+ <param label="--p-pseudocount: The value to add to all counts in the feature table.  [default: 1]" name="ppseudocount" optional="True" type="integer" value="1"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: composition-table.qza" name="ocompositiontable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Add pseudocount to table
+-------------------------
+
+Increment all counts in table by pseudocount.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    The feature table to which pseudocounts should be added.
+pseudocount : Int, optional
+    The value to add to all counts in the feature table.
+
+Returns
+-------
+composition_table : FeatureTable[Composition]
+    The resulting feature table.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_assign-ids.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_assign-ids.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,57 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_assign-ids" name="qiime gneiss assign-ids" version="2018.4">
+ <description> - Assigns ids on internal nodes in the tree, and makes sure that they are consistent with the table columns.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss assign-ids --i-input-table=$iinputtable --i-input-tree=$iinputtree
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-output-tree=ooutputtree --o-output-table=ooutputtable;
+
+ cp ooutputtree.qza $ooutputtree;
+ cp ooutputtable.qza $ooutputtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-input-table: FeatureTable[Frequency] The input table of counts.  [required]" name="iinputtable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-input-tree: Phylogeny[Rooted] The input tree with potential missing ids. [required]" name="iinputtree" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: output-tree.qza" name="ooutputtree"/>
+ <data format="qza" label="${tool.name} on ${on_string}: output-table.qza" name="ooutputtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Assigns ids on internal nodes in the tree, and makes sure that they are consistent with the table columns.
+-----------------------------------------------------------------------------------------------------------
+
+Assigns UUIDs to uniquely identify internal nodes in the tree.  Also
+corrects for polytomies to create strictly bifurcating trees and aligns the
+table columns with the tree tip names
+
+Parameters
+----------
+input_table : FeatureTable[Frequency]
+    The input table of counts.
+input_tree : Phylogeny[Rooted]
+    The input tree with potential missing ids.
+
+Returns
+-------
+output_table : FeatureTable[Frequency]
+    A table with features matching the tree tips.
+output_tree : Hierarchy
+    A tree with uniquely identifying ids.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_balance-taxonomy.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_balance-taxonomy.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,131 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_balance-taxonomy" name="qiime gneiss balance-taxonomy" version="2018.4">
+ <description>- Balance Summary</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss balance-taxonomy --i-tree=$itree --p-balance-name="$pbalancename"
+
+ #if str( $id_to_taxonomy_fp.selector ) == 'history'
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+ --i-taxonomy '$tax'
+ #else:
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+ --i-taxonomy '$tax'
+ #end if
+
+ --i-table=$itable
+ #if $pnfeatures:
+  --p-n-features=$pnfeatures
+ #end if
+
+ #if str($mmetadatacolumn):
+  --m-metadata-column="$mmetadatacolumn"
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $ptaxalevel:
+  --p-taxa-level=$ptaxalevel
+ #end if
+  --o-visualization=ovisualization
+ #if $input_files_mmetadatafile:
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+ #end if
+
+ #if str($pthreshold):
+  --p-threshold="$pthreshold"
+ #end if
+ ;
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Composition] A table of compositions.  [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-tree: Hierarchy The tree used to calculate the balances. [required]" name="itree" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-balance-name: Name of the balance to summarize. [required]" name="pbalancename" optional="False" type="text"/>
+ <param label="--p-taxa-level: Level of taxonomy to summarize.  [default: 0]" name="ptaxalevel" optional="True" type="integer" value="0"/>
+ <param label="--p-n-features: The number of features to plot in the proportion plot.  [default: 10]" name="pnfeatures" optional="True" type="integer" value="10"/>
+ <param label="--p-threshold: A threshold to designate discrete categories for a numerical metadata column. This will split the numerical column values into two categories, values below the threshold, and values above the threshold. If not specified, this threshold will default to the mean.  [optional]" name="pthreshold" optional="True" type="text"/>
+
+ <repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--m-metadata-column: MetadataColumn[Categorical | Numeric] Column from metadata file or artifact viewable as metadata. Metadata column for plotting the balance (optional).  [optional]" name="mmetadatacolumn" optional="True" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Balance Summary
+----------------
+
+Visualize the distribution of a single balance and summarize its numerator
+and denominator components.
+
+Parameters
+----------
+table : FeatureTable[Composition]
+    A table of compositions.
+tree : Hierarchy
+    The tree used to calculate the balances.
+taxonomy : FeatureData[Taxonomy]
+    Taxonomy information for the OTUs.
+balance_name : Str
+    Name of the balance to summarize.
+taxa_level : Int, optional
+    Level of taxonomy to summarize.
+n_features : Int, optional
+    The number of features to plot in the proportion plot.
+threshold : Float, optional
+    A threshold to designate discrete categories for a numerical metadata
+    column. This will split the numerical column values into two
+    categories, values below the threshold, and values above the threshold.
+    If not specified, this threshold will default to the mean.
+metadata : MetadataColumn[Categorical | Numeric], optional
+    Metadata column for plotting the balance (optional).
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_correlation-clustering.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_correlation-clustering.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,54 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_correlation-clustering" name="qiime gneiss correlation-clustering" version="2018.4">
+ <description> - Hierarchical clustering using feature correlation.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss correlation-clustering --i-table=$itable
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-clustering=oclustering;
+
+  cp oclustering.qza $oclustering;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Composition] The feature table containing the samples in which the columns will be clustered. [required]" name="itable" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: clustering.qza" name="oclustering"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Hierarchical clustering using feature correlation.
+---------------------------------------------------
+
+Build a bifurcating tree that represents a hierarchical clustering of
+features.  The hiearchical clustering uses Ward hierarchical clustering
+based on the degree of proportionality between features.
+
+Parameters
+----------
+table : FeatureTable[Composition]
+    The feature table containing the samples in which the columns will be
+    clustered.
+
+Returns
+-------
+clustering : Hierarchy
+    A hierarchy of feature identifiers where each tipcorresponds to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_dendrogram-heatmap.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_dendrogram-heatmap.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,185 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_gneiss_dendrogram-heatmap" name="qiime gneiss dendrogram-heatmap" version="2018.4">\n+\t<description> - Dendrogram heatmap.</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t\t<![CDATA[\n+\tqiime gneiss dendrogram-heatmap --i-table=$itable\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \',\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --m-metadata-column="$mmetadatacolumn" --i-tree=$itree\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\n+\t#if $pndim:\n+\t --p-ndim=$pndim\n+\t#end if\n+\n+\t#if str($pcolormap) != \'None\':\n+\t --p-color-map=$pcolormap\n+\t#end if\n+\t --o-visualization=ovisualization\n+\t#if str($pmethod) != \'None\':\n+\t --p-method=$pmethod\n+\t#end if\n+\t;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Composition] The feature table that will be plotted as a heatmap. This table is assumed to have strictly positive values.  [required]" name="itable" optional="False" type="data"/>\n+\t\t<param format="qza,no_unzip.zip" label="--i-tree: Hierarchy A hierarchy of feature identifiers where each tipcorresponds to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  [required]" name="itree" optional="False" type="data"/>\n+\n+\t\t<repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\t\t<param label="--m-metadata-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. Categorical metadata column to group the samples.  [required]" name="mmetadatacolumn" optional="False" type="text"/>\n+\n+\t\t<param label="--p-ndim: Number of dimensions to highlight. [default: 10]" name="pndim" optional="True" type="integer" value="10"/>\n+\n+\t\t<param label="--p-method: Specifies how the data should be normalized\n+                                  for display.Options include \'log\' or \'clr\'\n+                                  (default=\'clr\').  [default: clr]" name="pmethod" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="log">log</option>\n+\t\t\t<option value="clr">clr</option>\n+\t\t</param>\n+\n+\t\t<param label="--p-color-map: Specifies the color map for plotting the\n+                                  heatmap. See https://matplotlib.org/examples\n+                                  /color/colormaps_reference.html for more\n+                                  details.  [default: viridis]" name="pcolormap" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="gist_heat">gist_heat</option>\n+\t\t\t<option value="plasma">plasma</option>\n+\t\t\t<option value="PiYG">PiYG</option>\n+\t\t\t<option value="Pastel2">Pastel2</option>\n+\t\t\t<option value="nipy_spectral">nipy_spectral</option>\n+\t\t\t<option value="inferno">inferno</option>\n+\t\t\t<option value="YlGn">YlGn</option>\n+\t\t\t<option value="bone">bone</option>\n+\t\t\t<option value="YlGnBu">YlGnBu</option>\n+\t\t\t<option value="hsv">hsv</option>\n+\t\t\t<option value="summer">summer</option>\n+\t\t\t<option value="Set1">Set1</option>\n+\t\t\t<option val'..b'lot2</option>\n+\t\t\t<option value="gist_ncar">gist_ncar</option>\n+\t\t\t<option value="flag">flag</option>\n+\t\t\t<option value="OrRd">OrRd</option>\n+\t\t\t<option value="RdYlGn">RdYlGn</option>\n+\t\t\t<option value="rainbow">rainbow</option>\n+\t\t\t<option value="gist_rainbow">gist_rainbow</option>\n+\t\t\t<option value="RdGy">RdGy</option>\n+\t\t\t<option value="Pastel1">Pastel1</option>\n+\t\t\t<option value="gist_earth">gist_earth</option>\n+\t\t\t<option value="Set3">Set3</option>\n+\t\t\t<option value="BuPu">BuPu</option>\n+\t\t\t<option value="PRGn">PRGn</option>\n+\t\t\t<option value="pink">pink</option>\n+\t\t\t<option value="Purples">Purples</option>\n+\t\t\t<option value="PuBuGn">PuBuGn</option>\n+\t\t\t<option value="Vega20c">Vega20c</option>\n+\t\t\t<option value="winter">winter</option>\n+\t\t\t<option value="bwr">bwr</option>\n+\t\t\t<option value="Vega20b">Vega20b</option>\n+\t\t\t<option value="hot">hot</option>\n+\t\t\t<option value="afmhot">afmhot</option>\n+\t\t\t<option value="viridis">viridis</option>\n+\t\t\t<option value="RdPu">RdPu</option>\n+\t\t\t<option value="spring">spring</option>\n+\t\t\t<option value="RdYlBu">RdYlBu</option>\n+\t\t\t<option value="Greens">Greens</option>\n+\t\t\t<option value="autumn">autumn</option>\n+\t\t\t<option value="cubehelix">cubehelix</option>\n+\t\t\t<option value="cool">cool</option>\n+\t\t\t<option value="Blues">Blues</option>\n+\t\t\t<option value="BuGn">BuGn</option>\n+\t\t\t<option value="Greys">Greys</option>\n+\t\t\t<option value="YlOrRd">YlOrRd</option>\n+\t\t\t<option value="Oranges">Oranges</option>\n+\t\t\t<option value="gray">gray</option>\n+\t\t\t<option value="jet">jet</option>\n+\t\t\t<option value="gist_stern">gist_stern</option>\n+\t\t\t<option value="copper">copper</option>\n+\t\t</param>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help><![CDATA[\n+Dendrogram heatmap.\n+--------------------\n+\n+Visualize the feature table as a heatmap, with samples sorted along a\n+specified categorical metadata column and features clustered together\n+specified by the tree.\n+\n+Parameters\n+----------\n+table : FeatureTable[Composition]\n+    The feature table that will be plotted as a heatmap. This table is\n+    assumed to have strictly positive values.\n+tree : Hierarchy\n+    A hierarchy of feature identifiers where each tipcorresponds to the\n+    feature identifiers in the table. This tree can contain tip ids that\n+    are not present in the table, but all feature ids in the table must be\n+    present in this tree.\n+metadata : MetadataColumn[Categorical]\n+    Categorical metadata column to group the samples.\n+ndim : Int, optional\n+    Number of dimensions to highlight.\n+method : Str % Choices({\'clr\', \'log\'}), optional\n+    Specifies how the data should be normalized for display.Options include\n+    \'log\' or \'clr\' (default=\'clr\').\n+color_map : Str % Choices({\'Accent\', \'Blues\', \'BrBG\', \'BuGn\', \'BuPu\', \'CMRmap\', \'Dark2\', \'GnBu\', \'Greens\', \'Greys\', \'OrRd\', \'Oranges\', \'PRGn\', \'Paired\', \'Pastel1\', \'Pastel2\', \'PiYG\', \'PuBu\', \'PuBuGn\', \'PuOr\', \'PuRd\', \'Purples\', \'RdBu\', \'RdGy\', \'RdPu\', \'RdYlBu\', \'RdYlGn\', \'Reds\', \'Set1\', \'Set2\', \'Set3\', \'Spectral\', \'Vega10\', \'Vega20\', \'Vega20b\', \'Vega20c\', \'YlGn\', \'YlGnBu\', \'YlOrBr\', \'YlOrRd\', \'afmhot\', \'autumn\', \'bone\', \'brg\', \'bwr\', \'cool\', \'coolwarm\', \'copper\', \'cubehelix\', \'flag\', \'gist_earth\', \'gist_heat\', \'gist_ncar\', \'gist_rainbow\', \'gist_stern\', \'gnuplot\', \'gnuplot2\', \'gray\', \'hot\', \'hsv\', \'inferno\', \'jet\', \'magma\', \'nipy_spectral\', \'ocean\', \'pink\', \'plasma\', \'prism\', \'rainbow\', \'seismic\', \'spring\', \'summer\', \'terrain\', \'viridis\', \'winter\'}), optional\n+    Specifies the color map for plotting the heatmap. See\n+    https://matplotlib.org/examples/color/colormaps_reference.html for more\n+    details.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_gradient-clustering.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_gradient-clustering.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,83 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_gradient-clustering" name="qiime gneiss gradient-clustering" version="2018.4">
+ <description> - Hierarchical clustering using gradient information.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss gradient-clustering --i-table=$itable --m-gradient-column="$mgradientcolumn"
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-gradient-file=$list_dict_to_string($input_files_mgradientfile)
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $pweighted:
+   --p-weighted
+ #else
+   --p-no-weighted
+ #end if
+
+  --o-clustering=oclustering;
+ cp oclustering.qza $oclustering;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Composition | Frequency | RelativeFrequency] The feature table containing the samples in which the columns will be clustered. [required]" name="itable" optional="False" type="data"/>
+ <param label="--m-gradient-column: MetadataColumn[Numeric] Column from metadata file or artifact viewable as metadata. Contains gradient values to sort the features and samples. [required]" name="mgradientcolumn" optional="False" type="text"/>
+
+ <repeat name="input_files_mgradientfile" optional="False" title="--m-gradient-file">
+ <param label="--m-gradient-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-weighted: --p-no-weighted  Specifies if abundance or presence/absence information should be used to perform the clustering.  [default: True]" name="pweighted" checked="True" type="boolean"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: clustering.qza" name="oclustering"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Hierarchical clustering using gradient information.
+----------------------------------------------------
+
+Build a bifurcating tree that represents a hierarchical clustering of
+features.  The hiearchical clustering uses Ward hierarchical clustering
+based on the mean difference of gradients that each feature is observed in.
+This method is primarily used to sort the table to reveal the underlying
+block-like structures.
+
+Parameters
+----------
+table : FeatureTable[Composition | Frequency | RelativeFrequency]
+    The feature table containing the samples in which the columns will be
+    clustered.
+gradient : MetadataColumn[Numeric]
+    Contains gradient values to sort the features and samples.
+weighted : Bool, optional
+    Specifies if abundance or presence/absence information should be used
+    to perform the clustering.
+
+Returns
+-------
+clustering : Hierarchy
+    A hierarchy of feature identifiers where each tipcorresponds to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_ilr-transform.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_ilr-transform.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,56 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_ilr-transform" name="qiime gneiss ilr-transform" version="2018.4">
+ <description> - Isometric Log-ratio Transform</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss ilr-transform --i-table=$itable --i-tree=$itree --o-balances=obalances
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+ ;
+ cp obalances.qza $obalances;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Composition] The feature table containing the samples in which the ilr transform will be performed. [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-tree: Hierarchy A hierarchy of feature identifiers that defines the partitions of features.  Each tip in the hierarchycorresponds to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  This assumes that all of the internal nodes in the tree have labels.  [required]" name="itree" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: balances.qza" name="obalances"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Isometric Log-ratio Transform
+------------------------------
+
+Calculate balances given a hierarchy.
+
+Parameters
+----------
+table : FeatureTable[Composition]
+    The feature table containing the samples in which the ilr transform
+    will be performed.
+tree : Hierarchy
+    A hierarchy of feature identifiers that defines the partitions of
+    features.  Each tip in the hierarchycorresponds to the feature
+    identifiers in the table. This tree can contain tip ids that are not
+    present in the table, but all feature ids in the table must be present
+    in this tree.  This assumes that all of the internal nodes in the tree
+    have labels.
+
+Returns
+-------
+balances : FeatureTable[Balance]
+    The resulting balances from the ilr transform.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_lme-regression.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_lme-regression.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,79 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_lme-regression" name="qiime gneiss lme-regression" version="2018.4">
+ <description> - Simplicial Linear mixed effects regression</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss lme-regression --i-table=$itable
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-tree=$itree --p-groups="$pgroups" --p-formula="$pformula"
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization;
+
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Balance] The feature table containing the samples in which simplicial regression with mixed effects will be performedwill be performed. [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-tree: Hierarchy A hierarchy of feature identifiers where each tipcorresponds to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  [required]" name="itree" optional="False" type="data"/>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Metadata information that contains the covariates of interest.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-formula: Statistical formula specifying the statistical model.  [required]" name="pformula" optional="False" type="text"/>
+ <param label="--p-groups: [required]" name="pgroups" optional="False" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Simplicial Linear mixed effects regression
+-------------------------------------------
+
+Build and run linear mixed effects model on balances.
+
+Parameters
+----------
+table : FeatureTable[Balance]
+    The feature table containing the samples in which simplicial regression
+    with mixed effects will be performedwill be performed.
+tree : Hierarchy
+    A hierarchy of feature identifiers where each tipcorresponds to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+metadata : Metadata
+    Metadata information that contains the covariates of interest.
+formula : Str
+    Statistical formula specifying the statistical model.
+groups : Str
+    \
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_gneiss_ols-regression.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_gneiss_ols-regression.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,83 @@
+<?xml version="1.0" ?>
+<tool id="qiime_gneiss_ols-regression" name="qiime gneiss ols-regression" version="2018.4">
+ <description>- Simplicial Ordinary Least Squares Regression</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime gneiss ols-regression
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-table=$itable
+
+ #if '__ob__' in str($pformula):
+ #set $pformula_temp = $pformula.replace('__dp__', '"')
+ #set $pformula = $pformula_temp
+ #end if
+ --p-formula="$pformula"
+
+ --i-tree=$itree
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization;
+
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Balance] The feature table containing the samples in which simplicial regression will be performed.  [required]" name="itable" optional="False" type="data"/>
+
+ <param format="qza,no_unzip.zip" label="--i-tree: Hierarchy A hierarchy of feature identifiers where each tipcorresponds to the feature identifiers in the table. This tree can contain tip ids that are not present in the table, but all feature ids in the table must be present in this tree.  [required]" name="itree" optional="False" type="data"/>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Metadata information that contains the covariates of interest.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat> <param label="--p-formula: Statistical formula specifying the statistical model.  [required]" name="pformula" optional="False" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help><![CDATA[
+Simplicial Ordinary Least Squares Regression
+---------------------------------------------
+
+Perform linear regression on balances.
+
+Parameters
+----------
+table : FeatureTable[Balance]
+    The feature table containing the samples in which simplicial regression
+    will be performed.
+tree : Hierarchy
+    A hierarchy of feature identifiers where each tipcorresponds to the
+    feature identifiers in the table. This tree can contain tip ids that
+    are not present in the table, but all feature ids in the table must be
+    present in this tree.
+metadata : Metadata
+    Metadata information that contains the covariates of interest.
+formula : Str
+    Statistical formula specifying the statistical model.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_first-differences.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_first-differences.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,132 @@
+<?xml version="1.0" ?>
+<tool id="qiime_longitudinal_first-differences" name="qiime longitudinal first-differences" version="2018.4">
+ <description> - Compute first differences or difference from baseline between sequential states</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+
+ qiime longitudinal first-differences --p-state-column="$pstatecolumn"
+
+ #if '__pd__' in str($pindividualidcolumn):
+ #set $pwhere_temp = $pindividualidcolumn.replace('__pd__', "#")
+ #set $pindividualidcolumn = $pwhere_temp
+ #end if
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-individual-id-column="$pindividualidcolumn" --p-metric="$pmetric"
+ #if str($itable) != 'None':
+  --i-table=$itable
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if str($preplicatehandling) != 'None':
+  --p-replicate-handling=$preplicatehandling
+ #end if
+  --o-first-differences=ofirstdifferences
+ #if str($pbaseline):
+  --p-baseline="$pbaseline"
+ #end if
+ ;
+ cp ofirstdifferences.qza $ofirstdifferences;
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-state-column: Metadata column containing state (e.g., Time) across which samples are paired. [required]" name="pstatecolumn" optional="False" type="text"/>
+ <param label="--p-individual-id-column: Metadata column containing IDs for individual subjects.  [required]" name="pindividualidcolumn" optional="False" type="text"/>
+
+ <param label="--p-metric: Numerical metadata or artifact column to test.  [required]" name="pmetric" optional="False" type="text"/>
+
+ <param label="--p-replicate-handling: Choose how replicate samples are handled. If
+                                  replicates are detected, 'error' causes
+                                  method to fail; 'drop'' will discard all
+                                  replicated samples; 'random' chooses one
+                                  representative at random from among
+                                  replicates.  [default: error]" name="preplicatehandling" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="error">error</option>
+ <option value="random">random</option>
+ <option value="drop">drop</option>
+ </param>
+
+ <param label="--p-baseline: A value listed in the state_column metadata column against which all other states should be compared. Toggles calculation of static differences instead of first differences (which are calculated if no value is given for baseline). If a 'baseline' value is provided, sample differences at each state are compared against the baseline state, instead of the previous state. Must be a value listed in the state_column. [optional]" name="pbaseline" optional="True" type="text"/>
+
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[RelativeFrequency] Feature table to optionally use for computing first differences.  [optional]" name="itable" optional="True" type="data"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: first-differences.qza" name="ofirstdifferences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Compute first differences or difference from baseline between sequential states
+--------------------------------------------------------------------------------
+
+Calculates first differences in "metric" between sequential states for
+samples collected from individual subjects sampled repeatedly at two or
+more states. First differences can be performed on a metadata column
+(including artifacts that can be input as metadata) or a feature in a
+feature table. Outputs a data series of first differences for each
+individual subject at each sequential pair of states, labeled by the
+SampleID of the second state (e.g., paired differences between time 0 and
+time 1 would be labeled by the SampleIDs at time 1). This file can be used
+as input to linear mixed effects models or other longitudinal or diversity
+methods to compare changes in first differences across time or among groups
+of subjects. Also supports differences from baseline (or other static
+comparison state) by setting the "baseline" parameter.
+
+Parameters
+----------
+table : FeatureTable[RelativeFrequency], optional
+    Feature table to optionally use for computing first differences.
+metadata : Metadata
+    Sample metadata file containing individual_id_column.
+state_column : Str
+    Metadata column containing state (e.g., Time) across which samples are
+    paired.
+individual_id_column : Str
+    Metadata column containing IDs for individual subjects.
+metric : Str
+    Numerical metadata or artifact column to test.
+replicate_handling : Str % Choices({'drop', 'error', 'random'}), optional
+    Choose how replicate samples are handled. If replicates are detected,
+    "error" causes method to fail; "drop" will discard all replicated
+    samples; "random" chooses one representative at random from among
+    replicates.
+baseline : Float, optional
+    A value listed in the state_column metadata column against which all
+    other states should be compared. Toggles calculation of static
+    differences instead of first differences (which are calculated if no
+    value is given for baseline). If a "baseline" value is provided, sample
+    differences at each state are compared against the baseline state,
+    instead of the previous state. Must be a value listed in the
+    state_column.
+
+Returns
+-------
+first_differences : SampleData[FirstDifferences]
+    Series of first differences.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_first-distances.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_first-distances.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,119 @@
+<?xml version="1.0" ?>
+<tool id="qiime_longitudinal_first-distances" name="qiime longitudinal first-distances" version="2018.4">
+ <description> - Compute first distances or distance from baseline between sequential states</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime longitudinal first-distances --p-state-column="$pstatecolumn" --p-individual-id-column="$pindividualidcolumn"
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --i-distance-matrix=$idistancematrix
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-first-distances=ofirstdistances
+ #if str($preplicatehandling) != 'None':
+  --p-replicate-handling=$preplicatehandling
+ #end if
+
+ #if str($pbaseline):
+  --p-baseline="$pbaseline"
+ #end if
+ ;
+
+ cp ofirstdistances.qza $ofirstdistances;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-distance-matrix: DistanceMatrix Matrix of distances between pairs of samples.  [required]" name="idistancematrix" optional="False" type="data"/>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-state-column: Metadata column containing state (e.g., Time) across which samples are paired. [required]" name="pstatecolumn" optional="False" type="text"/>
+ <param label="--p-individual-id-column: Metadata column containing IDs for individual subjects.  [required]" name="pindividualidcolumn" optional="False" type="text"/>
+
+ <param label="--p-replicate-handling: Choose how replicate samples are handled. If
+                                  replicates are detected, 'error' causes
+                                  method to fail; 'drop' will discard all
+                                  replicated samples; 'random' chooses one
+                                  representative at random from among
+                                  replicates.  [default: error]" name="preplicatehandling" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="error">error</option>
+ <option value="random">random</option>
+ <option value="drop">drop</option>
+ </param>
+
+ <param label="--p-baseline: A value listed in the state_column metadata column against which all other states should be compared. Toggles calculation of static distances instead of first distances (which are calculated if no value is given for baseline). If a 'baseline' value is provided, sample distances at each state are compared against the baseline state, instead of the previous state. Must be a value listed in the state_column.  [optional]" name="pbaseline" optional="True" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: firstdistances.qza" name="ofirstdistances"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Compute first distances or distance from baseline between sequential states
+----------------------------------------------------------------------------
+
+Calculates first distances between sequential states for samples collected
+from individual subjects sampled repeatedly at two or more states. This
+method is similar to the "first differences" method, except that it
+requires a distance matrix as input and calculates first differences as
+distances between successive states. Outputs a data series of first
+distances for each individual subject at each sequential pair of states,
+labeled by the SampleID of the second state (e.g., paired distances between
+time 0 and time 1 would be labeled by the SampleIDs at time 1). This file
+can be used as input to linear mixed effects models or other longitudinal
+or diversity methods to compare changes in first distances across time or
+among groups of subjects. Also supports distance from baseline (or other
+static comparison state) by setting the "baseline" parameter.
+
+Parameters
+----------
+distance_matrix : DistanceMatrix
+    Matrix of distances between pairs of samples.
+metadata : Metadata
+    Sample metadata file containing individual_id_column.
+state_column : Str
+    Metadata column containing state (e.g., Time) across which samples are
+    paired.
+individual_id_column : Str
+    Metadata column containing IDs for individual subjects.
+baseline : Float, optional
+    A value listed in the state_column metadata column against which all
+    other states should be compared. Toggles calculation of static
+    distances instead of first distances (which are calculated if no value
+    is given for baseline). If a "baseline" value is provided, sample
+    distances at each state are compared against the baseline state,
+    instead of the previous state. Must be a value listed in the
+    state_column.
+replicate_handling : Str % Choices({'drop', 'error', 'random'}), optional
+    Choose how replicate samples are handled. If replicates are detected,
+    "error" causes method to fail; "drop" will discard all replicated
+    samples; "random" chooses one representative at random from among
+    replicates.
+
+Returns
+-------
+first_distances : SampleData[FirstDifferences]
+    Series of first distances.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_linear-mixed-effects.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_linear-mixed-effects.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,156 @@
+<?xml version="1.0" ?>
+<tool id="qiime_longitudinal_linear-mixed-effects" name="qiime longitudinal linear-mixed-effects" version="2018.4">
+ <description> - Linear mixed effects modeling</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime longitudinal linear-mixed-effects --p-state-column="$pstatecolumn"
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-individual-id-column="$pindividualidcolumn" --p-metric="$pmetric"
+ #if str($itable) != 'None':
+  --i-table=$itable
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization
+ #if $pci:
+  --p-ci=$pci
+ #end if
+
+ #if str($ppalette) != 'None':
+  --p-palette=$ppalette
+ #end if
+
+ #if str($pgroupcolumns):
+  --p-group-columns="$pgroupcolumns"
+ #end if
+
+ #if $plowess:
+   --p-lowess
+ #else
+   --p-no-lowess
+ #end if
+
+ #if str($prandomeffects):
+  --p-random-effects="$prandomeffects"
+ #end if
+ ;
+
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[RelativeFrequency] Feature table to optionally use for paired comparisons.  [optional]" name="itable" optional="True" type="data"/>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-metric: Dependent variable column name. Must be a column name located in the metadata or feature table files.  [required]" name="pmetric" optional="False" type="text"/>
+
+ <param label="--p-state-column: Metadata column containing state (e.g., Time) across which samples are paired. [required]" name="pstatecolumn" optional="False" type="text"/>
+
+ <param label="--p-individual-id-column: Metadata column containing IDs for individual subjects.  [required]" name="pindividualidcolumn" optional="False" type="text"/>
+ <param label="--p-group-columns: Comma-separated list (without spaces) of metadata columns to use as independent covariates used to determine mean structure of 'metric'.  [optional]" name="pgroupcolumns" optional="True" type="text"/>
+
+ <param label="--p-random-effects: Comma-separated list (without spaces) of metadata columns to use as independent covariates used to determine the variance and covariance structure (random effects) of 'metric'. To add a random slope, the same value passed to 'state_column' should be passed here. A random intercept for each individual is set by default and does not need to be passed here.  [optional]" name="prandomeffects" optional="True" type="text"/>
+
+ <param label="--p-palette: Color palette to use for generating
+                                  boxplots.  [default: Set1]" name="ppalette" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="Accent">Accent</option>
+ <option value="tab20">tab20</option>
+ <option value="Pastel2">Pastel2</option>
+ <option value="plasma">plasma</option>
+ <option value="viridis">viridis</option>
+ <option value="rainbow">rainbow</option>
+ <option value="Pastel1">Pastel1</option>
+ <option value="inferno">inferno</option>
+ <option value="magma">magma</option>
+ <option value="tab20b">tab20b</option>
+ <option value="Set3">Set3</option>
+ <option value="Set2">Set2</option>
+ <option value="Dark2">Dark2</option>
+ <option value="Set1">Set1</option>
+ <option value="tab10">tab10</option>
+ <option value="tab20c">tab20c</option>
+ <option value="terrain">terrain</option>
+ <option value="Paired">Paired</option>
+ </param>
+
+ <param label="--p-lowess: --p-no-lowess      Estimate locally weighted scatterplot smoothing. Note that this will eliminate confidence interval plotting.  [default: False]" name="plowess" checked="False" type="boolean"/>
+ <param label="--p-ci: Size of the confidence interval for the regression estimate.  [default: 95]" name="pci" optional="True" type="integer" value="95"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Linear mixed effects modeling
+------------------------------
+
+Linear mixed effects models evaluate the contribution of exogenous
+covariates "group_columns" and "random_effects" to a single dependent
+variable, "metric". Perform LME and plot line plots of each group column. A
+feature table artifact is required input, though whether "metric" is
+derived from the feature table or metadata is optional.
+
+Parameters
+----------
+table : FeatureTable[RelativeFrequency], optional
+    Feature table to optionally use for paired comparisons.
+metadata : Metadata
+    Sample metadata file containing individual_id_column.
+metric : Str
+    Dependent variable column name. Must be a column name located in the
+    metadata or feature table files.
+state_column : Str
+    Metadata column containing state (e.g., Time) across which samples are
+    paired.
+individual_id_column : Str
+    Metadata column containing IDs for individual subjects.
+group_columns : Str, optional
+    Comma-separated list (without spaces) of metadata columns to use as
+    independent covariates used to determine mean structure of "metric".
+random_effects : Str, optional
+    Comma-separated list (without spaces) of metadata columns to use as
+    independent covariates used to determine the variance and covariance
+    structure (random effects) of "metric". To add a random slope, the same
+    value passed to "state_column" should be passed here. A random
+    intercept for each individual is set by default and does not need to be
+    passed here.
+palette : Str % Choices({'Accent', 'Dark2', 'Paired', 'Pastel1', 'Pastel2', 'Set1', 'Set2', 'Set3', 'inferno', 'magma', 'plasma', 'rainbow', 'tab10', 'tab20', 'tab20b', 'tab20c', 'terrain', 'viridis'}), optional
+    Color palette to use for generating boxplots.
+lowess : Bool, optional
+    Estimate locally weighted scatterplot smoothing. Note that this will
+    eliminate confidence interval plotting.
+ci : Float % Range(0, 100), optional
+    Size of the confidence interval for the regression estimate.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_nmit.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_nmit.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,99 @@
+<?xml version="1.0" ?>
+<tool id="qiime_longitudinal_nmit" name="qiime longitudinal nmit" version="2018.4">
+ <description> - Nonparametric microbial interdependence test</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime longitudinal nmit --i-table=$itable
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-individual-id-column="$pindividualidcolumn"
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if str($pdistmethod) != 'None':
+  --p-dist-method=$pdistmethod
+ #end if
+
+ #if str($pcorrmethod) != 'None':
+  --p-corr-method=$pcorrmethod
+ #end if
+  --o-distance-matrix=odistancematrix;
+
+ cp odistancematrix.qza $odistancematrix;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[RelativeFrequency] Feature table to use for microbial interdependence test.  [required]" name="itable" optional="False" type="data"/>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-individual-id-column: Metadata column containing IDs for individual subjects.  [required]" name="pindividualidcolumn" optional="False" type="text"/>
+
+ <param label="--p-corr-method: The temporal correlation test to be applied.
+                                  [default: kendall]" name="pcorrmethod" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="kendall">kendall</option>
+ <option value="pearson">pearson</option>
+ <option value="spearman">spearman</option>
+ </param>
+
+ <param label="--p-dist-method: Temporal distance method, see
+                                  numpy.linalg.norm for details.  [default:
+                                  fro]" name="pdistmethod" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="fro">fro</option>
+ <option value="nuc">nuc</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: distance-matrix.qza" name="odistancematrix"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Nonparametric microbial interdependence test
+---------------------------------------------
+
+Perform nonparametric microbial interdependence test to determine
+longitudinal sample similarity as a function of temporal microbial
+composition. For more details and citation, please see
+doi.org/10.1002/gepi.22065
+
+Parameters
+----------
+table : FeatureTable[RelativeFrequency]
+    Feature table to use for microbial interdependence test.
+metadata : Metadata
+    Sample metadata file containing individual_id_column.
+individual_id_column : Str
+    Metadata column containing IDs for individual subjects.
+corr_method : Str % Choices({'kendall', 'pearson', 'spearman'}), optional
+    The temporal correlation test to be applied.
+dist_method : Str % Choices({'fro', 'nuc'}), optional
+    Temporal distance method, see numpy.linalg.norm for details.
+
+Returns
+-------
+distance_matrix : DistanceMatrix
+    The resulting distance matrix.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_pairwise-differences.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_pairwise-differences.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,164 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_longitudinal_pairwise-differences" name="qiime longitudinal pairwise-differences" version="2018.4">\n+\t<description> - Paired difference testing and boxplots</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t<![CDATA[\n+\tqiime longitudinal pairwise-differences --p-state-column="$pstatecolumn"\n+\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \' --m-metadata-file=\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-group-column="$pgroupcolumn" --p-individual-id-column="$pindividualidcolumn" --p-state-1="$pstate1" --p-state-2="$pstate2" --p-metric="$pmetric"\n+\t#if str($itable) != \'None\':\n+\t --i-table=$itable\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\n+\t#if str($preplicatehandling) != \'None\':\n+\t --p-replicate-handling=$preplicatehandling\n+\t#end if\n+\n+\t#if $pparametric:\n+\t  --p-parametric\n+\t#else\n+\t\t--p-no-parametric\n+\t#end if\n+\n+\t#if str($ppalette) != \'None\':\n+\t --p-palette=$ppalette\n+\t#end if\n+\t --o-visualization=ovisualization;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[RelativeFrequency] Feature table to optionally use for paired comparisons.  [optional]" name="itable" optional="True" type="data"/>\n+\n+\t\t<repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\n+\t\t<param label="--p-group-column: Metadata column on which to separate groups for comparison  [required]" name="pgroupcolumn" optional="False" type="text"/>\n+\t\t<param label="--p-metric: Numerical metadata or artifact column to test.  [required]" name="pmetric" optional="False" type="text"/>\n+\t\t<param label="--p-state-column: Metadata column containing state (e.g., Time) across which samples are paired. [required]" name="pstatecolumn" optional="False" type="text"/>\n+\n+\t\t<param label="--p-state-1: Baseline state column value.  [required]" name="pstate1" optional="False" type="text"/>\n+\t\t<param label="--p-state-2: State column value to pair with baseline. [required]" name="pstate2" optional="False" type="text"/>\n+\n+\t\t<param label="--p-individual-id-column: Metadata column containing subject IDs to use for pairing samples. WARNING: if replicates exist for an individual ID at either state_1 or state_2, that subject will be dropped and reported in standard output by default. Set replicate_handling=\'random\' to instead randomly select one member. [required]" name="pindividualidcolumn" optional="False" type="text"/>\n+\t\t<param label="--p-parametric: --p-no-parametric Perform parametric (ANOVA and t-tests) or non-parametric (Kruskal-Wallis, Wilcoxon, and Mann-Whitney U tests) statistical tests. [default: False]" name="pparametric" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-palette: Color palette to use for generating\n+                                  boxplots.  [default: Set1]" name="ppalette" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="Accent">Accent</option>\n+\t\t\t<option value="tab20">tab20</option>\n+\t\t\t<option value="Pastel2">Pastel2</option>\n+\t\t\t<option value="plasma">plasma</opti'..b'b20b</option>\n+\t\t\t<option value="Set3">Set3</option>\n+\t\t\t<option value="Set2">Set2</option>\n+\t\t\t<option value="Dark2">Dark2</option>\n+\t\t\t<option value="Set1">Set1</option>\n+\t\t\t<option value="tab10">tab10</option>\n+\t\t\t<option value="tab20c">tab20c</option>\n+\t\t\t<option value="terrain">terrain</option>\n+\t\t\t<option value="Paired">Paired</option>\n+\t\t</param>\n+\n+\t\t<param label="--p-replicate-handling: Choose how replicate samples are handled. If\n+                                  replicates are detected, \'error\' causes\n+                                  method to fail; \'drop\' will discard all\n+                                  replicated samples; \'random\' chooses one\n+                                  representative at random from among\n+                                  replicates.  [default: error]" name="preplicatehandling" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="error">error</option>\n+\t\t\t<option value="random">random</option>\n+\t\t\t<option value="drop">drop</option>\n+\t\t</param>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Paired difference testing and boxplots\n+---------------------------------------\n+\n+Performs paired difference testing between samples from each subject.\n+Sample pairs may represent a typical intervention study, e.g., samples\n+collected pre- and post-treatment; paired samples from two different\n+timepoints (e.g., in a longitudinal study design), or identical samples\n+receiving different two different treatments. This action tests whether the\n+change in a numeric metadata value "metric" differs from zero and differs\n+between groups (e.g., groups of subjects receiving different treatments),\n+and produces boxplots of paired difference distributions for each group. A\n+feature table artifact is required input, though whether "metric" is\n+derived from the feature table or metadata is optional.\n+\n+Parameters\n+----------\n+table : FeatureTable[RelativeFrequency], optional\n+    Feature table to optionally use for paired comparisons.\n+metadata : Metadata\n+    Sample metadata file containing individual_id_column.\n+group_column : Str\n+    Metadata column on which to separate groups for comparison\n+metric : Str\n+    Numerical metadata or artifact column to test.\n+state_column : Str\n+    Metadata column containing state (e.g., Time) across which samples are\n+    paired.\n+state_1 : Str\n+    Baseline state column value.\n+state_2 : Str\n+    State column value to pair with baseline.\n+individual_id_column : Str\n+    Metadata column containing subject IDs to use for pairing samples.\n+    WARNING: if replicates exist for an individual ID at either state_1 or\n+    state_2, that subject will be dropped and reported in standard output\n+    by default. Set replicate_handling="random" to instead randomly select\n+    one member.\n+parametric : Bool, optional\n+    Perform parametric (ANOVA and t-tests) or non-parametric (Kruskal-\n+    Wallis, Wilcoxon, and Mann-Whitney U tests) statistical tests.\n+palette : Str % Choices({\'Accent\', \'Dark2\', \'Paired\', \'Pastel1\', \'Pastel2\', \'Set1\', \'Set2\', \'Set3\', \'inferno\', \'magma\', \'plasma\', \'rainbow\', \'tab10\', \'tab20\', \'tab20b\', \'tab20c\', \'terrain\', \'viridis\'}), optional\n+    Color palette to use for generating boxplots.\n+replicate_handling : Str % Choices({\'drop\', \'error\', \'random\'}), optional\n+    Choose how replicate samples are handled. If replicates are detected,\n+    "error" causes method to fail; "drop" will discard all replicated\n+    samples; "random" chooses one representative at random from among\n+    replicates.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_pairwise-distances.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_pairwise-distances.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,156 @@
+<?xml version="1.0" ?>
+<tool id="qiime_longitudinal_pairwise-distances" name="qiime longitudinal pairwise-distances" version="2018.4">
+ <description> - Paired pairwise distance testing and boxplots</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime longitudinal pairwise-distances --p-state-column="$pstatecolumn"
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ',' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-group-column="$pgroupcolumn" --p-state-2="$pstate2" --p-individual-id-column="$pindividualidcolumn" --p-state-1="$pstate1" --i-distance-matrix=$idistancematrix
+ #if str($preplicatehandling) != 'None':
+  --p-replicate-handling=$preplicatehandling
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization
+
+ #if $pparametric:
+   --p-parametric
+ #else
+ --p-no-parametric
+ #end if
+
+ #if str($ppalette) != 'None':
+  --p-palette=$ppalette
+ #end if
+ ;
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-distance-matrix: DistanceMatrix Matrix of distances between pairs of samples.  [required]" name="idistancematrix" optional="False" type="data"/>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-group-column: Metadata column on which to separate groups for comparison  [required]" name="pgroupcolumn" optional="False" type="text"/>
+ <param label="--p-state-column: Metadata column containing state (e.g., Time) across which samples are paired. [required]" name="pstatecolumn" optional="False" type="text"/>
+
+ <param label="--p-state-1: Baseline state column value.  [required]" name="pstate1" optional="False" type="text"/>
+ <param label="--p-state-2: State column value to pair with baseline. [required]" name="pstate2" optional="False" type="text"/>
+
+ <param label="--p-individual-id-column: Metadata column containing subject IDs to use for pairing samples. WARNING: if replicates exist for an individual ID at either state_1 or state_2, that subject will be dropped and reported in standard output by default. Set replicate_handling='random' to instead randomly select one member. [required]" name="pindividualidcolumn" optional="False" type="text"/>
+ <param label="--p-parametric: --p-no-parametric Perform parametric (ANOVA and t-tests) or non-parametric (Kruskal-Wallis, Wilcoxon, and Mann-Whitney U tests) statistical tests. [default: False]" name="pparametric" checked="False" type="boolean"/>
+
+ <param label="--p-palette: Color palette to use for generating
+                                  boxplots.  [default: Set1]" name="ppalette" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="Accent">Accent</option>
+ <option value="tab20">tab20</option>
+ <option value="Pastel2">Pastel2</option>
+ <option value="plasma">plasma</option>
+ <option value="viridis">viridis</option>
+ <option value="rainbow">rainbow</option>
+ <option value="Pastel1">Pastel1</option>
+ <option value="inferno">inferno</option>
+ <option value="magma">magma</option>
+ <option value="tab20b">tab20b</option>
+ <option value="Set3">Set3</option>
+ <option value="Set2">Set2</option>
+ <option value="Dark2">Dark2</option>
+ <option value="Set1">Set1</option>
+ <option value="tab10">tab10</option>
+ <option value="tab20c">tab20c</option>
+ <option value="terrain">terrain</option>
+ <option value="Paired">Paired</option>
+ </param>
+
+ <param label="--p-replicate-handling: Choose how replicate samples are handled. If
+                                  replicates are detected, 'error' causes
+                                  method to fail; 'drop' will discard all
+                                  replicated samples; 'random' chooses one
+                                  representative at random from among
+                                  replicates.  [default: error]" name="preplicatehandling" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="error">error</option>
+ <option value="random">random</option>
+ <option value="drop">drop</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Paired pairwise distance testing and boxplots
+----------------------------------------------
+
+Performs pairwise distance testing between sample pairs from each subject.
+Sample pairs may represent a typical intervention study, e.g., samples
+collected pre- and post-treatment; paired samples from two different
+timepoints (e.g., in a longitudinal study design), or identical samples
+receiving different two different treatments. This action tests whether the
+pairwise distance between each subject pair differs between groups (e.g.,
+groups of subjects receiving different treatments) and produces boxplots of
+paired distance distributions for each group.
+
+Parameters
+----------
+distance_matrix : DistanceMatrix
+    Matrix of distances between pairs of samples.
+metadata : Metadata
+    Sample metadata file containing individual_id_column.
+group_column : Str
+    Metadata column on which to separate groups for comparison
+state_column : Str
+    Metadata column containing state (e.g., Time) across which samples are
+    paired.
+state_1 : Str
+    Baseline state column value.
+state_2 : Str
+    State column value to pair with baseline.
+individual_id_column : Str
+    Metadata column containing subject IDs to use for pairing samples.
+    WARNING: if replicates exist for an individual ID at either state_1 or
+    state_2, that subject will be dropped and reported in standard output
+    by default. Set replicate_handling="random" to instead randomly select
+    one member.
+parametric : Bool, optional
+    Perform parametric (ANOVA and t-tests) or non-parametric (Kruskal-
+    Wallis, Wilcoxon, and Mann-Whitney U tests) statistical tests.
+palette : Str % Choices({'Accent', 'Dark2', 'Paired', 'Pastel1', 'Pastel2', 'Set1', 'Set2', 'Set3', 'inferno', 'magma', 'plasma', 'rainbow', 'tab10', 'tab20', 'tab20b', 'tab20c', 'terrain', 'viridis'}), optional
+    Color palette to use for generating boxplots.
+replicate_handling : Str % Choices({'drop', 'error', 'random'}), optional
+    Choose how replicate samples are handled. If replicates are detected,
+    "error" causes method to fail; "drop" will discard all replicated
+    samples; "random" chooses one representative at random from among
+    replicates.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_longitudinal_volatility.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_longitudinal_volatility.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,115 @@
+<?xml version="1.0" ?>
+<tool id="qiime_longitudinal_volatility" name="qiime longitudinal volatility" version="2018.4">
+ <description> - Volatility analysis</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime longitudinal volatility --p-state-column="$pstatecolumn"
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+  --p-default-group-column="$pdefaultgroupcolumn"
+  --p-individual-id-column="$pindividualidcolumn"
+   --p-default-metric="$pdefaultmetric"
+ #if str($itable) != 'None':
+  --i-table=$itable
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-visualization=ovisualization
+
+ #if str($pyscale) != 'None':
+  --p-yscale=$pyscale
+ #end if
+ ;
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. Sample metadata file containing individual_id_column.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-state-column: Metadata column containing state (e.g., Time) across which samples are paired. [required]" name="pstatecolumn" optional="False" type="text"/>
+
+ <param label="--p-individual-id-column: Metadata column containing IDs for individual subjects.  [required]" name="pindividualidcolumn" optional="False" type="text"/>
+
+ <param label="--p-default-group-column: The default metadata column on which to
+                                  separate groups for comparison (all
+                                  categorical metadata columns will be
+                                  available in the visualization).  [optional]" name="pdefaultgroupcolumn" optional="False" type="text"/>
+
+ <param label="--p-default-metric: Numeric metadata or artifact column to test
+                                  by default (all numeric metadata columns
+                                  will be available in the visualization).
+                                  [optional]" name="pdefaultmetric" optional="False" type="text"/>
+
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[RelativeFrequency] Feature table to optionally use for paired comparisons.  [optional]" name="itable" optional="True" type="data"/>
+
+ <param label="--p-yscale: y-axis scaling strategy to apply.  [default:
+                                  linear]" name="pyscale" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="pow">log</option>
+ <option value="linear">logit</option>
+ <option value="sqrt">symlog</option>
+ <option value="log">linear</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Volatility analysis
+--------------------
+
+Plot an interactive control chart of a single dependent variable, "metric",
+across multiple groups contained in sample metadata column "group_column".
+
+Parameters
+----------
+table : FeatureTable[RelativeFrequency], optional
+    Feature table to optionally use for paired comparisons.
+metadata : Metadata
+    Sample metadata file containing individual_id_column.
+state_column : Str
+    Metadata column containing state (e.g., Time) across which samples are
+    paired.
+individual_id_column : Str
+    Metadata column containing IDs for individual subjects.
+default_group_column : Str, optional
+    The default metadata column on which to separate groups for comparison
+    (all categorical metadata columns will be available in the
+    visualization).
+default_metric : Str, optional
+    Numeric metadata or artifact column to test by default (all numeric
+    metadata columns will be available in the visualization).
+yscale : Str % Choices({'linear', 'log', 'pow', 'sqrt'}), optional
+    y-axis scaling strategy to apply.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_metadata_distance-matrix.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_metadata_distance-matrix.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,63 @@
+<?xml version="1.0" ?>
+<tool id="qiime_metadata_distance-matrix" name="qiime metadata distance-matrix" version="2018.4">
+ <description> - Create a distance matrix from a numeric Metadata column</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime metadata distance-matrix --m-metadata-column="$mmetadatacolumn"
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-distance-matrix=odistancematrix;
+ cp odistancematrix.qza $odistancematrix;
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+ <param label="--m-metadata-column: MetadataColumn[Numeric] Column from metadata file or artifact viewable as metadata. Numeric metadata column to compute pairwise Euclidean distances from  [required]" name="mmetadatacolumn" optional="False" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: distance-matrix.qza" name="odistancematrix"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Create a distance matrix from a numeric Metadata column
+--------------------------------------------------------
+
+Create a distance matrix from a numeric metadata column. The Euclidean
+distance is computed between each pair of samples or features in the
+column.  Tip: the distance matrix produced by this method can be used as
+input to the Mantel test available in `q2-diversity`.
+
+Parameters
+----------
+metadata : MetadataColumn[Numeric]
+    Numeric metadata column to compute pairwise Euclidean distances from
+
+Returns
+-------
+distance_matrix : DistanceMatrix
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_metadata_tabulate.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_metadata_tabulate.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,70 @@
+<?xml version="1.0" ?>
+<tool id="qiime_metadata_tabulate" name="qiime metadata tabulate" version="2018.4">
+ <description> - Interactively explore Metadata in an HTML table</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime metadata tabulate
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --m-input-file=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-input-file=$list_dict_to_string($input_files_minputfile)
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $ppagesize:
+  --p-page-size=$ppagesize
+ #end if
+  --o-visualization=ovisualization;
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <repeat name="input_files_minputfile" optional="False" title="--m-input-file">
+ <param label="--m-input-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The metadata to tabulate.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--p-page-size: The maximum number of Metadata records to display per page  [default: 100]" name="ppagesize" optional="True" type="integer" value="100"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Interactively explore Metadata in an HTML table
+------------------------------------------------
+
+Generate a tabular view of Metadata. The output visualization supports
+interactive filtering, sorting, and exporting to common file formats.
+
+Parameters
+----------
+input : Metadata
+    The metadata to tabulate.
+page_size : Int, optional
+    The maximum number of Metadata records to display per page
+
+Returns
+-------
+visualization : Visualization
+ \
+    ]]>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_phylogeny_fasttree.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_phylogeny_fasttree.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,52 @@
+<?xml version="1.0" ?>
+<tool id="qiime_phylogeny_fasttree" name="qiime phylogeny fasttree" version="2018.4">
+ <description> - Construct a phylogenetic tree with FastTree.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime phylogeny fasttree --i-alignment=$ialignment
+ #set $pnthreads = '${GALAXY_SLOTS:-4}'
+
+ #if str($pnthreads):
+  --p-n-threads="$pnthreads"
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-tree=otree;
+ cp otree.qza $otree;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-alignment: FeatureData[AlignedSequence] Aligned sequences to be used for phylogenetic reconstruction.  [required]" name="ialignment" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: tree.qza" name="otree"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Construct a phylogenetic tree with FastTree.
+---------------------------------------------
+
+Construct a phylogenetic tree with FastTree.
+
+Parameters
+----------
+alignment : FeatureData[AlignedSequence]
+    Aligned sequences to be used for phylogenetic reconstruction.
+
+Returns
+-------
+tree : Phylogeny[Unrooted]
+    The resulting phylogenetic tree.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_phylogeny_filter-table.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_phylogeny_filter-table.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,53 @@
+<?xml version="1.0" ?>
+<tool id="qiime_phylogeny_filter-table" name="qiime phylogeny filter-table" version="2018.4">
+ <description> - Remove features from table if they're not present in tree.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime phylogeny filter-table --i-table=$itable --i-tree=$itree
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-filtered-table=ofilteredtable;
+
+ cp ofilteredtable.qza $ofilteredtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table that features should be filtered from.  [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-tree: Phylogeny[Rooted | Unrooted] Tree where tip identifiers are the feature identifiers that should be retained in the table.  [required]" name="itree" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-table.qza" name="ofilteredtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Remove features from table if they're not present in tree.
+-----------------------------------------------------------
+
+Remove features from a feature table if their identifiers are not tip
+identifiers in tree.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    Feature table that features should be filtered from.
+tree : Phylogeny[Rooted | Unrooted]
+    Tree where tip identifiers are the feature identifiers that should be
+    retained in the table.
+
+Returns
+-------
+filtered_table : FeatureTable[Frequency]
+    The resulting feature table.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_phylogeny_midpoint-root.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_phylogeny_midpoint-root.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,48 @@
+<?xml version="1.0" ?>
+<tool id="qiime_phylogeny_midpoint-root" name="qiime phylogeny midpoint-root" version="2018.4">
+ <description> - Midpoint root an unrooted phylogenetic tree.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime phylogeny midpoint-root --i-tree=$itree
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-rooted-tree=orootedtree;
+
+ cp orootedtree.qza $orootedtree;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-tree: Phylogeny[Unrooted] The phylogenetic tree to be rooted. [required]" name="itree" optional="False" type="data"/>
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: rooted-tree.qza" name="orootedtree"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Midpoint root an unrooted phylogenetic tree.
+---------------------------------------------
+
+Midpoint root an unrooted phylogenetic tree.
+
+Parameters
+----------
+tree : Phylogeny[Unrooted]
+    The phylogenetic tree to be rooted.
+
+Returns
+-------
+rooted_tree : Phylogeny[Rooted]
+    The rooted phylogenetic tree.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_quality-control_evaluate-composition.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_quality-control_evaluate-composition.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,209 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_quality-control_evaluate-composition" name="qiime quality-control evaluate-composition" version="2018.4">\n+\t<description> - Evaluate expected vs. observed taxonomic composition of samples</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t<![CDATA[\n+\tqiime quality-control evaluate-composition --i-expected-features=$iexpectedfeatures --i-observed-features=$iobservedfeatures\n+\n+\t#if $input_files_mmetadatafile:\n+\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \' --m-metadata-file=\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\n+\t#if $pplotrvalue:\n+\t  --p-plot-r-value\n+\t#else\n+\t\t--p-no-plot-r-value\n+\t#end if\n+\n+\t#if str($mmetadatacolumn):\n+\t --m-metadata-column="$mmetadatacolumn"\n+\t#end if\n+\n+\t#if $pplotrsquared:\n+\t  --p-plot-r-squared\n+\t#else\n+\t\t--p-no-plot-r-squared\n+\t#end if\n+\n+\t#if $pdepth:\n+\t --p-depth=$pdepth\n+\t#end if\n+\n+\t#if $pplottar:\n+\t  --p-plot-tar\n+\t#else\n+\t\t--p-no-plot-tar\n+\t#end if\n+\n+\t#if $pplotobservedfeaturesratio:\n+\t  --p-plot-observed-features-ratio\n+\t#else\n+\t\t--p-no-plot-observed-features-ratio\n+\t#end if\n+\n+\t#if str($ppalette) != \'None\':\n+\t --p-palette=$ppalette\n+\t#end if\n+\n+\t#if $pplottdr:\n+\t  --p-plot-tdr\n+\t#else\n+\t\t--p-no-plot-tdr\n+\t#end if\n+\t --o-visualization=ovisualization\n+\t#if $pplotobservedfeatures:\n+\t  --p-plot-observed-features\n+\t#else\n+\t\t--p-no-plot-observed-features\n+\t#end if\n+\t;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-expected-features: FeatureTable[RelativeFrequency] Expected feature compositions  [required]" name="iexpectedfeatures" optional="False" type="data"/>\n+\t\t<param format="qza,no_unzip.zip" label="--i-observed-features: FeatureTable[RelativeFrequency] Observed feature compositions  [required]" name="iobservedfeatures" optional="False" type="data"/>\n+\n+\t\t<param label="--p-depth: Maximum depth of semicolon-delimited taxonomic ranks to test (e.g., 1 = root, 7 = species for the greengenes reference sequence database).  [default: 7]" name="pdepth" optional="True" type="integer" value="7"/>\n+\n+\t\t<param label="--p-palette: Color palette to utilize for plotting.[default: Set1]" name="ppalette" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="Accent">Accent</option>\n+\t\t\t<option value="tab20">tab20</option>\n+\t\t\t<option value="Pastel2">Pastel2</option>\n+\t\t\t<option value="plasma">plasma</option>\n+\t\t\t<option value="viridis">viridis</option>\n+\t\t\t<option value="rainbow">rainbow</option>\n+\t\t\t<option value="Pastel1">Pastel1</option>\n+\t\t\t<option value="inferno">inferno</option>\n+\t\t\t<option value="magma">magma</option>\n+\t\t\t<option value="tab20b">tab20b</option>\n+\t\t\t<option value="Set3">Set3</option>\n+\t\t\t<option value="Set2">Set2</option>\n+\t\t\t<option value="Dark2">Dark2</option>\n+\t\t\t<option value="Set1">Set1</option>\n+\t\t\t<option value="tab10">tab10</option>\n+\t\t\t<option value="tab20c">tab20c</option>\n+\t\t\t<option value="terrain">terrain</option>\n+\t\t\t<option value="Paired">Paired</option>\n+\t\t</param>\n+\n+\n+\t\t<param label="--p-plot-tar / --p-no-plot-tar  Plot taxon accuracy rate (TAR) on score\n+                                  plot. TAR is the number of true positive\n+                                  features divided by the total number of\n+                                  observed features (TAR = true positives \n+         '..b'lot.  [default: True]" name="pplotobservedfeaturesratio" checked="True" type="boolean"/>\n+\n+\t\t<repeat name="input_files_mmetadatafile" optional="True" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [optional]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\t\t<param label="--m-metadata-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. Optional sample metadata that maps observed_features sample IDs to expected_features sample IDs. [optional]" name="mmetadatacolumn" optional="True" type="text"/>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Evaluate expected vs. observed taxonomic composition of samples\n+----------------------------------------------------------------\n+\n+This visualizer compares the feature composition of pairs of observed and\n+expected samples containing the same sample ID in two separate feature\n+tables. Typically, feature composition will consist of taxonomy\n+classifications or other semicolon-delimited feature annotations. Taxon\n+accuracy rate, taxon detection rate, and linear regression scores between\n+expected and observed observations are calculated at each semicolon-\n+delimited rank, and plots of per-level accuracy and observation\n+correlations are plotted. A histogram of distance between false positive\n+observations and the nearest expected feature is also generated, where\n+distance equals the number of rank differences between the observed feature\n+and the nearest common lineage in the expected feature. This visualizer is\n+most suitable for testing per-run data quality on sequencing runs that\n+contain mock communities or other samples with known composition. Also\n+suitable for sanity checks of bioinformatics pipeline performance.\n+\n+Parameters\n+----------\n+expected_features : FeatureTable[RelativeFrequency]\n+    Expected feature compositions\n+observed_features : FeatureTable[RelativeFrequency]\n+    Observed feature compositions\n+depth : Int, optional\n+    Maximum depth of semicolon-delimited taxonomic ranks to test (e.g., 1 =\n+    root, 7 = species for the greengenes reference sequence database).\n+palette : Str % Choices({\'Accent\', \'Dark2\', \'Paired\', \'Pastel1\', \'Pastel2\', \'Set1\', \'Set2\', \'Set3\', \'inferno\', \'magma\', \'plasma\', \'rainbow\', \'tab10\', \'tab20\', \'tab20b\', \'tab20c\', \'terrain\', \'viridis\'}), optional\n+    Color palette to utilize for plotting.\n+plot_tar : Bool, optional\n+    Plot taxon accuracy rate (TAR) on score plot. TAR is the number of true\n+    positive features divided by the total number of observed features (TAR\n+    = true positives / (true positives + false positives)).\n+plot_tdr : Bool, optional\n+    Plot taxon detection rate (TDR) on score plot. TDR is the number of\n+    true positive features divided by the total number of expected features\n+    (TDR = true positives / (true positives + false negatives)).\n+plot_r_value : Bool, optional\n+    Plot expected vs. observed linear regression r value on score plot.\n+plot_r_squared : Bool, optional\n+    Plot expected vs. observed linear regression r-squared value on score\n+    plot.\n+plot_observed_features : Bool, optional\n+    Plot observed features count on score plot.\n+plot_observed_features_ratio : Bool, optional\n+    Plot ratio of observed:expected features on score plot.\n+metadata : MetadataColumn[Categorical], optional\n+    Optional sample metadata that maps observed_features sample IDs to\n+    expected_features sample IDs.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_quality-control_evaluate-seqs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_quality-control_evaluate-seqs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,76 @@
+<?xml version="1.0" ?>
+<tool id="qiime_quality-control_evaluate-seqs" name="qiime quality-control evaluate-seqs" version="2018.4">
+ <description> - Compare query (observed) vs. reference (expected) sequences.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime quality-control evaluate-seqs --i-reference-sequences=$ireferencesequences --i-query-sequences=$iquerysequences
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+
+ #if $pshowalignments:
+ --p-show-alignments
+ #else
+ --p-no-show-alignments
+ #end if
+
+ #end if
+  --o-visualization=ovisualization;
+
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-query-sequences: FeatureData[Sequence] Sequences to test for exclusion  [required]" name="iquerysequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-sequences: FeatureData[Sequence] Reference sequences to align against feature sequences  [required]" name="ireferencesequences" optional="False" type="data"/>
+
+ <param label="  --p-show-alignments / --p-no-show-alignments
+                                  Option to plot pairwise alignments of query
+                                  sequences and their top hits.  [default:
+                                  False]" name="pshowalignments" checked="False" type="boolean"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Compare query (observed) vs. reference (expected) sequences.
+-------------------------------------------------------------
+
+This action aligns a set of query (e.g., observed) sequences against a set
+of reference (e.g., expected) sequences to evaluate the quality of
+alignment. The intended use is to align observed sequences against expected
+sequences (e.g., from a mock community) to determine the frequency of
+mismatches between observed sequences and the most similar expected
+sequences, e.g., as a measure of sequencing/method error. However, any
+sequences may be provided as input to generate a report on pairwise
+alignment quality against a set of reference sequences.
+
+Parameters
+----------
+query_sequences : FeatureData[Sequence]
+    Sequences to test for exclusion
+reference_sequences : FeatureData[Sequence]
+    Reference sequences to align against feature sequences
+show_alignments : Bool, optional
+    Option to plot pairwise alignments of query sequences and their top
+    hits.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_quality-control_exclude-seqs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_quality-control_exclude-seqs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,110 @@
+<?xml version="1.0" ?>
+<tool id="qiime_quality-control_exclude-seqs" name="qiime quality-control exclude-seqs" version="2018.4">
+ <description> - Exclude sequences by alignment</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+    <![CDATA[
+    qiime quality-control exclude-seqs --i-reference-sequences=$ireferencesequences --i-query-sequences=$iquerysequences
+#if str($pevalue):
+ --p-evalue="$pevalue"
+#end if
+
+#if $ppercidentity:
+ --p-perc-identity=$ppercidentity
+#end if
+
+#if $ppercqueryaligned:
+ --p-perc-query-aligned=$ppercqueryaligned
+#end if
+
+#if str($cmdconfig) != 'None':
+ --cmd-config=$cmdconfig
+#end if
+ --o-sequence-hits=osequencehits --o-sequence-misses=osequencemisses
+#if str($pmethod) != 'None':
+ --p-method=$pmethod
+#end if
+
+#set $pthreads = '${GALAXY_SLOTS:-4}'
+
+#if str($pthreads):
+ --p-threads="$pthreads"
+#end if
+;
+cp osequencehits.qza $osequencehits;
+cp osequencemisses.qza $osequencemisses;
+  ]]>
+  </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-query-sequences: FeatureData[Sequence] Sequences to test for exclusion  [required]" name="iquerysequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-sequences: FeatureData[Sequence] Reference sequences to align against feature sequences  [required]" name="ireferencesequences" optional="False" type="data"/>
+
+ <param label="--p-method: Alignment method to use for matching feature
+                                  sequences against reference sequences
+                                  [default: blast]" name="pmethod" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="vsearch">vsearch</option>
+ <option value="blast">blast</option>
+ <option value="blastn-short">blastn-short</option>
+ </param>
+
+ <param label="--p-perc-identity: Reject match if percent identity to reference is lower. Must be in range [0.0, 1.0]  [default: 0.97]" name="ppercidentity" optional="True" type="float" value="0.97"/>
+ <param label="--p-evalue: BLAST expectation (E) value threshold for saving hits. Reject if E value is higher than threshold. This threshold is disabled by default.  [optional]" name="pevalue" optional="True" type="text"/>
+ <param label="--p-perc-query-aligned: Percent of query sequence that must align to reference in order to be accepted as a hit. [default: 0.97]" name="ppercqueryaligned" optional="True" type="float" value="0.97"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: sequence-hits.qza" name="osequencehits"/>
+ <data format="qza" label="${tool.name} on ${on_string}: sequence-misses.qza" name="osequencemisses"/>
+ </outputs>
+ <help><![CDATA[
+Exclude sequences by alignment
+-------------------------------
+
+This method aligns feature sequences to a set of reference sequences to
+identify sequences that hit/miss the reference within a specified
+perc_identity, evalue, and perc_query_aligned. This method could be used to
+define a positive filter, e.g., extract only feature sequences that align
+to a certain clade of bacteria; or to define a negative filter, e.g.,
+identify sequences that align to contaminant or human DNA sequences that
+should be excluded from subsequent analyses. Note that filtering is
+performed based on the perc_identity, perc_query_aligned, and evalue
+thresholds (the latter only if method==BLAST and an evalue is set). Set
+perc_identity==0 and/or perc_query_aligned==0 to disable these filtering
+thresholds as necessary.
+
+Parameters
+----------
+query_sequences : FeatureData[Sequence]
+    Sequences to test for exclusion
+reference_sequences : FeatureData[Sequence]
+    Reference sequences to align against feature sequences
+method : Str % Choices({'blast', 'blastn-short', 'vsearch'}), optional
+    Alignment method to use for matching feature sequences against
+    reference sequences
+perc_identity : Float % Range(0.0, 1.0, inclusive_end=True), optional
+    Reject match if percent identity to reference is lower. Must be in
+    range [0.0, 1.0]
+evalue : Float, optional
+    BLAST expectation (E) value threshold for saving hits. Reject if E
+    value is higher than threshold. This threshold is disabled by default.
+perc_query_aligned : Float, optional
+    Percent of query sequence that must align to reference in order to be
+    accepted as a hit.
+
+Returns
+-------
+sequence_hits : FeatureData[Sequence]
+    Subset of feature sequences that align to reference sequences
+sequence_misses : FeatureData[Sequence]
+    Subset of feature sequences that do not align to reference sequences
+      ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_quality-filter_q-score-joined.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_quality-filter_q-score-joined.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,88 @@
+<?xml version="1.0" ?>
+<tool id="qiime_quality-filter_q-score-joined" name="qiime quality-filter q-score-joined" version="2018.4">
+ <description> - Quality filter based on joined sequence quality scores.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime quality-filter q-score-joined --i-demux=$idemux
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-filter-stats=ofilterstats --o-filtered-sequences=ofilteredsequences
+ #if $pqualitywindow:
+  --p-quality-window=$pqualitywindow
+ #end if
+
+ #if $pmaxambiguous:
+  --p-max-ambiguous=$pmaxambiguous
+ #end if
+
+ #if $pminlengthfraction:
+  --p-min-length-fraction=$pminlengthfraction
+ #end if
+
+ #if $pminquality:
+  --p-min-quality=$pminquality
+ #end if
+ ;
+ cp ofilterstats.qza $ofilterstats;
+ cp ofilteredsequences.qza $ofilteredsequences
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demux: SampleData[JoinedSequencesWithQuality] The demultiplexed sequence data to be quality filtered.  [required]" name="idemux" optional="False" type="data"/>
+
+ <param label="--p-min-quality: The minimum acceptable PHRED score. All PHRED scores less that this value are considered to be low PHRED scores. [default: 4]" name="pminquality" optional="True" type="integer" value="4"/>
+ <param label="--p-quality-window: The maximum number of low PHRED scores that can be observed in direct succession before truncating a sequence read.  [default: 3]" name="pqualitywindow" optional="True" type="integer" value="3"/>
+
+ <param label="--p-min-length-fraction: The minimum length that a sequence read can be following truncation and still be retained. This length should be provided as a fraction of the input sequence length. [default: 0.75]" name="pminlengthfraction" optional="True" type="float" value="0.75"/>
+ <param label="--p-max-ambiguous: The maximum number of ambiguous (i.e., N) base calls. This is applied after trimming sequences based on `min_length_fraction`. [default: 0]" name="pmaxambiguous" optional="True" type="integer" value="0"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filter-stats.qza" name="ofilterstats"/>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-sequences.qza" name="ofilteredsequences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Quality filter based on joined sequence quality scores.
+--------------------------------------------------------
+
+This method filters joined sequence based on quality scores and the
+presence of ambiguous base calls.
+
+Parameters
+----------
+demux : SampleData[JoinedSequencesWithQuality]
+    The demultiplexed sequence data to be quality filtered.
+min_quality : Int, optional
+    The minimum acceptable PHRED score. All PHRED scores less that this
+    value are considered to be low PHRED scores.
+quality_window : Int, optional
+    The maximum number of low PHRED scores that can be observed in direct
+    succession before truncating a sequence read.
+min_length_fraction : Float, optional
+    The minimum length that a sequence read can be following truncation and
+    still be retained. This length should be provided as a fraction of the
+    input sequence length.
+max_ambiguous : Int, optional
+    The maximum number of ambiguous (i.e., N) base calls. This is applied
+    after trimming sequences based on `min_length_fraction`.
+
+Returns
+-------
+filtered_sequences : SampleData[JoinedSequencesWithQuality]
+    The resulting quality-filtered sequences.
+filter_stats : QualityFilterStats
+    Summary statistics of the filtering process.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_quality-filter_q-score.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_quality-filter_q-score.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,88 @@
+<?xml version="1.0" ?>
+<tool id="qiime_quality-filter_q-score" name="qiime quality-filter q-score" version="2018.4">
+ <description> - Quality filter based on sequence quality scores.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime quality-filter q-score --i-demux=$idemux
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-filter-stats=ofilterstats --o-filtered-sequences=ofilteredsequences
+ #if $pqualitywindow:
+  --p-quality-window=$pqualitywindow
+ #end if
+
+ #if $pmaxambiguous:
+  --p-max-ambiguous=$pmaxambiguous
+ #end if
+
+ #if $pminlengthfraction:
+  --p-min-length-fraction=$pminlengthfraction
+ #end if
+
+ #if $pminquality:
+  --p-min-quality=$pminquality
+ #end if
+ ;
+ cp ofilterstats.qza $ofilterstats;
+ cp ofilteredsequences.qza $ofilteredsequences;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demux: SampleData[PairedEndSequencesWithQuality | SequencesWithQuality] The demultiplexed sequence data to be quality filtered.  [required]" name="idemux" optional="False" type="data"/>
+
+ <param label="--p-min-quality: The minimum acceptable PHRED score. All PHRED scores less that this value are considered to be low PHRED scores. [default: 4]" name="pminquality" optional="True" type="integer" value="4"/>
+ <param label="--p-quality-window: The maximum number of low PHRED scores that can be observed in direct succession before truncating a sequence read.  [default: 3]" name="pqualitywindow" optional="True" type="integer" value="3"/>
+
+ <param label="--p-min-length-fraction: The minimum length that a sequence read can be following truncation and still be retained. This length should be provided as a fraction of the input sequence length. [default: 0.75]" name="pminlengthfraction" optional="True" type="float" value="0.75"/>
+ <param label="--p-max-ambiguous: The maximum number of ambiguous (i.e., N) base calls. This is applied after trimming sequences based on `min_length_fraction`. [default: 0]" name="pmaxambiguous" optional="True" type="integer" value="0"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filter-stats.qza" name="ofilterstats"/>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-sequences.qza" name="ofilteredsequences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Quality filter based on sequence quality scores.
+-------------------------------------------------
+
+This method filters sequence based on quality scores and the presence of
+ambiguous base calls.
+
+Parameters
+----------
+demux : SampleData[PairedEndSequencesWithQuality | SequencesWithQuality]
+    The demultiplexed sequence data to be quality filtered.
+min_quality : Int, optional
+    The minimum acceptable PHRED score. All PHRED scores less that this
+    value are considered to be low PHRED scores.
+quality_window : Int, optional
+    The maximum number of low PHRED scores that can be observed in direct
+    succession before truncating a sequence read.
+min_length_fraction : Float, optional
+    The minimum length that a sequence read can be following truncation and
+    still be retained. This length should be provided as a fraction of the
+    input sequence length.
+max_ambiguous : Int, optional
+    The maximum number of ambiguous (i.e., N) base calls. This is applied
+    after trimming sequences based on `min_length_fraction`.
+
+Returns
+-------
+filtered_sequences : SampleData[SequencesWithQuality]
+    The resulting quality-filtered sequences.
+filter_stats : QualityFilterStats
+    Summary statistics of the filtering process.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_sample-classifier_classify-samples.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_sample-classifier_classify-samples.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,205 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_sample-classifier_classify-samples" name="qiime sample-classifier classify-samples" version="2018.4">\n+\t<description> - Supervised learning classifier.</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t<![CDATA[\n+\tqiime sample-classifier classify-samples --i-table=$itable\n+\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \' --m-metadata-file=\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --m-metadata-column="$mmetadatacolumn"\n+\t#if $pstep:\n+\t --p-step=$pstep\n+\t#end if\n+\n+\t#if $poptimizefeatureselection:\n+\t  --p-optimize-feature-selection\n+\t#else\n+\t\t--p-no-optimize-feature-selection\n+\t#end if\n+\n+\t#if $ptestsize:\n+\t --p-test-size=$ptestsize\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\t --o-visualization=ovisualization\n+\t#if str($pestimator) != \'None\':\n+\t --p-estimator=$pestimator\n+\t#end if\n+\n+\t#if $pnestimators:\n+\t --p-n-estimators=$pnestimators\n+\t#end if\n+\n+\t#set $pnjobs = \'${GALAXY_SLOTS:-4}\'\n+\n+\t#if str($pnjobs):\n+\t --p-n-jobs="$pnjobs"\n+\t#end if\n+\n+\n+\t#if $pcv:\n+\t --p-cv=$pcv\n+\t#end if\n+\n+\t#if str($ppalette) != \'None\':\n+\t --p-palette=$ppalette\n+\t#end if\n+\n+\t#if $pparametertuning:\n+\t  --p-parameter-tuning\n+\t#else\n+\t\t--p-no-parameter-tuning\n+\t#end if\n+\n+\t#if str($prandomstate):\n+\t --p-random-state="$prandomstate"\n+\t#end if\n+\t;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table containing all features that should be used for target prediction. [required]" name="itable" optional="False" type="data"/>\n+\n+\t\t<repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\t\t<param label="--m-metadata-column: MetadataColumn[Categorical] Column from metadata file or artifact viewable as metadata. Categorical metadata column to use as prediction target. [required]" name="mmetadatacolumn" optional="False" type="text"/>\n+\n+\t\t<param label="--p-test-size: Fraction of input samples to exclude from training set and use for classifier testing. [default: 0.2]" name="ptestsize" optional="True" type="float" value="0.2"/>\n+\t\t<param label="--p-step: If optimize_feature_selection is True, step is the percentage of features to remove at each iteration.  [default: 0.05]" name="pstep" optional="True" type="float" value="0.05"/>\n+\t\t<param label="--p-cv: Number of k-fold cross-validations to perform.  [default: 5]" name="pcv" optional="True" type="integer" value="5"/>\n+\n+\t\t<param label="--p-random-state: Seed used by random number generator. [optional]" name="prandomstate" optional="True" type="text"/>\n+\n+\t\t<param label="--p-n-estimators: Number of trees to grow for estimation. More trees will improve predictive accuracy up to a threshold level, but will also increase time and memory requirements. This parameter only affects ensemble estimators, such as Random Forest, AdaBoost, ExtraTrees, and GradientBoosting.  [default: 100]" name="pnestimators" optional="True" type="integer" value="100"/>\n+\t\t<param label="--p-estimator: Estimator method to use for sample\n+                                  prediction.  [default:\n+                                  RandomForestClassifier]" name="pestimato'..b'ly">melancholy</option>\n+\t\t\t<option value="PurpleRed">PurpleRed</option>\n+\t\t\t<option value="greyscale">greyscale</option>\n+\t\t\t<option value="dandelions">dandelions</option>\n+\t\t\t<option value="YellowOrangeBrown">YellowOrangeBrown</option>\n+\t\t\t<option value="verve">verve</option>\n+\t\t\t<option value="viridis">viridis</option>\n+\t\t\t<option value="OrangeRed">OrangeRed</option>\n+\t\t\t<option value="mysteriousstains">mysteriousstains</option>\n+\t\t\t<option value="spectre">spectre</option>\n+\t\t\t<option value="solano">solano</option>\n+\t\t\t<option value="daydream">daydream</option>\n+\t\t\t<option value="eros">eros</option>\n+\t\t\t<option value="RedPurple">RedPurple</option>\n+\t\t\t<option value="PurpleBlue">PurpleBlue</option>\n+\t\t\t<option value="YellowGreen">YellowGreen</option>\n+\t\t\t<option value="copper">copper</option>\n+\t\t\t<option value="navarro">navarro</option>\n+\t\t</param>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Supervised learning classifier.\n+--------------------------------\n+\n+Predicts a categorical sample metadata column using a supervised learning\n+classifier. Splits input data into training and test sets. The training set\n+is used to train and test the estimator using a stratified k-fold cross-\n+validation scheme. This includes optional steps for automated feature\n+extraction and hyperparameter optimization. The test set validates\n+classification accuracy of the optimized estimator. Outputs classification\n+results for test set. For more details on the learning  algorithm, see\n+http://scikit-learn.org/stable/supervised_learning.html\n+\n+Parameters\n+----------\n+table : FeatureTable[Frequency]\n+    Feature table containing all features that should be used for target\n+    prediction.\n+metadata : MetadataColumn[Categorical]\n+    Categorical metadata column to use as prediction target.\n+test_size : Float % Range(0.0, 1.0, inclusive_start=False), optional\n+    Fraction of input samples to exclude from training set and use for\n+    classifier testing.\n+step : Float % Range(0.0, 1.0, inclusive_start=False), optional\n+    If optimize_feature_selection is True, step is the percentage of\n+    features to remove at each iteration.\n+cv : Int % Range(1, None), optional\n+    Number of k-fold cross-validations to perform.\n+random_state : Int, optional\n+    Seed used by random number generator.\n+n_estimators : Int % Range(1, None), optional\n+    Number of trees to grow for estimation. More trees will improve\n+    predictive accuracy up to a threshold level, but will also increase\n+    time and memory requirements. This parameter only affects ensemble\n+    estimators, such as Random Forest, AdaBoost, ExtraTrees, and\n+    GradientBoosting.\n+estimator : Str % Choices({\'AdaBoostClassifier\', \'ExtraTreesClassifier\', \'GradientBoostingClassifier\', \'KNeighborsClassifier\', \'LinearSVC\', \'RandomForestClassifier\', \'SVC\'}), optional\n+    Estimator method to use for sample prediction.\n+optimize_feature_selection : Bool, optional\n+    Automatically optimize input feature selection using recursive feature\n+    elimination.\n+parameter_tuning : Bool, optional\n+    Automatically tune hyperparameters using random grid search.\n+palette : Str % Choices({\'BluePurple\', \'GreenBlue\', \'OrangeRed\', \'PurpleBlue\', \'PurpleRed\', \'RedPurple\', \'YellowGreen\', \'YellowOrangeBrown\', \'YellowOrangeRed\', \'ambition\', \'copper\', \'dandelions\', \'daydream\', \'deepblue\', \'drifting\', \'enigma\', \'eros\', \'greyscale\', \'inferno\', \'magma\', \'melancholy\', \'mysteriousstains\', \'navarro\', \'plasma\', \'sirocco\', \'solano\', \'spectre\', \'summer\', \'verve\', \'viridis\'}), optional\n+    The color palette to use for plotting.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_sample-classifier_maturity-index.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_sample-classifier_maturity-index.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,203 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_sample-classifier_maturity-index" name="qiime sample-classifier maturity-index" version="2018.4">\n+\t<description> - Microbial maturity index prediction.</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t<![CDATA[\n+\tqiime sample-classifier maturity-index --i-table=$itable\n+\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \' --m-metadata-file=\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --p-group-by="$pgroupby" --p-column="$pcolumn" --p-control="$pcontrol"\n+\n+\t#set $pnjobs = \'${GALAXY_SLOTS:-4}\'\n+\n+\t#if str($pnjobs):\n+\t --p-n-jobs="$pnjobs"\n+\t#end if\n+\n+\n+\t#if $pparametertuning:\n+\t  --p-parameter-tuning\n+\t#else\n+\t\t--p-no-parameter-tuning\n+\t#end if\n+\n+\t#if $pstep:\n+\t --p-step=$pstep\n+\t#end if\n+\n+\t#if $pstratify:\n+\t  --p-stratify\n+\t#else\n+\t\t--p-no-stratify\n+\t#end if\n+\n+\t#if $poptimizefeatureselection:\n+\t  --p-optimize-feature-selection\n+\t#else\n+\t\t--p-no-optimize-feature-selection\n+\t#end if\n+\n+\t#if $ptestsize:\n+\t --p-test-size=$ptestsize\n+\t#end if\n+\t --o-visualization=ovisualization\n+\t#if str($pestimator) != \'None\':\n+\t --p-estimator=$pestimator\n+\t#end if\n+\n+\t#if $pmazstats:\n+\t  --p-maz-stats\n+ \t#else\n+ \t\t--p-no-maz-stats\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\n+\t#if $pcv:\n+\t --p-cv=$pcv\n+\t#end if\n+\n+\t#if $pnestimators:\n+\t --p-n-estimators=$pnestimators\n+\t#end if\n+\n+\t#if str($prandomstate):\n+\t --p-random-state="$prandomstate"\n+\t#end if\n+\t;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table containing all features that should be used for target prediction. [required]" name="itable" optional="False" type="data"/>\n+\n+\t\t<repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\n+\t\t<param label="--p-column: Numeric metadata column to use as prediction target.  [required]" name="pcolumn" optional="False" type="text"/>\n+\n+\t\t<param label="--p-group-by: Categorical metadata column to use for plotting and significance testing between main treatment groups.  [required]" name="pgroupby" optional="False" type="text"/>\n+\t\t<param label="--p-control: Value of group_by to use as control group. The regression model will be trained using only control group data, and the maturity scores of other groups consequently will be assessed relative to this group.  [required]" name="pcontrol" optional="False" type="text"/>\n+\n+\t\t<param label="--p-estimator: Regression model to use for prediction.\n+                                  [default: RandomForestRegressor]" name="pestimator" optional="True" type="select">\n+\t\t\t<option selected="True" value="None">Selection is Optional</option>\n+\t\t\t<option value="Ridge">Ridge</option>\n+\t\t\t<option value="RandomForestRegressor">RandomForestRegressor</option>\n+\t\t\t<option value="GradientBoostingRegressor">GradientBoostingRegressor</option>\n+\t\t\t<option value="ExtraTreesRegressor">ExtraTreesRegressor</option>\n+\t\t\t<option value="SVR">SVR</option>\n+\t\t\t<option value="ElasticNet">ElasticNet</option>\n+\t\t\t<option value="Lasso">Lasso</option>\n+\t\t</param>\n+\t\t<param label="--p-n-estimators: Number of trees to grow for estimation. More trees will improve predict'..b'ault: True]" name="poptimizefeatureselection" checked="True" type="boolean"/>\n+\n+\t\t<param label="--p-stratify: --p-no-stratify  Evenly stratify training and test data among metadata categories. If True, all values in column must match at least two samples. [default: False]" name="pstratify" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-maz-stats: --p-no-maz-stats Calculate anova and pairwise tests on MAZ scores.  [default: True]" name="pmazstats" checked="True" type="boolean"/>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Microbial maturity index prediction.\n+-------------------------------------\n+\n+Calculates a "microbial maturity" index from a regression model trained on\n+feature data to predict a given continuous metadata column, e.g., to\n+predict age as a function of microbiota composition. The model is trained\n+on a subset of control group samples, then predicts the column value for\n+all samples. This visualization computes maturity index z-scores to compare\n+relative "maturity" between each group, as described in\n+doi:10.1038/nature13421. This method can be used to predict between-group\n+differences in relative trajectory across any type of continuous metadata\n+gradient, e.g., intestinal microbiome development by age, microbial\n+succession during wine fermentation, or microbial community differences\n+along environmental gradients, as a function of two or more different\n+"treatment" groups.\n+\n+Parameters\n+----------\n+table : FeatureTable[Frequency]\n+    Feature table containing all features that should be used for target\n+    prediction.\n+metadata : Metadata\n+\t\t\\\n+column : Str\n+    Numeric metadata column to use as prediction target.\n+group_by : Str\n+    Categorical metadata column to use for plotting and significance\n+    testing between main treatment groups.\n+control : Str\n+    Value of group_by to use as control group. The regression model will be\n+    trained using only control group data, and the maturity scores of other\n+    groups consequently will be assessed relative to this group.\n+estimator : Str % Choices({\'ElasticNet\', \'ExtraTreesRegressor\', \'GradientBoostingRegressor\', \'Lasso\', \'RandomForestRegressor\', \'Ridge\', \'SVR\'}), optional\n+    Regression model to use for prediction.\n+n_estimators : Int % Range(1, None), optional\n+    Number of trees to grow for estimation. More trees will improve\n+    predictive accuracy up to a threshold level, but will also increase\n+    time and memory requirements. This parameter only affects ensemble\n+    estimators, such as Random Forest, AdaBoost, ExtraTrees, and\n+    GradientBoosting.\n+test_size : Float % Range(0.0, 1.0, inclusive_start=False), optional\n+    Fraction of input samples to exclude from training set and use for\n+    classifier testing.\n+step : Float % Range(0.0, 1.0, inclusive_start=False), optional\n+    If optimize_feature_selection is True, step is the percentage of\n+    features to remove at each iteration.\n+cv : Int % Range(1, None), optional\n+    Number of k-fold cross-validations to perform.\n+random_state : Int, optional\n+    Seed used by random number generator.\n+parameter_tuning : Bool, optional\n+    Automatically tune hyperparameters using random grid search.\n+optimize_feature_selection : Bool, optional\n+    Automatically optimize input feature selection using recursive feature\n+    elimination.\n+stratify : Bool, optional\n+    Evenly stratify training and test data among metadata categories. If\n+    True, all values in column must match at least two samples.\n+maz_stats : Bool, optional\n+    Calculate anova and pairwise tests on MAZ scores.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_sample-classifier_regress-samples.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_sample-classifier_regress-samples.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,179 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_sample-classifier_regress-samples" name="qiime sample-classifier regress-samples" version="2018.4">\n+\t<description> - Supervised learning regressor.</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command>\n+\t<![CDATA[\n+\tqiime sample-classifier regress-samples --i-table=$itable\n+\n+\t#def list_dict_to_string(list_dict):\n+\t\t#set $file_list = list_dict[0][\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#for d in list_dict[1:]:\n+\t\t\t#set $file_list = $file_list + \' --m-metadata-file=\' + d[\'additional_input\'].__getattr__(\'file_name\')\n+\t\t#end for\n+\t\t#return $file_list\n+\t#end def\n+\n+\t --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile) --m-metadata-column="$mmetadatacolumn"\n+\t#set $pnjobs = \'${GALAXY_SLOTS:-4}\'\n+\n+\t#if str($pnjobs):\n+\t --p-n-jobs="$pnjobs"\n+\t#end if\n+\n+\n+\t#if $pstep:\n+\t --p-step=$pstep\n+\t#end if\n+\n+\t#if $pstratify:\n+ \t  --p-stratify\n+\t#else\n+\t\t--p-no-stratify\n+\t#end if\n+\n+\t#if $poptimizefeatureselection:\n+\t  --p-optimize-feature-selection\n+\t#else\n+\t\t--p-no-optimize-feature-selection\n+\t#end if\n+\n+\t#if $ptestsize:\n+\t --p-test-size=$ptestsize\n+\t#end if\n+\t --o-visualization=ovisualization\n+\t#if str($pestimator) != \'None\':\n+\t --p-estimator=$pestimator\n+\t#end if\n+\n+\t#if $pnestimators:\n+\t --p-n-estimators=$pnestimators\n+\t#end if\n+\n+\t#if str($cmdconfig) != \'None\':\n+\t --cmd-config=$cmdconfig\n+\t#end if\n+\n+\t#if $pcv:\n+\t --p-cv=$pcv\n+\t#end if\n+\n+\t#if $pparametertuning:\n+\t  --p-parameter-tuning\n+\t#else\n+\t\t--p-no-parameter-tuning\n+\t#end if\n+\n+\t#if str($prandomstate):\n+\t --p-random-state="$prandomstate"\n+\t#end if\n+\t;\n+\tqiime tools export ovisualization.qzv --output-dir out   && mkdir -p \'$ovisualization.files_path\'\n+\t&& cp -r out/* \'$ovisualization.files_path\'\n+\t&& mv \'$ovisualization.files_path/index.html\' \'$ovisualization\'\n+\t]]>\n+\t</command>\n+\t<inputs>\n+\t\t<param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table containing all features that should be used for target prediction. [required]" name="itable" optional="False" type="data"/>\n+\t\t<repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">\n+\t\t\t<param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />\n+\t\t</repeat>\n+\t\t<param label="--m-metadata-column: MetadataColumn[Numeric] Column from metadata file or artifact viewable as metadata. Numeric metadata column to use as prediction target. [required]" name="mmetadatacolumn" optional="False" type="text"/>\n+\n+\t\t<param label="--p-test-size: Fraction of input samples to exclude from training set and use for classifier testing. [default: 0.2]" name="ptestsize" optional="True" type="float" value="0.2"/>\n+\n+\t\t<param label="--p-step: If optimize_feature_selection is True, step is the percentage of features to remove at each iteration.  [default: 0.05]" name="pstep" optional="True" type="float" value="0.05"/>\n+\n+\t\t<param label="--p-cv: Number of k-fold cross-validations to perform.  [default: 5]" name="pcv" optional="True" type="integer" value="5"/>\n+\n+\t\t<param label="--p-random-state: Seed used by random number generator. [optional]" name="prandomstate" optional="True" type="text"/>\n+\n+\t\t<param label="--p-n-estimators: Number of trees to grow for estimation. More trees will improve predictive accuracy up to a threshold level, but will also increase time and memory requirements. This parameter only affects ensemble estimators, such as Random Forest, AdaBoost, ExtraTrees, and GradientBoosting.  [default: 100]" name="pnestimators" optional="True" type="integer" value="100"/>\n+\t\t<param label="--p-estimator: Estimator method to use for sample\n+                                  prediction.  [default:\n+                                  RandomForestRegressor]" name="pestimator" op'..b'essor">GradientBoostingRegressor</option>\n+\t\t\t<option value="AdaBoostRegressor">AdaBoostRegressor</option>\n+\t\t\t<option value="LinearSVR">LinearSVR</option>\n+\t\t\t<option value="ExtraTreesRegressor">ExtraTreesRegressor</option>\n+\t\t\t<option value="KNeighborsRegressor">KNeighborsRegressor</option>\n+\t\t\t<option value="SVR">SVR</option>\n+\t\t\t<option value="ElasticNet">ElasticNet</option>\n+\t\t\t<option value="Lasso">Lasso</option>\n+\t\t</param>\n+\n+\t\t<param label="--p-optimize-feature-selection: --p-no-optimize-feature-selection Automatically optimize input feature selection using recursive feature elimination.  [default: False]" name="poptimizefeatureselection" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-stratify: --p-no-stratify  Evenly stratify training and test data among metadata categories. If True, all values in column must match at least two samples. [default: False]" name="pstratify" checked="False" type="boolean"/>\n+\n+\t\t<param label="--p-parameter-tuning: --p-no-parameter-tuning Automatically tune hyperparameters using random grid search.  [default: False]" name="pparametertuning" checked="False" type="boolean"/>\n+\n+\t\t<param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>\n+\t</outputs>\n+\t<help>\n+\t\t<![CDATA[\n+Supervised learning regressor.\n+-------------------------------\n+\n+Predicts a continuous sample metadata column using a supervised learning\n+regressor. Splits input data into training and test sets. The training set\n+is used to train and test the estimator using a stratified k-fold cross-\n+validation scheme. This includes optional steps for automated feature\n+extraction and hyperparameter optimization. The test set validates\n+classification accuracy of the optimized estimator. Outputs classification\n+results for test set. For more details on the learning  algorithm, see\n+http://scikit-learn.org/stable/supervised_learning.html\n+\n+Parameters\n+----------\n+table : FeatureTable[Frequency]\n+    Feature table containing all features that should be used for target\n+    prediction.\n+metadata : MetadataColumn[Numeric]\n+    Numeric metadata column to use as prediction target.\n+test_size : Float % Range(0.0, 1.0, inclusive_start=False), optional\n+    Fraction of input samples to exclude from training set and use for\n+    classifier testing.\n+step : Float % Range(0.0, 1.0, inclusive_start=False), optional\n+    If optimize_feature_selection is True, step is the percentage of\n+    features to remove at each iteration.\n+cv : Int % Range(1, None), optional\n+    Number of k-fold cross-validations to perform.\n+random_state : Int, optional\n+    Seed used by random number generator.\n+n_estimators : Int % Range(1, None), optional\n+    Number of trees to grow for estimation. More trees will improve\n+    predictive accuracy up to a threshold level, but will also increase\n+    time and memory requirements. This parameter only affects ensemble\n+    estimators, such as Random Forest, AdaBoost, ExtraTrees, and\n+    GradientBoosting.\n+estimator : Str % Choices({\'AdaBoostRegressor\', \'ElasticNet\', \'ExtraTreesRegressor\', \'GradientBoostingRegressor\', \'KNeighborsRegressor\', \'Lasso\', \'LinearSVR\', \'RandomForestRegressor\', \'Ridge\', \'SVR\'}), optional\n+    Estimator method to use for sample prediction.\n+optimize_feature_selection : Bool, optional\n+    Automatically optimize input feature selection using recursive feature\n+    elimination.\n+stratify : Bool, optional\n+    Evenly stratify training and test data among metadata categories. If\n+    True, all values in column must match at least two samples.\n+parameter_tuning : Bool, optional\n+    Automatically tune hyperparameters using random grid search.\n+\n+Returns\n+-------\n+visualization : Visualization\n+\t\t\\\n+\t\t]]>\n+\t</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_taxa_barplot.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_taxa_barplot.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,97 @@
+<?xml version="1.0" ?>
+<tool id="qiime_taxa_barplot" name="qiime taxa barplot" version="2018.4">
+ <description>- Visualize taxonomy with an interactive bar plot</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime taxa barplot
+
+ #if str( $id_to_taxonomy_fp.selector ) == 'history'
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+ --i-taxonomy '$tax'
+ #else:
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+ --i-taxonomy '$tax'
+ #end if
+
+ #def list_dict_to_string(list_dict):
+ #set $file_list = list_dict[0]['additional_input'].__getattr__('file_name')
+ #for d in list_dict[1:]:
+ #set $file_list = $file_list + ' --m-metadata-file=' + d['additional_input'].__getattr__('file_name')
+ #end for
+ #return $file_list
+ #end def
+
+  --m-metadata-file=$list_dict_to_string($input_files_mmetadatafile)
+  --i-table=$itable --o-visualization=ovisualization
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+ ;
+ qiime tools export ovisualization.qzv --output-dir out   && mkdir -p '$ovisualization.files_path'
+ && cp -r out/* '$ovisualization.files_path'
+ && mv '$ovisualization.files_path/index.html' '$ovisualization'
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table to visualize at various taxonomic levels.  [required]" name="itable" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <repeat name="input_files_mmetadatafile" optional="False" title="--m-metadata-file">
+ <param label="--m-metadata-file: Metadata file or artifact viewable as metadata. This option may be supplied multiple times to merge metadata. The sample metadata.  [required]" name="additional_input" type="data" format="tabular,qza,no_unzip.zip" />
+ </repeat>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="html" label="${tool.name} on ${on_string}: visualization.qzv" name="ovisualization"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Visualize taxonomy with an interactive bar plot
+------------------------------------------------
+
+This visualizer produces an interactive barplot visualization of
+taxonomies. Interactive features include multi-level sorting, plot
+recoloring, sample relabeling, and SVG figure export.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    Feature table to visualize at various taxonomic levels.
+taxonomy : FeatureData[Taxonomy]
+    Taxonomic annotations for features in the provided feature table. All
+    features in the feature table must have a corresponding taxonomic
+    annotation. Taxonomic annotations that are not present in the feature
+    table will be ignored.
+metadata : Metadata
+    The sample metadata.
+
+Returns
+-------
+visualization : Visualization
+ \
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_taxa_collapse.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_taxa_collapse.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,86 @@
+<?xml version="1.0" ?>
+<tool id="qiime_taxa_collapse" name="qiime taxa collapse" version="2018.4">
+ <description>- Collapse features by their taxonomy at the specified level</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime taxa collapse --p-level="$plevel"
+
+ #if str( $id_to_taxonomy_fp.selector ) == 'history'
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+ --i-taxonomy '$tax'
+ #else:
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+ --i-taxonomy '$tax'
+ #end if
+
+ --i-table=$itable --o-collapsed-table=ocollapsedtable
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+ ;
+ cp ocollapsedtable.qza $ocollapsedtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table to be collapsed.  [required]" name="itable" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-level: The taxonomic level at which the features should be collapsed. All ouput features will have exactly this many levels of taxonomic annotation.  [required]" name="plevel" optional="False" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: collapsed-table.qza" name="ocollapsedtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Collapse features by their taxonomy at the specified level
+-----------------------------------------------------------
+
+Collapse groups of features that have the same taxonomic assignment through
+the specified level. The frequencies of all features will be summed when
+they are collapsed.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    Feature table to be collapsed.
+taxonomy : FeatureData[Taxonomy]
+    Taxonomic annotations for features in the provided feature table. All
+    features in the feature table must have a corresponding taxonomic
+    annotation. Taxonomic annotations that are not present in the feature
+    table will be ignored.
+level : Int
+    The taxonomic level at which the features should be collapsed. All
+    ouput features will have exactly this many levels of taxonomic
+    annotation.
+
+Returns
+-------
+collapsed_table : FeatureTable[Frequency]
+    The resulting feature table, where all features are now taxonomic
+    annotations with the user-specified number of levels.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_taxa_filter-seqs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_taxa_filter-seqs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,128 @@
+<?xml version="1.0" ?>
+<tool id="qiime_taxa_filter-seqs" name="qiime taxa filter-seqs" version="2018.4">
+ <description>- Taxonomy-based feature sequence filter.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime taxa filter-seqs
+
+ #if str( $id_to_taxonomy_fp.selector ) == 'history'
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+ --i-taxonomy '$tax'
+ #else:
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+ --i-taxonomy '$tax'
+ #end if
+
+  --i-sequences=$isequences
+ #if str($pexclude):
+  --p-exclude="$pexclude"
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-filtered-sequences=ofilteredsequences
+ #if str($pmode) != 'None':
+  --p-mode=$pmode
+ #end if
+
+ #if str($pquerydelimiter):
+  --p-query-delimiter="$pquerydelimiter"
+ #end if
+
+ #if str($pinclude):
+  --p-include="$pinclude"
+ #end if
+ ;
+ cp ofilteredsequences.qza $ofilteredsequences
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] Feature sequences to be filtered. [required]" name="isequences" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-include: One or more search terms that indicate which taxa should be included in the resulting sequences. If providing more than one term, terms should be delimited by the query- delimiter character. By default, all taxa will be included.  [optional]" name="pinclude" optional="True" type="text"/>
+ <param label="--p-exclude: One or more search terms that indicate which taxa should be excluded from the resulting sequences. If providing more than one term, terms should be delimited by the query- delimiter character. By default, no taxa will be excluded.  [optional]" name="pexclude" optional="True" type="text"/>
+
+ <param label="--p-query-delimiter: The string used to delimit multiple search terms provided to include or exclude. This parameter should only need to be modified if the default delimiter (a comma) is used in the provided taxonomic annotations. [default: ,]" name="pquerydelimiter" optional="True" type="text" value=","/>
+
+ <param label="--p-mode: [exact|contains]       Mode for determining if a search term matches a taxonomic annotation. 'contains' requires that the annotation has the term as a substring; 'exact' requires that the annotation is a perfect match to a search term.  [default: contains]" name="pmode" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="exact">exact</option>
+ <option value="contains">contains</option>
+ </param>
+
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filteredsequences.qza" name="ofilteredsequences"/>
+ </outputs>
+ <help><![CDATA[
+Taxonomy-based feature sequence filter.
+----------------------------------------
+
+This method filters sequences based on their taxonomic annotations.
+Features can be retained in the result by specifying one or more include
+search terms, and can be filtered out of the result by specifying one or
+more exclude search terms. If both include and exclude are provided, the
+inclusion critera will be applied before the exclusion critera. Either
+include or exclude terms (or both) must be provided.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    Feature sequences to be filtered.
+taxonomy : FeatureData[Taxonomy]
+    Taxonomic annotations for features in the provided feature sequences.
+    All features in the feature sequences must have a corresponding
+    taxonomic annotation. Taxonomic annotations for features that are not
+    present in the feature sequences will be ignored.
+include : Str, optional
+    One or more search terms that indicate which taxa should be included in
+    the resulting sequences. If providing more than one term, terms should
+    be delimited by the query-delimiter character. By default, all taxa
+    will be included.
+exclude : Str, optional
+    One or more search terms that indicate which taxa should be excluded
+    from the resulting sequences. If providing more than one term, terms
+    should be delimited by the query-delimiter character. By default, no
+    taxa will be excluded.
+query_delimiter : Str, optional
+    The string used to delimit multiple search terms provided to include or
+    exclude. This parameter should only need to be modified if the default
+    delimiter (a comma) is used in the provided taxonomic annotations.
+mode : Str % Choices({'contains', 'exact'}), optional
+    Mode for determining if a search term matches a taxonomic annotation.
+    "contains" requires that the annotation has the term as a substring;
+    "exact" requires that the annotation is a perfect match to a search
+    term.
+
+Returns
+-------
+filtered_sequences : FeatureData[Sequence]
+    The taxonomy-filtered feature sequences.
+     ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_taxa_filter-table.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_taxa_filter-table.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,130 @@
+<?xml version="1.0" ?>
+<tool id="qiime_taxa_filter-table" name="qiime taxa filter-table" version="2018.4">
+ <description>- Taxonomy-based feature table filter.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime taxa filter-table
+
+ #if str( $id_to_taxonomy_fp.selector ) == 'history'
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp
+ --i-taxonomy '$tax'
+ #else:
+ #set $tax = $id_to_taxonomy_fp.taxonomy_fp.fields.path
+ --i-taxonomy '$tax'
+ #end if
+
+  --i-table=$itable
+ #if str($pexclude):
+  --p-exclude="$pexclude"
+ #end if
+  --o-filtered-table=ofilteredtable
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if str($pinclude):
+  --p-include="$pinclude"
+ #end if
+
+ #if str($pmode) != 'None':
+  --p-mode=$pmode
+ #end if
+
+ #if str($pquerydelimiter):
+  --p-query-delimiter="$pquerydelimiter"
+ #end if
+ ;
+ cp ofilteredtable.qza $ofilteredtable
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table to be filtered.  [required]" name="itable" optional="False" type="data"/>
+
+ <conditional name="id_to_taxonomy_fp" optional="True">
+    <param name="selector" type="select" label="Reference taxonomy to query">
+   <option value="cached">Public databases</option>
+   <option value="history">Databases from your history</option>
+    </param>
+    <when value="cached">
+   <param argument="--taxonomy_fp" label="Reference taxonomy" type="select" optional="True">
+  <options from_data_table="qiime_taxonomy" />
+   </param>
+    </when>
+    <when value="history">
+   <param argument="--taxonomy_fp" type="data" format="qza,no_unzip.zip" label="Reference databases" optional="True" />
+    </when>
+ </conditional>
+
+ <param label="--p-include: One or more search terms that indicate which taxa should be included in the resulting table. If providing more than one term, terms should be delimited by the query- delimiter character. By default, all taxa will be included.  [optional]" name="pinclude" optional="True" type="text"/>
+ <param label="--p-exclude: One or more search terms that indicate which taxa should be excluded from the resulting table. If providing more than one term, terms should be delimited by the query- delimiter character. By default, no taxa will be excluded.  [optional]" name="pexclude" optional="True" type="text"/>
+
+ <param label="--p-query-delimiter: The string used to delimit multiple search terms provided to include or exclude. This parameter should only need to be modified if the default delimiter (a comma) is used in the provided taxonomic annotations. [default: ,]" name="pquerydelimiter" optional="True" type="text" value=","/>
+
+ <param label="--p-mode: [exact|contains]       Mode for determining if a search term matches a taxonomic annotation. 'contains' requires that the annotation has the term as a substring; 'exact' requires that the annotation is a perfect match to a search term.  [default: contains]" name="pmode" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="exact">exact</option>
+ <option value="contains">contains</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: filtered-table.qza" name="ofilteredtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Taxonomy-based feature table filter.
+-------------------------------------
+
+This method filters features from a table based on their taxonomic
+annotations. Features can be retained in the resulting table by specifying
+one or more include search terms, and can be filtered out of the resulting
+table by specifying one or more exclude search terms. If both include and
+exclude are provided, the inclusion critera will be applied before the
+exclusion critera. Either include or exclude terms (or both) must be
+provided. Any samples that have a total frequency of zero after filtering
+will be removed from the resulting table.
+
+Parameters
+----------
+table : FeatureTable[Frequency]
+    Feature table to be filtered.
+taxonomy : FeatureData[Taxonomy]
+    Taxonomic annotations for features in the provided feature table. All
+    features in the feature table must have a corresponding taxonomic
+    annotation. Taxonomic annotations for features that are not present in
+    the feature table will be ignored.
+include : Str, optional
+    One or more search terms that indicate which taxa should be included in
+    the resulting table. If providing more than one term, terms should be
+    delimited by the query-delimiter character. By default, all taxa will
+    be included.
+exclude : Str, optional
+    One or more search terms that indicate which taxa should be excluded
+    from the resulting table. If providing more than one term, terms should
+    be delimited by the query-delimiter character. By default, no taxa will
+    be excluded.
+query_delimiter : Str, optional
+    The string used to delimit multiple search terms provided to include or
+    exclude. This parameter should only need to be modified if the default
+    delimiter (a comma) is used in the provided taxonomic annotations.
+mode : Str % Choices({'contains', 'exact'}), optional
+    Mode for determining if a search term matches a taxonomic annotation.
+    "contains" requires that the annotation has the term as a substring;
+    "exact" requires that the annotation is a perfect match to a search
+    term.
+
+Returns
+-------
+filtered_table : FeatureTable[Frequency]
+    The taxonomy-filtered feature table.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_tools_export.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_tools_export.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,30 @@
+<?xml version="1.0" ?>
+<tool id="qiime_tools_export" name="qiime tools export" version="2018.4">
+ <description> - Export data from a QIIME 2 Artifact or Visualization.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command><![CDATA[qiime tools export $isequences --output-dir test
+ ]]></command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="Input artifact to export! [required]" name="isequences" optional="False" type="data"/></inputs>
+
+ <outputs>
+    <data format="txt" name="report">
+        <discover_datasets pattern="__designation_and_ext__" directory="test" visible="true" />
+    </data>
+ </outputs>
+
+ <!--<outputs>
+
+   <collection type="list" label="Exported artifact" name="output1">
+     <discover_datasets pattern="*.*" directory="test" />
+   </collection>
+ </outputs>-->
+ <help>
+</help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_tools_export_collection.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_tools_export_collection.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<tool id="qiime_tools_export_collection" name="qiime tools export collection" version="2018.4">
+   <description>- Export data from a QIIME 2 Artifact or Visualization.</description>
+   <requirements>
+      <requirement type="package" version="2018.4">qiime2</requirement>
+   </requirements>
+   <command><![CDATA[qiime tools export $isequences --output-dir test && cd test && gunzip *]]></command>
+   <inputs>
+      <param format="qza,no_unzip.zip" label="Input artifact to export! [required]" name="isequences" optional="False" type="data" />
+   </inputs>
+
+   <outputs>
+      <collection type="list" label="Export artifact to collection" name="output">
+         <discover_datasets pattern="__designation_and_ext__" directory="test" />
+      </collection>
+   </outputs>
+   <help />
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
\ No newline at end of file
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_tools_export_paired_collection.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_tools_export_paired_collection.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<tool id="qiime_tools_export_paired_collection" name="qiime tools export to paired collection" version="2018.4">
+   <description>- Export data from a QIIME 2 Artifact or Visualization.</description>
+   <requirements>
+      <requirement type="package" version="2018.4">qiime2</requirement>
+   </requirements>
+   <command><![CDATA[qiime tools export $isequences --output-dir test && cd test && gunzip *]]></command>
+   <inputs>
+      <param format="qza,no_unzip.zip" label="Input artifact to export! [required]" name="isequences" optional="False" type="data" />
+   </inputs>
+
+   <outputs>
+      <collection type="paired" label="Export artifact to collection" name="output">
+         <discover_datasets pattern="__designation_and_ext__" directory="test" />
+      </collection>
+   </outputs>
+   <help />
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
\ No newline at end of file
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_tools_import.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_tools_import.xml Thu May 24 05:21:07 2018 -0400
[
b'@@ -0,0 +1,257 @@\n+<?xml version="1.0" ?>\n+<tool id="qiime_tools_import" name="qiime tools import" version="2018.4">\n+\t<description> - Import data into a new QIIME 2 Artifact.</description>\n+\t<requirements>\n+\t\t<requirement type="package" version="2018.4">qiime2</requirement>\n+\t</requirements>\n+\t<command><![CDATA[\n+\n+mkdir input;\n+\n+#set $in_= \'input\'\n+\n+\n+#if \'__ob__\' in str($semantic_type):\n+\t#set $type_temp = str($semantic_type).replace(\'__ob__\', \'[\')\n+\t#set $type_temp = str($type_temp).replace(\'__cb__\', \']\')\n+\t#set $semantic_type = $type_temp\n+#end if\n+\n+#def is_fastq($f_test)\n+\t#set $f = open($f_test, \'rb\')\n+\t#if str($f.readline()[0]) == \'@\'\n+\t\t#$f.close()\n+\t\t#return True\n+\t#end if\n+\n+\t#$f.close()\n+\t#return False\n+#end def\n+\n+\n+## Symlinks creation or On the fly creation of a combo file\n+#if $input_type.type == \'list_list\'\n+\t## Symlinks creation or On the fly creation of a combo file\n+\t#for $f in $input_type.list_list:\n+\n+\t\t#set $is_fastq_file = $is_fastq(str($f))\n+\n+\t\t#if $is_fastq_file:\n+\t\t\t#set $file_for_processing = \'input/\' + $f.name + \'.gz\'\n+\t\t\tgzip -c ${f} > $file_for_processing;\n+\t\t#else\n+\t\t\t#set $file_for_processing = \'input/\' + $f.name\n+\t\t\tln -s ${f}  $file_for_processing;\n+\t\t#end if\n+\t#end for\n+\t#if \'SingleEndFastqManifestPhred\' in str($sourceformat):\n+\t\t\t#set $cwd = str($outputpath.extra_files_path) + "_manifest_file.txt"\n+\t\t\t#set $m_file = open(str($cwd), \'w\')\n+\t\t\t$m_file.write("sample-id,absolute-filepath,direction\\n")\n+\t\t\t#for $f in $input_type.list_list:\n+\t\t\t\t$m_file.write(str($f.name).split("_")[0]+",$PWD/input/"+str($f.name)+".gz,forward\\n")\n+\t\t\t#end for\n+\t\t\t$m_file.close()\n+\t\t\t#set $in_= str($cwd)\n+\t\t#end if\n+\t\n+\n+#elif $input_type.type == \'list_paired_collection\':\n+  \n+\t#set $cwd = str($outputpath.extra_files_path) + "_manifest_file.txt"\n+\t#set $m_file = open(str($cwd), \'w\')\n+\t$m_file.write("sample-id,absolute-filepath,direction\\n")\t\n+\n+\t#for $pair in $input_type.list_paired_collection:\n+\t\t#set $forward_is_fastq_file = $is_fastq(str($pair.forward))\n+\t\t#set $reverse_is_fastq_file = $is_fastq(str($pair.reverse))\n+\t\t\n+\t\t#if $forward_is_fastq_file:\n+\t \t\tgzip -c ${pair.forward} > input/${pair.name}_R1_001.fastq.gz;\n+\t \t\t$m_file.write(str($pair.name).split("_")[0]+",$PWD/input/"+str($pair.name)+"_R1_001.fastq.gz,forward\\n")\n+\t\t#else\n+\t  \t\tln -s ${pair.forward} input/${pair.name}_R1_001.fastq.gz;\n+\t\t\t$m_file.write(str($pair.name).split("_")[0]+",$PWD/input/"+str($pair.name)+"_R1_001.fastq.gz,forward\\n")\n+        #end if\n+\n+\t \t#if $reverse_is_fastq_file:\n+\t \t\tgzip -c ${pair.reverse} > input/${pair.name}_R2_001.fastq.gz;\n+\t\t\t$m_file.write(str($pair.name).split("_")[0]+",$PWD/input/"+str($pair.name)+"_R2_001.fastq.gz,reverse\\n")\n+        #else\n+\t  \t\tln -s ${pair.reverse} input/${pair.name}_R2_001.fastq.gz;\n+\t\t\t$m_file.write(str($pair.name).split("_")[0]+",$PWD/input/"+str($pair.name)+"_R2_001.fastq.gz,reverse\\n")\n+\t  \t#end if\n+\t#end for\n+\n+\t\n+\t$m_file.close()\n+\t#if \'PairedEndFastqManifestPhred\' in str($sourceformat):\n+\t\t#set $in_= str($cwd)\n+\t#elif  \'Casava\' in str($sourceformat):\n+\t\t#set $in_= \'input\'\n+\t#end if\n+\n+#else\n+\t#set $res = $is_fastq(str($file))\n+\n+\t#if $res\n+\t\tgzip -c ${file} > ${file.name}.gz;\n+\t\t#set $in_= $file.name + \'.gz\'\n+\n+\t#else\n+\t\t#set $in_= str($file)\n+\t#end if\n+   \n+   #if "MultiplexedSingleEndBarcodeInSequence" in str($semantic_type):      \n+ \t\t\tmv *_R1_* forward.fastq.gz;\n+\t    #set $in_= \'forward.fastq.gz\';\n+   #end if \n+\n+#end if\n+\n+\n+## rename files to predefined names for "MultiplexedPairedEndBarcodeInSequence"\n+#if "MultiplexedPairedEndBarcodeInSequence" in str($semantic_type):\n+\t\tmv input/*_R1_* input/forward.fastq.gz;\n+\t\tmv input/*_R2_* input/reverse.fastq.gz;\n+#end if\n+\n+\n+qiime tools import\n+\n+--type="$semantic_type"\n+\n+--input-path=$in_\n+\n+--output-path=outputpath\n+\n+#if str($sourceformat) != \'None\':\n+\t#if \'__ob__\' in str($sourceformat):\n+  \t\t#set $sourceformat_temp = str($sourceformat).replace(\'__ob__\', \'[\')\n+\t\t#set $sourceformat_temp = str($sourceformat_temp).replace(\'__cb__\''..b' value="BIOMV100Format">BIOMV100Format</option>\n+\t\t\t<option value="BIOMV210DirFmt">BIOMV210DirFmt</option>\n+\t\t\t<option value="BIOMV210Format">BIOMV210Format</option>\n+\t\t\t<option value="BooleanSeriesDirectoryFormat">BooleanSeriesDirectoryFormat</option>\n+\t\t\t<option value="BooleanSeriesFormat">BooleanSeriesFormat</option>\n+\t\t\t<option value="CasavaOneEightLanelessPerSampleDirFmt">CasavaOneEightLanelessPerSampleDirFmt</option>\n+\t\t\t<option value="CasavaOneEightSingleLanePerSampleDirFmt">CasavaOneEightSingleLanePerSampleDirFmt</option>\n+\t\t\t<option value="DADA2StatsDirFmt">DADA2StatsDirFmt</option>\n+\t\t\t<option value="DADA2StatsFormat">DADA2StatsFormat</option>\n+\t\t\t<option value="DNAFASTAFormat">DNAFASTAFormat</option>\n+\t\t\t<option value="DNASequencesDirectoryFormat">DNASequencesDirectoryFormat</option>\n+\t\t\t<option value="DeblurStatsDirFmt">DeblurStatsDirFmt</option>\n+\t\t\t<option value="DeblurStatsFmt">DeblurStatsFmt</option>\n+\t\t\t<option value="DistanceMatrixDirectoryFormat">DistanceMatrixDirectoryFormat</option>\n+\t\t\t<option value="EMPPairedEndCasavaDirFmt">EMPPairedEndCasavaDirFmt</option>\n+\t\t\t<option value="EMPPairedEndDirFmt">EMPPairedEndDirFmt</option>\n+\t\t\t<option value="EMPSingleEndCasavaDirFmt">EMPSingleEndCasavaDirFmt</option>\n+\t\t\t<option value="EMPSingleEndDirFmt">EMPSingleEndDirFmt</option>\n+\t\t\t<option value="FastqGzFormat">FastqGzFormat</option>\n+\t\t\t<option value="FirstDifferencesDirectoryFormat">FirstDifferencesDirectoryFormat</option>\n+\t\t\t<option value="FirstDifferencesFormat">FirstDifferencesFormat</option>\n+\t\t\t<option value="HeaderlessTSVTaxonomyDirectoryFormat">HeaderlessTSVTaxonomyDirectoryFormat</option>\n+\t\t\t<option value="HeaderlessTSVTaxonomyFormat">HeaderlessTSVTaxonomyFormat</option>\n+\t\t\t<option value="LSMatFormat">LSMatFormat</option>\n+\t\t\t<option value="MultiplexedPairedEndBarcodeInSequenceDirFmt">MultiplexedPairedEndBarcodeInSequenceDirFmt</option>\n+\t\t\t<option value="MultiplexedSingleEndBarcodeInSequenceDirFmt">MultiplexedSingleEndBarcodeInSequenceDirFmt</option>\n+\t\t\t<option value="NewickDirectoryFormat">NewickDirectoryFormat</option>\n+\t\t\t<option value="NewickFormat">NewickFormat</option>\n+\t\t\t<option value="OrdinationDirectoryFormat">OrdinationDirectoryFormat</option>\n+\t\t\t<option value="OrdinationFormat">OrdinationFormat</option>\n+\t\t\t<option value="PairedDNASequencesDirectoryFormat">PairedDNASequencesDirectoryFormat</option>\n+\t\t\t<option selected="True" value="PairedEndFastqManifestPhred33">PairedEndFastqManifestPhred33</option>\n+\t\t\t<option value="PairedEndFastqManifestPhred64">PairedEndFastqManifestPhred64</option>\n+\t\t\t<option value="QIIME1DemuxDirFmt">QIIME1DemuxDirFmt</option>\n+\t\t\t<option value="QIIME1DemuxFormat">QIIME1DemuxFormat</option>\n+\t\t\t<option value="QualityFilterStatsDirFmt">QualityFilterStatsDirFmt</option>\n+\t\t\t<option value="QualityFilterStatsFmt">QualityFilterStatsFmt</option>\n+\t\t\t<option value="SingleEndFastqManifestPhred33">SingleEndFastqManifestPhred33</option>\n+\t\t\t<option value="SingleEndFastqManifestPhred64">SingleEndFastqManifestPhred64</option>\n+\t\t\t<option value="SingleLanePerSamplePairedEndFastqDirFmt">SingleLanePerSamplePairedEndFastqDirFmt</option>\n+\t\t\t<option value="SingleLanePerSampleSingleEndFastqDirFmt">SingleLanePerSampleSingleEndFastqDirFmt</option>\n+\t\t\t<option value="TSVTaxonomyDirectoryFormat">TSVTaxonomyDirectoryFormat</option>\n+\t\t\t<option value="TSVTaxonomyFormat">TSVTaxonomyFormat</option>\n+\t\t\t<option value="TaxonomicClassiferTemporaryPickleDirFmt">TaxonomicClassiferTemporaryPickleDirFmt</option>\n+\t\t\t<option value="UchimeStatsDirFmt">UchimeStatsDirFmt</option>\n+\t\t\t<option value="UchimeStatsFmt">UchimeStatsFmt</option>\n+\t\t</param>\n+\t</inputs>\n+\t<outputs>\n+\t\t<data format="qza" label="${tool.name} on ${on_string}: outputpath.qza" name="outputpath"/>\n+\t</outputs>\n+\t    <stdio>\n+        <exit_code range="2"   level="warning"   description="Error" />\n+    </stdio>\n+\t<help>\n+</help>\n+<macros>\n+\t<import>qiime_citation.xml</import>\n+</macros>\n+<expand macro="qiime_citation" />\n+</tool>\n'
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_cluster-features-closed-reference.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_cluster-features-closed-reference.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,101 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_cluster-features-closed-reference" name="qiime vsearch cluster-features-closed-reference" version="2018.4">
+ <description> -  Closed-reference clustering of features.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch cluster-features-closed-reference --p-perc-identity="$ppercidentity" --i-table=$itable --i-sequences=$isequences --i-reference-sequences=$ireferencesequences --o-unmatched-sequences=ounmatchedsequences
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-clustered-table=oclusteredtable
+ #if str($pstrand) != 'None':
+  --p-strand=$pstrand
+ #end if
+  --o-clustered-sequences=oclusteredsequences
+ #set $pthreads = '${GALAXY_SLOTS:-4}'
+
+ #if str($pthreads):
+  --p-threads="$pthreads"
+ #end if
+ ;
+ cp ounmatchedsequences.qza $ounmatchedsequences;
+ cp oclusteredtable.qza $oclusteredtable;
+ cp oclusteredsequences.qza $oclusteredsequences
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] The sequences corresponding to the features in table.  [required]" name="isequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to be clustered. [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-sequences: FeatureData[Sequence] The sequences to use as cluster centroids. [required]" name="ireferencesequences" optional="False" type="data"/>
+
+ <param label="--p-perc-identity: The percent identity at which clustering should be performed. This parameter maps to vsearch's --id parameter.  [required]" name="ppercidentity" optional="False" type="text"/>
+
+ <param label="--p-strand: Search plus (i.e., forward) or both (i.e.,
+                                  forward and reverse complement) strands.
+                                  [default: plus]" name="pstrand" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="both">both</option>
+ <option value="plus">plus</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: unmatched-sequences.qza" name="ounmatchedsequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: clustered-table.qza" name="oclusteredtable"/>
+ <data format="qza" label="${tool.name} on ${on_string}: clustered-sequences.qza" name="oclusteredsequences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Closed-reference clustering of features.
+-----------------------------------------
+
+Given a feature table and the associated feature sequences, cluster the
+features against a reference database based on user-specified percent
+identity threshold of their sequences. This is not a general-purpose
+closed-reference clustering method, but rather is intended to be used for
+clustering the results of quality-filtering/dereplication methods, such as
+DADA2, or for re-clustering a FeatureTable at a lower percent identity than
+it was originally clustered at. When a group of features in the input table
+are clustered into a single feature, the frequency of that single feature
+in a given sample is the sum of the frequencies of the features that were
+clustered in that sample. Feature identifiers will be inherited from the
+centroid feature of each cluster. See the vsearch documentation for details
+on how sequence clustering is performed.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    The sequences corresponding to the features in table.
+table : FeatureTable[Frequency]
+    The feature table to be clustered.
+reference_sequences : FeatureData[Sequence]
+    The sequences to use as cluster centroids.
+perc_identity : Float % Range(0, 1, inclusive_start=False, inclusive_end=True)
+    The percent identity at which clustering should be performed. This
+    parameter maps to vsearch's --id parameter.
+strand : Str % Choices({'both', 'plus'}), optional
+    Search plus (i.e., forward) or both (i.e., forward and reverse
+    complement) strands.
+
+Returns
+-------
+clustered_table : FeatureTable[Frequency]
+    The table following clustering of features.
+clustered_sequences : FeatureData[Sequence]
+    The sequences representing clustered features, relabeled by the
+    reference IDs.
+unmatched_sequences : FeatureData[Sequence]
+    The sequences which failed to match any reference sequences. This
+    output maps to vsearch's --notmatched parameter.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_cluster-features-de-novo.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_cluster-features-de-novo.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,78 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_cluster-features-de-novo" name="qiime vsearch cluster-features-de-novo" version="2018.4">
+ <description> - De novo clustering of features.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch cluster-features-de-novo --p-perc-identity="$ppercidentity" --i-table=$itable --i-sequences=$isequences
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-clustered-table=oclusteredtable --o-clustered-sequences=oclusteredsequences
+ #set $pthreads = '${GALAXY_SLOTS:-4}'
+
+ #if str($pthreads):
+  --p-threads="$pthreads"
+ #end if
+
+ ;
+ cp oclusteredtable.qza $oclusteredtable;
+ cp oclusteredsequences.qza $oclusteredsequences
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] The sequences corresponding to the features in table.  [required]" name="isequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to be clustered. [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-perc-identity: The percent identity at which clustering should be performed. This parameter maps to vsearch's --id parameter.  [required]" name="ppercidentity" optional="False" type="text"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: clustered-table.qza" name="oclusteredtable"/>
+ <data format="qza" label="${tool.name} on ${on_string}: clustered-sequences.qza" name="oclusteredsequences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+De novo clustering of features.
+--------------------------------
+
+Given a feature table and the associated feature sequences, cluster the
+features based on user-specified percent identity threshold of their
+sequences. This is not a general-purpose de novo clustering method, but
+rather is intended to be used for clustering the results of quality-
+filtering/dereplication methods, such as DADA2, or for re-clustering a
+FeatureTable at a lower percent identity than it was originally clustered
+at. When a group of features in the input table are clustered into a single
+feature, the frequency of that single feature in a given sample is the sum
+of the frequencies of the features that were clustered in that sample.
+Feature identifiers and sequences will be inherited from the centroid
+feature of each cluster. See the vsearch documentation for details on how
+sequence clustering is performed.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    The sequences corresponding to the features in table.
+table : FeatureTable[Frequency]
+    The feature table to be clustered.
+perc_identity : Float % Range(0, 1, inclusive_start=False, inclusive_end=True)
+    The percent identity at which clustering should be performed. This
+    parameter maps to vsearch's --id parameter.
+
+Returns
+-------
+clustered_table : FeatureTable[Frequency]
+    The table following clustering of features.
+clustered_sequences : FeatureData[Sequence]
+    Sequences representing clustered features.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_cluster-features-open-reference.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_cluster-features-open-reference.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,111 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_cluster-features-open-reference" name="qiime vsearch cluster-features-open-reference" version="2018.4">
+ <description> -  Open-reference clustering of features.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch cluster-features-open-reference --p-perc-identity="$ppercidentity" --i-table=$itable --i-sequences=$isequences --i-reference-sequences=$ireferencesequences
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-clustered-table=oclusteredtable
+ #if str($pstrand) != 'None':
+  --p-strand=$pstrand
+ #end if
+  --o-clustered-sequences=oclusteredsequences --o-new-reference-sequences=onewreferencesequences
+ #set $pthreads = '${GALAXY_SLOTS:-4}'
+
+ #if str($pthreads):
+  --p-threads="$pthreads"
+ #end if
+
+ ;
+ cp oclusteredtable.qza $oclusteredtable;
+ cp oclusteredsequences.qza $oclusteredsequences;
+ cp onewreferencesequences.qza $onewreferencesequences
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] The sequences corresponding to the features in table.  [required]" name="isequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] The feature table to be clustered. [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-sequences: FeatureData[Sequence] The sequences to use as cluster centroids. [required]" name="ireferencesequences" optional="False" type="data"/>
+
+ <param label="--p-perc-identity: The percent identity at which clustering should be performed. This parameter maps to vsearch's --id parameter.  [required]" name="ppercidentity" optional="False" type="text"/>
+
+ <param label="--p-strand: Search plus (i.e., forward) or both (i.e.,
+                                  forward and reverse complement) strands.
+                                  [default: plus]" name="pstrand" optional="True" type="select">
+ <option selected="True" value="None">Selection is Optional</option>
+ <option value="both">both</option>
+ <option value="plus">plus</option>
+ </param>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: clustered-table.qza" name="oclusteredtable"/>
+ <data format="qza" label="${tool.name} on ${on_string}: clustered-sequences.qza" name="oclusteredsequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: new-reference-sequences.qza" name="onewreferencesequences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Open-reference clustering of features.
+---------------------------------------
+
+Given a feature table and the associated feature sequences, cluster the
+features against a reference database based on user-specified percent
+identity threshold of their sequences. Any sequences that don't match are
+then clustered de novo. This is not a general-purpose clustering method,
+but rather is intended to be used for clustering the results of quality-
+filtering/dereplication methods, such as DADA2, or for re-clustering a
+FeatureTable at a lower percent identity than it was originally clustered
+at. When a group of features in the input table are clustered into a single
+feature, the frequency of that single feature in a given sample is the sum
+of the frequencies of the features that were clustered in that sample.
+Feature identifiers will be inherited from the centroid feature of each
+cluster. For features that match a reference sequence, the centroid feature
+is that reference sequence, so its identifier will become the feature
+identifier. The clustered_sequences result will contain feature
+representative sequences that are derived from the sequences input for all
+features in clustered_table. This will always be the most abundant sequence
+in the cluster. The new_reference_sequences result will contain the entire
+reference database, plus feature representative sequences for any de novo
+features. This is intended to be used as a reference database in subsequent
+iterations of cluster_features_open_reference, if applicable. See the
+vsearch documentation for details on how sequence clustering is performed.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    The sequences corresponding to the features in table.
+table : FeatureTable[Frequency]
+    The feature table to be clustered.
+reference_sequences : FeatureData[Sequence]
+    The sequences to use as cluster centroids.
+perc_identity : Float % Range(0, 1, inclusive_start=False, inclusive_end=True)
+    The percent identity at which clustering should be performed. This
+    parameter maps to vsearch's --id parameter.
+strand : Str % Choices({'both', 'plus'}), optional
+    Search plus (i.e., forward) or both (i.e., forward and reverse
+    complement) strands.
+
+Returns
+-------
+clustered_table : FeatureTable[Frequency]
+    The table following clustering of features.
+clustered_sequences : FeatureData[Sequence]
+    Sequences representing clustered features.
+new_reference_sequences : FeatureData[Sequence]
+    The new reference sequences. This can be used for subsequent runs of
+    open-reference clustering for consistent definitions of features across
+    open-reference feature tables.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_dereplicate-sequences.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_dereplicate-sequences.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,57 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_dereplicate-sequences" name="qiime vsearch dereplicate-sequences" version="2018.4">
+ <description> - Dereplicate sequences.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch dereplicate-sequences --i-sequences=$isequences --o-dereplicated-sequences=odereplicatedsequences
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+  --o-dereplicated-table=odereplicatedtable;
+
+ cp odereplicatedsequences.qza $odereplicatedsequences;
+ cp odereplicatedtable.qza $odereplicatedtable;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: SampleData[JoinedSequencesWithQuality] | SampleData[SequencesWithQuality] | SampleData[Sequences] The sequences to be dereplicated. [required]" name="isequences" optional="False" type="data"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: dereplicated-sequences.qza" name="odereplicatedsequences"/>
+ <data format="qza" label="${tool.name} on ${on_string}: dereplicated-table.qza" name="odereplicatedtable"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Dereplicate sequences.
+-----------------------
+
+Dereplicate sequence data and create a feature table and feature
+representative sequences. Feature identfiers in the resulting artifacts
+will be the sha1 hash of the sequence defining each feature. If clustering
+of features into OTUs is desired, the resulting artifacts can be passed to
+the cluster_features_* methods in this plugin.
+
+Parameters
+----------
+sequences : SampleData[JoinedSequencesWithQuality] | SampleData[SequencesWithQuality] | SampleData[Sequences]
+    The sequences to be dereplicated.
+
+Returns
+-------
+dereplicated_table : FeatureTable[Frequency]
+    The table of dereplicated sequences.
+dereplicated_sequences : FeatureData[Sequence]
+    The dereplicated sequences.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_join-pairs.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_join-pairs.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,156 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_join-pairs" name="qiime vsearch join-pairs" version="2018.4">
+ <description> - Join paired-end reads.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch join-pairs --i-demultiplexed-seqs=$idemultiplexedseqs
+
+ #if $pminovlen:
+  --p-minovlen=$pminovlen
+ #end if
+
+ #if str($ptruncqual):
+  --p-truncqual="$ptruncqual"
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if str($pminmergelen):
+  --p-minmergelen="$pminmergelen"
+ #end if
+
+ #if $pmaxdiffs:
+  --p-maxdiffs=$pmaxdiffs
+ #end if
+
+ #if str($pqminout):
+  --p-qminout="$pqminout"
+ #end if
+
+ #if str($pmaxmergelen):
+  --p-maxmergelen="$pmaxmergelen"
+ #end if
+
+ #if str($pmaxns):
+  --p-maxns="$pmaxns"
+ #end if
+
+ #if $pallowmergestagger:
+    --p-allowmergestagger
+  #else
+   --p-no-allowmergestagger
+ #end if
+
+ #if $pminlen:
+  --p-minlen=$pminlen
+ #end if
+
+ #if $pqmax:
+  --p-qmax=$pqmax
+ #end if
+
+ #if str($pmaxee):
+  --p-maxee="$pmaxee"
+ #end if
+
+ #if str($pqmin):
+  --p-qmin="$pqmin"
+ #end if
+
+ #if $pqmaxout:
+  --p-qmaxout=$pqmaxout
+ #end if
+  --o-joined-sequences=ojoinedsequences;
+
+ cp ojoinedsequences.qza $ojoinedsequences;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-demultiplexed-seqs: SampleData[PairedEndSequencesWithQuality] The demultiplexed paired-end sequences to be joined.  [required]" name="idemultiplexedseqs" optional="False" type="data"/>
+
+ <param label="--p-truncqual: Truncate sequences at the first base with the specified quality score value or lower. [optional]" name="ptruncqual" optional="True" type="text"/>
+
+ <param label="--p-minlen: Sequences shorter than minlen after truncation are discarded.  [default: 1]" name="pminlen" optional="True" type="integer" value="1"/>
+ <param label="--p-maxns: Sequences with more than maxns N characters are discarded.  [optional]" name="pmaxns" optional="True" type="text"/>
+
+ <param label="--p-allowmergestagger: --p-no-allowmergestagger Allow joining of staggered read pairs. [default: False]" name="pallowmergestagger" checked="False" type="boolean"/>
+
+ <param label="--p-minovlen: Minimum overlap length of forward and reverse reads for joining.  [default: 10]" name="pminovlen" optional="True" type="integer" value="10"/>
+ <param label="--p-maxdiffs: Maximum number of mismatches in the forward/reverse read overlap for joining. [default: 10]" name="pmaxdiffs" optional="True" type="integer" value="10"/>
+
+ <param label="--p-minmergelen: Minimum length of the joined read to be retained.  [optional]" name="pminmergelen" optional="True" type="text"/>
+ <param label="--p-maxmergelen: Maximum length of the joined read to be retained.  [optional]" name="pmaxmergelen" optional="True" type="text"/>
+
+ <param label="--p-maxee: Maximum number of expected errors in the joined read to be retained.  [optional]" name="pmaxee" optional="True" type="text"/>
+
+ <param label="--p-qmin: The minimum allowed quality score in the input.  [default: 0]" name="pqmin" optional="True" type="text" value="0"/>
+ <param label="--p-qminout: The minimum allowed quality score to use in output.  [default: 0]" name="pqminout" optional="True" type="text" value="0"/>
+
+ <param label="--p-qmax: The maximum allowed quality score in the input.  [default: 41]" name="pqmax" optional="True" type="integer" value="41"/>
+ <param label="--p-qmaxout: The maximum allowed quality score to use in output.  [default: 41]" name="pqmaxout" optional="True" type="integer" value="41"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: joined-sequences.qza" name="ojoinedsequences"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Join paired-end reads.
+-----------------------
+
+Join paired-end sequence reads using vsearch's merge_pairs function. The
+qmin, qminout, qmax, and qmaxout parameters should only need to be modified
+when working with older fastq sequence data. See the vsearch documentation
+for details on how paired-end joining is performed, and for more
+information on the parameters to this method.
+
+Parameters
+----------
+demultiplexed_seqs : SampleData[PairedEndSequencesWithQuality]
+    The demultiplexed paired-end sequences to be joined.
+truncqual : Int % Range(0, None), optional
+    Truncate sequences at the first base with the specified quality score
+    value or lower.
+minlen : Int % Range(0, None), optional
+    Sequences shorter than minlen after truncation are discarded.
+maxns : Int % Range(0, None), optional
+    Sequences with more than maxns N characters are discarded.
+allowmergestagger : Bool, optional
+    Allow joining of staggered read pairs.
+minovlen : Int % Range(0, None), optional
+    Minimum overlap length of forward and reverse reads for joining.
+maxdiffs : Int % Range(0, None), optional
+    Maximum number of mismatches in the forward/reverse read overlap for
+    joining.
+minmergelen : Int % Range(0, None), optional
+    Minimum length of the joined read to be retained.
+maxmergelen : Int % Range(0, None), optional
+    Maximum length of the joined read to be retained.
+maxee : Float % Range(0.0, None), optional
+    Maximum number of expected errors in the joined read to be retained.
+qmin : Int % Range(-5, 2, inclusive_end=True), optional
+    The minimum allowed quality score in the input.
+qminout : Int % Range(-5, 2, inclusive_end=True), optional
+    The minimum allowed quality score to use in output.
+qmax : Int % Range(40, 41, inclusive_end=True), optional
+    The maximum allowed quality score in the input.
+qmaxout : Int % Range(40, 41, inclusive_end=True), optional
+    The maximum allowed quality score to use in output.
+
+Returns
+-------
+joined_sequences : SampleData[JoinedSequencesWithQuality]
+    The joined sequences.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_uchime-denovo.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_uchime-denovo.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,103 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_uchime-denovo" name="qiime vsearch uchime-denovo" version="2018.4">
+ <description> - De novo chimera filtering with vsearch.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch uchime-denovo --i-table=$itable --i-sequences=$isequences
+
+ #if $pdn:
+  --p-dn=$pdn
+ #end if
+  --o-nonchimeras=ononchimeras --o-stats=ostats --o-chimeras=ochimeras
+ #if $pmindiffs:
+  --p-mindiffs=$pmindiffs
+ #end if
+
+ #if $pminh:
+  --p-minh=$pminh
+ #end if
+
+ #if str($cmdconfig) != 'None':
+  --cmd-config=$cmdconfig
+ #end if
+
+ #if $pmindiv:
+  --p-mindiv=$pmindiv
+ #end if
+
+ #if $pxn:
+  --p-xn=$pxn
+ #end if
+ ;
+ cp ononchimeras.qza $ononchimeras;
+ cp ostats.qza $ostats;
+ cp ochimeras.qza $ochimeras;
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] The feature sequences to be chimera-checked. [required]" name="isequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table (used for computing total feature abundances).  [required]" name="itable" optional="False" type="data"/>
+
+ <param label="--p-dn: No vote pseudo-count, corresponding to the parameter n in the chimera scoring function. [default: 1.4]" name="pdn" optional="True" type="float" value="1.4"/>
+
+ <param label="--p-mindiffs: Minimum number of differences per segment. [default: 3]" name="pmindiffs" optional="True" type="integer" value="3"/>
+ <param label="--p-mindiv: Minimum divergence from closest parent. [default: 0.8]" name="pmindiv" optional="True" type="float" value="0.8"/>
+ <param label="--p-minh: Minimum score (h). Increasing this value tends to reduce the number of false positives and to decrease sensitivity. [default: 0.28]" name="pminh" optional="True" type="float" value="0.28"/>
+
+ <param label="--p-xn: No vote weight, corresponding to the parameter beta in the scoring function. [default: 8.0]" name="pxn" optional="True" type="float" value="8.0"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: non-chimeras.qza" name="ononchimeras"/>
+ <data format="qza" label="${tool.name} on ${on_string}: stats.qza" name="ostats"/>
+ <data format="qza" label="${tool.name} on ${on_string}: chimeras.qza" name="ochimeras"/>
+ </outputs>
+ <help>
+ <![CDATA[
+De novo chimera filtering with vsearch.
+----------------------------------------
+
+Apply the vsearch uchime_denovo method to identify chimeric feature
+sequences. The results of this method can be used to filter chimeric
+features from the corresponding feature table. For additional details,
+please refer to the vsearch documentation.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    The feature sequences to be chimera-checked.
+table : FeatureTable[Frequency]
+    Feature table (used for computing total feature abundances).
+dn : Float % Range(0.0, None), optional
+    No vote pseudo-count, corresponding to the parameter n in the chimera
+    scoring function.
+mindiffs : Int % Range(1, None), optional
+    Minimum number of differences per segment.
+mindiv : Float % Range(0.0, None), optional
+    Minimum divergence from closest parent.
+minh : Float % Range(0.0, 1.0, inclusive_end=True), optional
+    Minimum score (h). Increasing this value tends to reduce the number of
+    false positives and to decrease sensitivity.
+xn : Float % Range(1.0, None, inclusive_start=False), optional
+    No vote weight, corresponding to the parameter beta in the scoring
+    function.
+
+Returns
+-------
+chimeras : FeatureData[Sequence]
+    The chimeric sequences.
+nonchimeras : FeatureData[Sequence]
+    The non-chimeric sequences.
+stats : UchimeStats
+    Summary statistics from chimera checking.
+    ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 qiime2/qiime_vsearch_uchime-ref.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/qiime2/qiime_vsearch_uchime-ref.xml Thu May 24 05:21:07 2018 -0400
[
@@ -0,0 +1,113 @@
+<?xml version="1.0" ?>
+<tool id="qiime_vsearch_uchime-ref" name="qiime vsearch uchime-ref" version="2018.4">
+ <description> - Reference-based chimera filtering with vsearch.</description>
+ <requirements>
+ <requirement type="package" version="2018.4">qiime2</requirement>
+ </requirements>
+ <command>
+ <![CDATA[
+ qiime vsearch uchime-ref --i-table=$itable --i-sequences=$isequences --i-reference-sequences=$ireferencesequences --o-nonchimeras=ononchimeras --o-stats=ostats
+
+#if $pmindiffs:
+ --p-mindiffs=$pmindiffs
+#end if
+
+#set $pthreads = '${GALAXY_SLOTS:-4}'
+
+#if str($pthreads):
+ --p-threads="$pthreads"
+#end if
+
+
+#if $pdn:
+ --p-dn=$pdn
+#end if
+ --o-chimeras=ochimeras
+#if str($cmdconfig) != 'None':
+ --cmd-config=$cmdconfig
+#end if
+
+#if $pminh:
+ --p-minh=$pminh
+#end if
+
+#if $pmindiv:
+ --p-mindiv=$pmindiv
+#end if
+
+#if $pxn:
+ --p-xn=$pxn
+#end if
+;
+cp ononchimeras.qza $ononchimeras;
+cp ostats.qza $ostats;
+cp ochimeras.qza $ochimeras
+ ]]>
+ </command>
+ <inputs>
+ <param format="qza,no_unzip.zip" label="--i-sequences: FeatureData[Sequence] The feature sequences to be chimera-checked. [required]" name="isequences" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-table: FeatureTable[Frequency] Feature table (used for computing total feature abundances).  [required]" name="itable" optional="False" type="data"/>
+ <param format="qza,no_unzip.zip" label="--i-reference-sequences: FeatureData[Sequence] The non-chimeric reference sequences. [required]" name="ireferencesequences" optional="False" type="data"/>
+
+ <param label="--p-dn: No vote pseudo-count, corresponding to the parameter n in the chimera scoring function. [default: 1.4]" name="pdn" optional="True" type="float" value="1.4"/>
+
+ <param label="--p-mindiffs: Minimum number of differences per segment. [default: 3]" name="pmindiffs" optional="True" type="integer" value="3"/>
+ <param label="--p-mindiv: Minimum divergence from closest parent. [default: 0.8]" name="pmindiv" optional="True" type="float" value="0.8"/>
+ <param label="--p-minh: Minimum score (h). Increasing this value tends to reduce the number of false positives and to decrease sensitivity. [default: 0.28]" name="pminh" optional="True" type="float" value="0.28"/>
+
+ <param label="--p-xn: No vote weight, corresponding to the parameter beta in the scoring function. [default: 8.0]" name="pxn" optional="True" type="float" value="8.0"/>
+
+ <param label="--cmd-config: Use config file for command options" name="cmdconfig" optional="True" type="data"/>
+ </inputs>
+ <outputs>
+ <data format="qza" label="${tool.name} on ${on_string}: non-chimeras.qza" name="ononchimeras"/>
+ <data format="qza" label="${tool.name} on ${on_string}: stats.qza" name="ostats"/>
+ <data format="qza" label="${tool.name} on ${on_string}: chimeras.qza" name="ochimeras"/>
+ </outputs>
+ <help>
+ <![CDATA[
+Reference-based chimera filtering with vsearch.
+------------------------------------------------
+
+Apply the vsearch uchime_ref method to identify chimeric feature sequences.
+The results of this method can be used to filter chimeric features from the
+corresponding feature table. For additional details, please refer to the
+vsearch documentation.
+
+Parameters
+----------
+sequences : FeatureData[Sequence]
+    The feature sequences to be chimera-checked.
+table : FeatureTable[Frequency]
+    Feature table (used for computing total feature abundances).
+reference_sequences : FeatureData[Sequence]
+    The non-chimeric reference sequences.
+dn : Float % Range(0.0, None), optional
+    No vote pseudo-count, corresponding to the parameter n in the chimera
+    scoring function.
+mindiffs : Int % Range(1, None), optional
+    Minimum number of differences per segment.
+mindiv : Float % Range(0.0, None), optional
+    Minimum divergence from closest parent.
+minh : Float % Range(0.0, 1.0, inclusive_end=True), optional
+    Minimum score (h). Increasing this value tends to reduce the number of
+    false positives and to decrease sensitivity.
+xn : Float % Range(1.0, None, inclusive_start=False), optional
+    No vote weight, corresponding to the parameter beta in the scoring
+    function.
+
+Returns
+-------
+chimeras : FeatureData[Sequence]
+    The chimeric sequences.
+nonchimeras : FeatureData[Sequence]
+    The non-chimeric sequences.
+stats : UchimeStats
+    Summary statistics from chimera checking.
+ ]]>
+ </help>
+<macros>
+ <import>qiime_citation.xml</import>
+</macros>
+<expand macro="qiime_citation" />
+</tool>
b
diff -r 000000000000 -r 51b9b6b57732 tool_data/ref_classifier.loc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data/ref_classifier.loc Thu May 24 05:21:07 2018 -0400
b
@@ -0,0 +1,5 @@
+#<unique_id>  <name>  <database_caption>  <qza_file_path>
+#
+#For each reference database, you need to download the qza file in qiime path
+#
+
b
diff -r 000000000000 -r 51b9b6b57732 tool_data/ref_taxnonomy.loc
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data/ref_taxnonomy.loc Thu May 24 05:21:07 2018 -0400
b
@@ -0,0 +1,5 @@
+#<unique_id>  <name>  <database_caption>  <qza_file_path>
+#
+#For each reference database, you need to download the qza file in qiime path
+#
+
b
diff -r 000000000000 -r 51b9b6b57732 tool_data_table_conf.xml.sample
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tool_data_table_conf.xml.sample Thu May 24 05:21:07 2018 -0400
b
@@ -0,0 +1,11 @@
+<tables>
+    <table name="taxonomy_fp" comment_char="#">
+        <columns>value, name, dbkey, path</columns>
+        <file path="tool_data/ref_taxnonomy.loc" />
+    </table>
+    <table name="classifier_fp" comment_char="#">
+        <columns>value, name, dbkey, path</columns>
+        <file path="tool-data/ref_classifier.loc" />
+    </table>
+</tables>
+