view ngsfilter.xml @ 3:3bf57dadf7cd draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/obitools commit 5d3c7a7b3f7d687bb03ef7993ddf1a6507d655bd"
author iuc
date Mon, 10 May 2021 19:34:54 +0000
parents e6ccf97b3d39
children 91a1ed0b486f
line wrap: on
line source

<tool id="obi_ngsfilter" name="NGSfilter" version="@TOOL_VERSION@" profile="@PROFILE@">
    <description>Assigns sequence records to the corresponding experiment/sample based on DNA tags and primers</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="stdio"/>
    <command><![CDATA[
        @GUNZIP_INPUT@

        ngsfilter

        --without-progress-bar
        -t '$inputextrafile' 
        #if $bool
            -u unident
        #end if
        -e '$mismatch'
        @INPUT_FORMAT@
        @OUT_FORMAT@
        input
        @GZIP_OUTPUT@
        > '$output'

        #if $bool
            #if $input.ext.endswith(".gz")
                && gzip -c unident > '$unident'
            #else
                && mv unident '$unident'
            #end if
            #set outputs = [("output", $output), ("unident", $unident)]
        #end if
        @GENERATE_GALAXY_JSON@
    ]]></command>
    <inputs>
        <param name="inputextrafile" type="data" format="tabular" label="Parameter file" help="extrafile describing the DNA tags and primers sequences used for each sample" />
        <param name="input" type="data" format="@INPUT_FORMATS@" label="Read from file" help="file of Illumina pair-end reads assembled by illuminapairedend" />
        <param name="mismatch" type="integer" value="2" label="Number of errors allowed for matching primers (default = 2)" />
        <param name="bool" type="boolean" checked="true" label="Do you want to generate a file with unidentified sequences?" />
        <expand macro="input_format_options_macro"/>
        <expand macro="out_format_macro"/>
    </inputs>
    <outputs>
        <data name="unident"  format="auto" label="${tool.name} on ${on_string}: Unassigned sequences">
            <filter>bool is True</filter>
        </data>
        <data name="output"  format="auto" label="${tool.name} on ${on_string}: Trimmed and annotated" />
    </outputs>
    <tests>
       <test>
           <param name="inputextrafile" value="input_ngsfilter_extrafile.txt" />
           <param name="input" value="illuminapairedend.output.fastq" ftype="fastqsanger" />
           <param name="mismatch" value="2" />
           <param name="bool" value="False" />
           <output name="output" file="output_ngsfilter.fastq" ftype="fastqsanger"/>
       </test>
       <test>
           <param name="inputextrafile" value="input_ngsfilter_extrafile.txt" />
           <param name="input" value="illuminapairedend.output.fastq.gz" ftype="fastqsanger.gz" />
           <param name="mismatch" value="3" />
           <param name="bool" value="True" />
           <output name="output" file="output_ngsfilter_error_3.fastq" ftype="fastqsanger.gz" decompress="true"/>
           <output name="unident" file="output_ngsfilter_unidentified.fastq" ftype="fastqsanger.gz" decompress="true"/>
       </test>
   </tests>
    <help><![CDATA[

.. class:: infomark

**What it does**

A DNA metabarcoding experiment can be considered as a set a PCR products mixed together and sequenced using a next generation sequencer ({i.e.} a solexa or a 454).
To distinguish between this different PCR products, pairs of small DNA sequences (call tags, see the oligoTag command and its associated paper for more
informations on the design of such tags) unique for each PCR products are concatenated to the PCR primers.
As they are amplified during the PCR, these tags should be recognizable, together with their respective primers, at the beginning and the end of the reads.
The first step in data analysis is thus to demultiplex the large resulting sequence file by identifying these DNA tags and the primers.

Usually the results of sequencing are stored in one or more files formatted according to the fasta or fastq format. ngsfilter take as input such sequence file and an extra file describing the DNA tags and primers sequences used for each sample.

The results consist of sequences trimmed of the primers and tags and annotated with the corresponding sample (and possibly some extra informations).
Sequences for which the tags and primers have not been well identified, and which are thus unassigned to any sample, are tagged as erroneous sequences
by ngsfilter. Such erroneous sequences are not reported by the program unless specified by the appropriate option.

--------

**Help**
Extrafile format:

a tab delimited tabular file with 8 columns.

experiment_name	sample_name	oligo_tag(s)	forward_primer	reverse_primer	F	@	extra_information

ex:

laos_gh LA01E1a agcgacta:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01A;

laos_gh LA01E1b tcagtgtc:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01B;

laos_gh LA01E2a actctgct:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01C;

laos_gh LA01E2b atatagcg:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01D;

laos_gh LA01P1a ctatgcta:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01E;

laos_gh LA01P1b tcgcgctg:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01F;

laos_gh LA01P2a agcacagt:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01G;

laos_gh LA01P2b tagctagt:acacacac GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_01H;

laos_gh LA02E1a agcgacta:acagcaca GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_02A;

laos_gh LA02E1b tcagtgtc:acagcaca GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_02B;

laos_gh LA02E2a actctgct:acagcaca GGGCAATCCTGAGCCAA CCATTGAGTCTCTGCACCTATC F @ position=04_02C;

@OBITOOLS_LINK@


]]>

    </help>
    <expand macro="citation" />

</tool>