comparison macros.xml @ 0:ce4aec98949d draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/dada2 commit f8b6b6e72914ad6bcca8423dfa03f59bde80992e"
author iuc
date Fri, 08 Nov 2019 18:48:34 -0500
parents
children 6b4ddc3b64bd
comparison
equal deleted inserted replaced
-1:000000000000 0:ce4aec98949d
1 <?xml version="1.0"?>
2 <macros>
3 <xml name="requirements">
4 <requirements>
5 <requirement type="package" version="@DADA2_VERSION@">bioconductor-dada2</requirement>
6 <yield/>
7 </requirements>
8 </xml>
9
10 <token name="@DADA2_VERSION@">1.12</token>
11 <token name="@WRAPPER_VERSION@">0</token>
12
13 <xml name="version_command">
14 <version_command><![CDATA[
15 echo $(R --version | grep version | grep -v GNU)", dada2 version" $(R --vanilla --slave -e "library(dada2); cat(sessionInfo()\$otherPkgs\$dada2\$Version)" 2> /dev/null | grep -v -i "WARNING: ")
16 ]]></version_command>
17 </xml>
18
19 <xml name="stdio">
20 <stdio>
21 <regex match="Error: cannot allocate" source="stderr" level="fatal_oom" description="Out of memory error occurred" />
22 <regex match="'Calloc' could not allocate memory" source="stderr" level="fatal_oom" description="Out of memory error occurred" />
23 </stdio>
24 </xml>
25
26 <xml name="citations">
27 <citations>
28 <citation type="doi">10.1038/nmeth.3869</citation>
29 <yield/>
30 </citations>
31 </xml>
32
33 <token name="@DADA_UNIQUES@">dada2_dada,dada2_mergepairs</token>
34
35 <!-- function to read dada2 data types
36 - dada, and mergepairs are simply read as RDS
37 - sequence_table is a named integer matrix (rows=samples, columns=ASVs)
38 - uniques is a named integer vector (columns=ASVs, only one rows)-->
39 <token name="@READ_FOO@"><![CDATA[
40 read.uniques <- function ( fname ) {
41 p <- read.table(fname, header=F, sep="\t")
42 n <-x[,2]
43 names(n)<-x[,1]
44 }
45 #def read_data($dataset)
46 #if $dataset.is_of_type('dada2_sequencetable')
47 t(as.matrix( read.table('$dataset', header=T, sep="\t", row.names=1) ))
48 #else if $dataset.is_of_type('dada2_uniques')
49 read.uniques('$dataset')
50 #else if $dataset.is_of_type('tabular')
51 read.table('$dataset', header=T, sep="\t", row.names=1)
52 #else
53 readRDS('$dataset')
54 #end if
55 #end def
56 ]]></token>
57 <!-- function to write dada2 data types (the content or the R variable 'out' is written)
58 - dada, and mergepairs are written as RDS
59 - sequence_table is a named integer matrix (rows=samples, columns=ASVs)
60 - uniques is a named integer vector (columns=ASVs, only one rows)-->
61 <token name="@WRITE_FOO@"><![CDATA[
62 write.data <- function( data, fname, type ){
63 if( type == 'dada2_uniques'){
64 write.table(data, file = fname, quote = F, sep = "\t", row.names = T, col.names = F)
65 }else if( type== 'dada2_sequencetable'){
66 write.table(t(data), file=fname, quote=F, sep="\t", row.names = T, col.names = NA)
67 }else{
68 saveRDS(data, file=fname)
69 }
70 }
71 ]]></token>
72
73 <xml name="fastq_input" token_multiple="" token_collection_type="" token_argument_fwd="" token_argument_rev="">
74 <conditional name="paired_cond">
75 <param name="paired_select" type="select" label="Paired reads">
76 <option value="paired">paired - in a data set pair</option>
77 <option value="separate">paired - in two separate data sets</option>
78 <option value="single">single</option>
79 </param>
80 <when value="paired">
81 <param name="reads" argument="@ARGUMENT_FWD@/@ARGUMENT_REV@" type="data_collection" collection_type="@COLLECTION_TYPE@" format="fastq,fastq.gz" label="Paired short read data"/>
82 </when>
83 <when value="separate">
84 <param name="reads" argument="@ARGUMENT_FWD@" type="data" format="fastq,fastq.gz" multiple="@MULTIPLE@" label="Forward read data"/>
85 <param name="sdaer" argument="@ARGUMENT_REV@" type="data" format="fastq,fastq.gz" multiple="@MULTIPLE@" label="Reverse read data"/>
86 </when>
87 <when value="single">
88 <param name="reads" argument="@ARGUMENT_FWD@" type="data" format="fastq,fastq.gz" multiple="@MULTIPLE@" label="Short read data"/>
89 </when>
90 </conditional>
91 </xml>
92
93 <!-- for filterAndTrim -->
94 <xml name="trimmers">
95 <section name="trim" title="Trimming parameters">
96 <param argument="truncQ" type="integer" value="2" min="0" label="Truncate reads at quality threshold" help="Truncate reads at the first instance of a quality score less than or equal to this threshold"/>
97 <param argument="trimLeft" type="integer" value="0" min="0" label="Trim start of each read" help="The number of nucleotides to remove from the start of each read."/>
98 <param argument="trimRight" type="integer" value="0" min="0" label="Trim end of each read" help="The number of nucleotides to remove from the end of each read"/>
99 <param argument="truncLen" type="integer" value="0" min="0" label="Truncate read length" help="Truncate reads after this amount of bases. Reads shorter than this are discarded. (default 0: no truncation)"/>
100 </section>
101 </xml>
102 <xml name="filters">
103 <section name="filter" title="Filtering parameters">
104 <param argument="maxLen" type="integer" value="" optional="true" min="0" label="Remove long reads" help="Remove reads with length greater than this value. Default: no length threshold"/>
105 <param argument="minLen" type="integer" value="20" min="0" label="Remove short reads" help="Remove reads with length less than this value. Default: 20"/>
106 <param argument="maxN" type="integer" value="0" min="0" label="Remove reads with more Ns" help="Note that some of the subsequent dada pipeline steps do not allow Ns"/>
107 <param argument="minQ" type="integer" value="0" min="0" label="Remove low quality reads" help="Reads contain a quality score less than this value will be discarded"/>
108 <param argument="maxEE" type="integer" value="" optional="true" min="0" label="Remove reads by number expected errors" help="Reads with a higher number of expected errors (EE) will be discarded, where EE = sum(10^(-Q_i/10)), with Q are the nominal quality scores at the read positions"/>
109 </section>
110 </xml>
111
112 <xml name="errorEstimationFunction">
113 <param name="errfoo" argument="errorEstimationFunction" type="select" label="Error function">
114 <option value="loessErrfun">loess: Use a loess fit to estimate error rates from transition counts</option>
115 <option value="noqualErrfun">noqual: Estimate error rates for each type of transition while ignoring quality scores.</option>
116 <option value="PacBioErrfun">PacBio: Estimate error rates from transition counts in PacBio CCS data.</option>
117 </param>
118 </xml>
119 <token name="@HELP_OVERVIEW@"><![CDATA[
120 Overview
121 ........
122
123 The intended use of the dada2 tools for paired sequencing data is shown in the following image.
124
125 .. image:: pairpipe.png
126
127 For single end data you the steps "Unzip collection" and "mergePairs" are not necessary.
128
129 More information may be found on the dada2 homepage:: https://benjjneb.github.io/dada2/index.html (in particular tutorials) or the documentation of dada2's R package https://bioconductor.org/packages/release/bioc/html/dada2.html (in particular the pdf which contains the full documentation of all parameters)
130 ]]></token>
131 </macros>