view dreme.xml @ 2:3e5c80594237 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/meme commit 86a94f48321780dbe18ef5b099434c347ec2f4d0"
author iuc
date Wed, 11 Dec 2019 18:04:55 -0500
parents cb8a2242bf03
children ec2f378ac827
line wrap: on
line source

<tool id="meme_dreme" name="DREME" version="@WRAPPER_VERSION@.0">
    <description>- Discriminative Regular Expression Motif Elicitation</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements">
        <requirement type="package" version="2.7">python</requirement>
    </expand>
    <command detect_errors="exit_code"><![CDATA[
dreme
    -o ./dreme_out
    -p '$pos_fasta_file'
    $norc
    $alphabet_type
    #if str( $neg_set_type.neg_set_type_selector ) == 'shuffle_negs':
        -s '${$neg_set_type.pos_shuffle_seed}'
    #elif str( $neg_set_type.neg_set_type_selector ) == 'supply_negs':
        -n '${$neg_set_type.neg_fasta_file}'
    #end if
    #if str( $options_type.options_type_selector ) == 'advanced':
        -e $options_type.e_value_thr
        #if $options_type.stop_m_motifs
            -m $options_type.stop_m_motifs
        #end if
        #if $options_type.stop_t_seconds
            -t $options_type.stop_t_seconds
        #end if
        -g $options_type.nr_res_generalize
        -mink $options_type.motif_min_k
        -maxk $options_type.motif_max_k
    #end if
    ]]></command>
    <inputs>
        <param name="pos_fasta_file" type="data" format="fasta" label="Positive FASTA sequence file" argument="-p"
               help="positive (primary) sequence file"/>
        <param name="alphabet_type" type="select" label="Type of sequence alphabet">
            <option value="-dna" selected="true">DNA (default)</option>
            <option value="-rna">RNA</option>
            <option value="-protein">Protein</option>
        </param>
        <param argument="-norc" label="Check reverse complement" type="boolean"
               truevalue="" falsevalue="-norc" checked="False"
               help="Search for motifs also on reverse complement strand"/>
        <conditional name="neg_set_type">
            <param name="neg_set_type_selector" type="select" label="Negative set definition">
                <option value="shuffle_negs" selected="true">Shuffle positive sequences</option>
                <option value="supply_negs">Supply negative sequences</option>
            </param>
            <when value="shuffle_negs">
                <param name="pos_shuffle_seed" type="integer" value="1"
                       label="Seed for shuffling positive sequences" argument="-s"
                       help="(default: 1)"/>
            </when>
            <when value="supply_negs">
                <param name="neg_fasta_file" type="data" format="fasta"
                       label="Negative FASTA sequence file" argument="-n"
                       help="negative (control) sequence file (default: positive sequences are shuffled to create the negative set)"/>
            </when>
        </conditional>
        <conditional name="options_type">
            <param name="options_type_selector" type="select" label="Options Configuration">
                <option value="basic" selected="true">Basic</option>
                <option value="advanced">Advanced</option>
            </param>
            <when value="basic" />
            <when value="advanced">
                <param name="e_value_thr" type="float" value="0.05"
                       label="stop if motif E-value > e" argument="-e"
                       help="stop if motif E-value > given threshold (default: 0.05)">
                       <validator type="expression" message="Set e-value must be > 0.">value is not None and value > 0</validator>
                </param>
                <param name="motif_min_k" type="integer" value="3" min="1"
                       label="Minimum width of core motif" argument="-mink"
                       help="minimum width of core motif (default: 3)"/>
                <param name="motif_max_k" type="integer" value="8" min="1"
                       label="Maximum width of core motif" argument="-maxk"
                       help="maximum width of core motif (default: 8)"/>
                <param name="stop_m_motifs" type="integer" optional="True" min="1"
                       label="Stop if m motifs have been output" argument="-m"
                       help="stop if m motifs have been output (default: only stop at E-value threshold)"/>
                <param name="stop_t_seconds" type="integer" optional="True" min="1"
                       label="Stop if the specified time has elapsed" argument="-t"
                       help="stop if the specified time has elapsed (default: only stop at E-value threshold)"/>
                <param name="nr_res_generalize" type="integer" value="100" min="1"
                       label="Number of REs to generalize" argument="-g"
                       help="number of REs to generalize (default: 100) (Hint: Increasing n will make the motif search more thoroughly at some cost in speed)"/>
            </when>
        </conditional>
        <param name="non_commercial_use" label="I certify that I am not using this tool for commercial purposes." type="boolean" truevalue="NON_COMMERCIAL_USE" falsevalue="COMMERCIAL_USE" checked="False">
            <validator type="expression" message="This tool is only available for non-commercial use.">value == True</validator>
        </param>
    </inputs>
    <outputs>
        <data format="html" name="html_outfile" label="${tool.name} on ${on_string} (html)" from_work_dir="dreme_out/dreme.html"/>
        <data format="txt" name="txt_outfile" label="${tool.name} on ${on_string} (text)" from_work_dir="dreme_out/dreme.txt"/>
        <data format="memexml" name="xml_outfile" label="${tool.name} on ${on_string} (xml)" from_work_dir="dreme_out/dreme.xml"/>
    </outputs>
    <tests>
        <test>
            <param name="pos_fasta_file" value="dreme_test_sites.fa" ftype="fasta"/>
            <param name="alphabet_type" value="-rna"/>
            <param name="norc" value="false"/>
            <param name="non_commercial_use" value="True"/>
            <output name="html_outfile" file="dreme_output_test1.html" compare="contains"/>
            <output name="txt_outfile" file="dreme_output_test1.txt" compare="contains"/>
            <output name="xml_outfile" file="dreme_output_test1.xml" compare="contains"/>
        </test>
        <test>
            <param name="pos_fasta_file" value="dreme_test_sites.fa" ftype="fasta"/>
            <param name="alphabet_type" value="-rna"/>
            <param name="norc" value="false"/>
            <param name="options_type_selector" value="advanced"/>
            <param name="e_value_thr" value="0.00001"/>
            <param name="motif_min_k" value="4"/>
            <param name="motif_max_k" value="10"/>
            <param name="non_commercial_use" value="True"/>
            <output name="html_outfile" file="dreme_output_test2.html" compare="contains"/>
            <output name="txt_outfile" file="dreme_output_test2.txt" compare="contains"/>
            <output name="xml_outfile" file="dreme_output_test2.xml" compare="contains"/>
        </test>
    </tests>
    <help><![CDATA[
    DREME (Discriminative Regular Expression Motif Elicitation) discovers short, ungapped motifs (recurring, fixed-length patterns) that are relatively enriched in your sequences compared with shuffled sequences or given control sequences.

    DREME finds relatively short motifs (up to 8 positions) fast. The input to DREME is one or two sets of sequences. The control (-n parameter) sequences should be approximately the same length as the primary (-p parameter) sequences. If you do not provide a control set, the program shuffles the primary set to provide a control set. The program uses Fisher's Exact Test to determine significance of each motif found in the postive set as compared with its representation in the control set, using a significance threshold that may be set (-e parameter).

    DREME achieves its high speed by restricting its search to regular expressions based on the IUPAC alphabet representing bases and ambiguous characters, and by using a heuristic estimate of generalised motifs' statistical significance.

.. class:: infomark

For detailed information on DREME, click here_, or view the license_.

.. _here: http://meme-suite.org/doc/dreme.html
.. _license: http://meme-suite.org/doc/copyright.html

    ]]></help>
    <citations>
        <citation type="doi">10.1093/bioinformatics/btr261</citation>
    </citations>
</tool>