diff flaimapper.xml @ 38:ee6d8c07205b draft

planemo upload for repository https://github.com/ErasmusMC-Bioinformatics/galaxytools-emc/tree/master/tools/flaimapper commit 0c5344c3f9c398cdcc18f6bb61681afe48f0c306
author yhoogstrate
date Mon, 23 Jan 2017 03:08:41 -0500
parents 3074e91f9f80
children 62d46dd9ac42
line wrap: on
line diff
--- a/flaimapper.xml	Fri Jul 31 05:33:05 2015 -0400
+++ b/flaimapper.xml	Mon Jan 23 03:08:41 2017 -0500
@@ -1,65 +1,133 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<tool id="flaimapper" name="FlaiMapper" version="1.2.1.w2">
-    <description>Detect small ncRNA derived fragments using Fragment Location Annotation Identification Mapper.</description>
+<tool id="flaimapper" name="FlaiMapper" version="2.3.4-0">
+    <description>detects small ncRNA derived fragments in small RNA-Seq data</description>
     <requirements>
-        <requirement type="package" version="1.2.1">flaimapper</requirement>
+        <requirement type="package" version="2.3.4">flaimapper</requirement>
     </requirements>
     
-    <stdio>
-        <regex match="in parse_gff.*?ValueError: invalid literal for int\(\) with base 10" source="stderr" level="fatal" description="The GTF file is corrupt: double check the columns of your GTF/GFF file.\n" />
-        <regex match="[fai_load] build FASTA index." source="stderr" level="log" />
-    </stdio>
+    <version_command>flaimapper --version 2&gt;&amp;1 | head -n 1</version_command>
     
-    <version_command>flaimapper --version</version_command>
-    
-    <command><![CDATA[
+    <command detect_errors="exit_code"><![CDATA[
         flaimapper
-             -v
-             -f $output_format
-             -o $output
-             -m $mask
-             -r $fasta
-        
-        #for $alignment in $alignments
-            $alignment
-        #end for
+            -v
+            -f '${output_select.output_format}'
+            -o '${output}'
+
+            #if $output_select.output_format == '1':
+                #if $output_select.fasta:
+                    -r '${output_select.fasta}'
+                #end if
+            #else
+                --offset5p ${output_select.offset5p}
+                --offset3p ${output_select.offset3p}
+            #end if
+
+            #if $parameters:
+                -p '${parameters}'
+            #end if
+
+            '${alignment}'
     ]]></command>
     
     <inputs>
-        <param name="alignments" type="data" format="bam" label="Alignment file(s)" help="Aligned small RNA-Seq reads which may not be fragmented. In case you add multiple BAM files, FlaiMapper will simply concatenate the data and perform one single analysis on the entire set of alignments." multiple="true" />
-        
-        <param name="mask" type="data" format="gtf,gff,gff3" label="small ncRNA Annotation (gtf)" help="" />
-            
-        <param name="fasta" type="data" format="fasta" label="Fasta sequence corresponding to reference genome" help="" />
+        <param name="alignment" type="data" format="bam" multiple="false"
+               label="Alignment file"
+               help="Aligned small RNA-Seq reads must be single end and should not be fragmented in the library preparation" />
         
-        <param name="output_format" type="select" label="Output format">
-            <option value="1">Tabular (1 fragment per column)</option>
-            <option value="2">Tabular (1 precursor per column)</option>
-            <option value="3">GenBank</option>
-            <!-- option value="gtf">GTF/GFF</option -->
-        </param>
+        <conditional name="output_select">
+            <param name="output_format" type="select" label="Output format" argument="-f">
+                <option value="1">Tabular</option>
+                <option value="2">GTF</option>
+            </param>
+            
+            <when value="1">
+                <param name="fasta" type="data" format="fasta" optional="true"
+                       label="(Optional) Genome reference in FASTA format that corresponds to the reference genome or RNA database" help="By selecting this file, sequences will be provided in the corresponding column in the output file" argument="-r" />
+            </when>
+            
+            <when value="2">
+                <param name="offset5p" type="integer" value="4"
+                       label="5' offset added to the exon-type GTF entry"
+                       help="Exon-type entries are often used to measure expression. Because of the small size of the fragments it may be desired to use an offset." argument="--offset5p" />
+                <param name="offset3p" type="integer" value="4"
+                       label="3' offset added to the exon-type GTF entry"
+                       help="Exon-type entries are often used to measure expression. Because of the small size of the fragments it may be desired to use an offset." argument="--offset3p" />
+            </when>
+        </conditional>
+        
+        <param name="parameters" type="data" format="txt,tabular" optional="true"
+               label="(Optional) Custom parameters file" help="" argument="-p" />
+        
     </inputs>
     
     <outputs>
-        <data format="tabular" name="output" label="${tool.name} on ${', '.join([ str(a.hid)+': '+a.name for a in $alignments ])}" />
+        <data format="tabular" name="output"
+              label="${tool.name} on $on_string">
+            <change_format>
+                <when input="output_select.output_format" value="1" format="tabular" />
+                <when input="output_select.output_format" value="2" format="gtf" />
+            </change_format>
+        </data>
     </outputs>
     
     <tests>
+        <!-- tabular -->
         <test><!-- Testing "ncRNAdb09 alignment"-type analysis -->
-            <param name="alignments"    value="test1/snord81.bam"        ftype="bam" />
-            <param name="mask"            value="test1/ncrnadb09.v2.gtf"    ftype="gtf" />
-            <param name="fasta"            value="test1/ncrnadb09.fa"        ftype="fasta" />
-            <param name="output_format"    value="1" />
+            <param name="alignment" value="snord81.bam" ftype="bam" />
+            <param name="fasta" value="snord81.fa" ftype="fasta" />
+            <param name="output_format" value="1" />
             
-            <output name="output"        file="test1/snord81.flaimapper.txt" />
+            <output name="output" file="snord81.flaimapper.txt" />
+        </test>
+        <test>
+            <param name="alignment" value="snord81.bam" ftype="bam" />
+            <param name="output_format" value="1" />
+            
+            <output name="output" file="snord81.flaimapper.no-seq.txt" />
         </test>
         <test><!-- Testing "Full genome alignment"-type analysis -->
-            <param name="alignments"    value="test2/test_genomic_alignment.bam"        ftype="bam" />
-            <param name="mask"            value="test2/test_genomic_genes.gtf"            ftype="gtf" />
-            <param name="fasta"            value="test2/test_genomic_all_chromosomes.fa"    ftype="fasta" />
-            <param name="output_format"    value="1" />
+            <param name="alignment" value="test_genomic_alignment.bam" ftype="bam" />
+            <param name="fasta" value="test_genomic_all_chromosomes.fa" ftype="fasta" />
+            <param name="output_format" value="1" />
+            
+            <output name="output" file="test_genomic_flaimapper_output.txt" />
+        </test>
+        <test>
+            <param name="alignment" value="test_genomic_alignment.bam" ftype="bam" />
+            <param name="output_format" value="1" />
+            
+            <output name="output" file="test_genomic_flaimapper_output.no-seq.txt" />
+        </test>
+        
+        <!-- GTF -->
+        <test><!-- Testing "ncRNAdb09 alignment"-type analysis -->
+            <param name="alignment" value="snord81.bam" ftype="bam" />
+            <param name="output_format" value="2" />
             
-            <output name="output"        file="test2/test_genomic_flaimapper_output.txt" />
+            <output name="output" file="snord81.flaimapper.gtf" />
+        </test>
+        <test><!-- Testing "Full genome alignment"-type analysis -->
+            <param name="alignment" value="test_genomic_alignment.bam" ftype="bam" />
+            <param name="output_format" value="2" />
+            
+            <output name="output" file="test_genomic_flaimapper_output.gtf" />
+        </test>
+        
+        <!-- test custom parameters -->
+        <test>
+            <param name="alignment" value="snord81.bam" ftype="bam" />
+            <param name="output_format" value="2" />
+            <param name="offset5p" value="5" />
+            <param name="offset3p" value="5" />
+            
+            <output name="output" file="snord81.flaimapper.offsets_5_5.gtf" />
+        </test>
+        <test>
+            <param name="alignment" value="snord81.bam" ftype="bam" />
+            <param name="output_format" value="2" />
+            <param name="parameters" value="filter-parameters.duck.15.txt"/>
+            
+            <output name="output" file="snord81.flaimapper.duck-15.gtf" />
         </test>
     </tests>
     
@@ -67,10 +135,6 @@
 FlaiMapper wrapper for Galaxy
 =============================
 
-https://github.com/yhoogstrate/flaimapper
-http://www.ncbi.nlm.nih.gov/pubmed/25338717
-http://dx.doi.org/10.1093/bioinformatics/btu696
-
 Fragment Location Annotation Identification Mapper
 
 FlaiMapper: computational annotation of small ncRNA-derived fragments using RNA-seq high-throughput data.
@@ -79,90 +143,35 @@
 Input
 -----
 
-Alignments
-**********
-
-Aligned reads from small RNA-Seq experiments have to be provided in the BAM format.
-In case you add multiple BAM files, FlaiMapper will simply concatenate the data and perform one single analysis on the entire set of alignments.
-
-Mask File
+Alignment
 *********
 
-There are two strategies to analyze using FlaiMapper:
+This file has to contain aligned single end reads from a small RNA-Seq experiment, provided in the BAM format.
 
-- Relative to mature ncRNA sequences
-- Relative to chromosomes
-
-Therefore FlaiMapper requires a list of ncRNA annotations relative to the used reference genome for the alignment files. These ncRNA locations within the sequences provided in the FASTA file (MASK) regions should be provided in the GFF/GTF format:
+Prior to running FlaiMapper, it is common to align sequencing reads to either:
 
-- http://genome.ucsc.edu/FAQ/FAQformat.html#format3
-- http://www.ensembl.org/info/website/upload/gff.html
-
-If you are making use of a ncRNA database that has no GTF file available you can make use of the galaxy tool **flaimapper-gtf-from-fasta** to create one.
-
+- mature ncRNA sequences
+- all chromosomes
 
-You can access **ncRNAdb09** GTF file at the following URL:
-https://raw.githubusercontent.com/yhoogstrate/flaimapper/master/share/annotations/ncRNA_annotation/ncrnadb09.gtf *(mask file)*
-
-Fasta sequence
-**************
+Example- and reference data
+***************************
 
 The reference sequence should be provided in FASTA format.
 
 You can access **ncRNAdb09** FASTA file at the following URL:
 https://raw.githubusercontent.com/yhoogstrate/flaimapper/master/share/annotations/ncRNA_annotation/ncrnadb09.fa *(reference file)*
 
-Example- and reference data
-***************************
-
-To align reads to ncRNA you need aligner specific indexed version of the reference. We have made
-the following available for ncRNAdb09:
-
- - **Tophat1**: https://github.com/yhoogstrate/flaimapper/blob/master/share/annotations/ncRNA_annotation/ncrnadb09.bt2.tar.gz
- - **Tophat2**: https://github.com/yhoogstrate/flaimapper/blob/master/share/annotations/ncRNA_annotation/ncrnadb09.bt2.tar.gz
-
 If you want to test FlaiMapper with example data you can obtain several
 alignment files from the following directory tree:
 
 https://github.com/yhoogstrate/flaimapper/tree/master/share/small_RNA-seq_alignments
 
-Installation
-------------
-
-The wrapper makes use of easy_install to install a python egg. Please
-ensure you have easy_install installed.
-
-License
--------
-
-**flaimapper** and **wrapper**:
-
-GPL (>=3)
-
-**pysam**:
-
-The MIT License
+More details are given in the manual at the following website:
 
-Contact
--------
-
-The tool wrapper has been written by Youri Hoogstrate from the Erasmus
-Medical Center (Rotterdam, Netherlands).
-
-
-Development
------------
-
-* Repository-Maintainer: Youri Hoogstrate
-* Repository-Developers: Youri Hoogstrate
-
-* Repository-Development: https://github.com/ErasmusMC-Bioinformatics/galaxy-tools
-
-The tool wrapper has been written by Youri Hoogstrate from the Erasmus
-Medical Center (Rotterdam, Netherlands).
+https://github.com/yhoogstrate/flaimapper
     ]]></help>
     
     <citations>
         <citation type="doi">10.1093/bioinformatics/btu696</citation>
     </citations>
-</tool>
+</tool>
\ No newline at end of file