view dreme.xml @ 6:fd05b142b3a3 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/meme commit 93fe7345e2b6a97000975d978bf06513b3a442d9
author iuc
date Thu, 29 Aug 2024 10:19:55 +0000
parents f33d77dcacce
children
line wrap: on
line source

<tool id="meme_dreme" name="DREME" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
    <description>- Discriminative Regular Expression Motif Elicitation</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <command detect_errors="exit_code"><![CDATA[
@CHECK_NON_COMMERCIAL_USE@
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" argument="-p" type="data" format="fasta" label="Positive FASTA sequence file" 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" type="boolean" truevalue="" falsevalue="-norc" checked="False" label="Check reverse complement" 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" argument="-s" type="integer" value="1" label="Seed for shuffling positive sequences" help="(default: 1)"/>
            </when>
            <when value="supply_negs">
                <param name="neg_fasta_file" argument="-n" type="data" format="fasta" label="Negative FASTA sequence file" 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" argument="-e" type="float" value="0.05" label="stop if motif E-value &gt; e" help="stop if motif E-value &gt; given threshold (default: 0.05)">
                    <validator type="expression" message="Set e-value must be &gt; 0.">value is not None and value &gt; 0</validator>
                </param>
                <param name="motif_min_k" argument="-mink" type="integer" min="1" value="3" label="Minimum width of core motif" help="minimum width of core motif (default: 3)"/>
                <param name="motif_max_k" argument="-maxk" type="integer" min="1" value="8" label="Maximum width of core motif" help="maximum width of core motif (default: 8)"/>
                <param name="stop_m_motifs" argument="-m" type="integer" min="1" optional="True" label="Stop if m motifs have been output" help="stop if m motifs have been output (default: only stop at E-value threshold)"/>
                <param name="stop_t_seconds" argument="-t" type="integer" min="1" optional="True" label="Stop if the specified time has elapsed" help="stop if the specified time has elapsed (default: only stop at E-value threshold)"/>
                <param name="nr_res_generalize" argument="-g" type="integer" min="1" value="100" label="Number of REs to generalize" 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" type="boolean" truevalue="NON_COMMERCIAL_USE" falsevalue="COMMERCIAL_USE" checked="False" label="I certify that I am not using this tool for commercial purposes.">
            <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">
                <assert_contents>
                    <has_text text="pvalue"/>
                    <has_text text="UUUUCC"/>
                    <has_text text="evalue"/>
                    <has_text text="matches"/>
                    <has_text text="DREME"/>
                </assert_contents>
            </output>
            <output name="txt_outfile">
                <assert_contents>
                    <has_text text="RNA-LIKE"/>
                    <has_text text="shuffled"/>
                    <has_text text="0.221"/>
                    <has_text text="DREME"/>
                    <has_text text="letter-probability matrix"/>
                    <has_n_lines n="84"/>
                </assert_contents>
            </output>
            <output name="xml_outfile">
                <assert_contents>
                    <has_text text="Adenine"/>
                    <has_text text="command_line"/>
                    <has_text text="Uracil"/>
                    <has_text text="DREME"/>
                    <has_text text="evalue"/>
                </assert_contents>
            </output>
        </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">
                <assert_contents>
                    <has_text text="shuffled positive sequences"/>
                    <has_text text="UUCUCU"/>
                    <has_text text="YAGG"/>
                    <has_text text="runtime"/>
                    <has_text text="DREME"/>
                    <has_text text="ACGU"/>
                </assert_contents>
            </output>
            <output name="txt_outfile">
                <assert_contents>
                    <has_text text="RNA-LIKE"/>
                    <has_text text="from shuffled positives"/>
                    <has_text text="MOTIF UUYUCY DREME"/>
                    <has_text text="probability"/>
                    <has_text text="YAGG"/>
                    <has_n_lines n="68"/>
                </assert_contents>
            </output>
            <output name="xml_outfile">
                <assert_contents>
                    <has_text text="Purine"/>
                    <has_text text="1000"/>
                    <has_text text="shuffled"/>
                    <has_text text="rna"/>
                    <has_text text="evalue"/>
                </assert_contents>
            </output>
        </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>