view eggnog_mapper.xml @ 3:9d94fe7ce8b9 draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/eggnog_mapper commit e711920c41c8862d7d8133f7b455cf475924e103
author jjohnson
date Tue, 05 Nov 2019 15:53:42 -0500
parents a74d61dbd155
children a093b9061498
line wrap: on
line source

<tool id="eggnog_mapper" name="eggNOG Mapper" version="@VERSION@.1">
    <description>functional sequence annotation by orthology</description>
    <macros>
        <token name="@VERSION@">1.0.3</token>
    </macros>
    <requirements>
        <requirement type="package" version="@VERSION@">eggnog-mapper</requirement>
    </requirements>
    <version_command>emapper.py --version</version_command>
    <command detect_errors="aggressive"><![CDATA[
        emapper.py
        --data_dir '$eggnog_data.fields.path'
        -m $db.mode 
        $translate
        #if ($db.mode == 'hmmer'):
            #if $db.database.fields.path:
                --database=$db.database.fields.path
            #else
                --database=$db.database
            #end if
            #if $db.hmm_options.hmm_settings == 'specified':
                --hmm_maxhits=$db.hmm_options.hmm_maxhits
                --hmm_evalue=$db.hmm_options.hmm_evalue
                --hmm_score=$db.hmm_options.hmm_score
                --hmm_maxseqlen=$db.hmm_options.hmm_maxseqlen
                #if str($db.hmm_options.hmm_qcov):
                    --hmm_qcov=$db.hmm_options.hmm_qcov
                #end if
                --Z=$db.hmm_options.Z
            #end if
        #elif ($db.mode == 'diamond'):
            --matrix '$db.matrix_gapcosts.matrix'
            $db.matrix_gapcosts.gap_costs
        #end if
        #if $annotation_options.tax_scope:
            --tax_scope=$annotation_options.tax_scope
        #end if
        #if $annotation_options.target_orthologs:
            --target_orthologs=$annotation_options.target_orthologs
        #end if
        #if $annotation_options.go_evidence:
            --go_evidence=$annotation_options.go_evidence
        #end if
        #if $seed_ortholog_options.seed_ortholog_evalue:
            --seed_ortholog_evalue=$seed_ortholog_options.seed_ortholog_evalue 
        #end if
        #if str($seed_ortholog_options.seed_ortholog_score):
            --seed_ortholog_score=$seed_ortholog_options.seed_ortholog_score 
        #end if
        $output_options.no_file_comments
        $output_options.no_annot
        $output_options.report_orthologs
        --output='results'
        -i '${input}'
        --cpu "\${GALAXY_SLOTS:-4}"
    ]]></command>
        <inputs>
            <param name="input" type="data" format="fasta" label="Fasta sequences to annotate"/>
            <param name="eggnog_data" type="select" label="Version of eggNOG Database">
                <options from_data_table="eggnog_mapper_db"/>
            </param>
            <param name="translate" type="boolean" truevalue="--translate" falsevalue="" checked="false"
                label="Are these coding DNA sequences that need to be translated?"/>
            <conditional name="db">
                <param name="mode" type="select" label="Annotation Type">
                    <option value="hmmer">HMM</option>
                    <option value="diamond">DIAMOND</option>
                </param>
                <when value="hmmer">
                    <param name="database" type="select" label="HMM target database" help="Choose either the full eggNOG database or a subset of it. Contact your Galaxy admin to have additional HMM databases installed.">
                        <options from_data_table="eggnog_mapper_hmm_dbs">
                            <!--
                            <filter type="param_value" ref="eggnog_data" column="1" />
                            <filter type="unique_value" column="3" />
                            <validator type="no_options" message="No HMM databases are available; request installation from your Galaxy admin." />
                            -->
                        </options>
                    </param>
                    <conditional name="hmm_options">
                        <param name="hmm_settings" type="select" label="HMM Search Options">
                            <option value="default">Use defaults</option>
                            <option value="specified">Set HMM Search Options</option>
                        </param>
                        <when value="default"/>
                        <when value="specified">
                            <param name="hmm_maxhits" type="integer" value="1" label="Max number of hits to report per query sequence"/>
                            <param name="hmm_evalue" type="float" min="0" value="0.001" label="E-value threshold" />
                            <param name="hmm_score" type="integer" min="0" value="20" label="Bit score threshold" />
                            <param name="hmm_maxseqlen" type="integer" value="5000" label="Ignore query sequences larger than `maxseqlen`.  Default=5000" />
                            <param name="hmm_qcov" type="float" value="" min="0." max="1." optional="true" label="min query coverage (from 0 to 1). Default=(disabled)" />
                            <param name="Z" type="integer" value="40000000" min="0" label="Fixed database size used in phmmer/hmmscan (allows comparing e-values among databases).  Default=40,000,000" />
                        </when>
                    </conditional>
                </when>
                <when value="diamond">
                    <!-- db.database is used in diamond mode only to name outputs -->
                    <param name="database" type="hidden" value="diamond"/>
                    <conditional name="matrix_gapcosts">
                        <param argument="--matrix" type="select" label="Scoring matrix and gap costs">
                            <option value="BLOSUM90">BLOSUM90</option>
                            <option value="BLOSUM80">BLOSUM80</option>
                            <option value="BLOSUM62" selected="true">BLOSUM62</option>
                            <option value="BLOSUM50">BLOSUM50</option>
                            <option value="BLOSUM45">BLOSUM45</option>
                            <option value="PAM250">PAM250</option>
                            <option value="PAM70">PAM70</option>
                            <option value="PAM30">PAM30</option>
                        </param>
                        <when value="BLOSUM90">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 9 --gapextend 2">Existence: 9  Extension: 2</option>
                                <option value="--gapopen 8 --gapextend 2">Existence: 8  Extension: 2</option>
                                <option value="--gapopen 7 --gapextend 2">Existence: 7  Extension: 2</option>
                                <option value="--gapopen 6 --gapextend 2">Existence: 6  Extension: 2</option>
                                <option value="--gapopen 11 --gapextend 1">Existence: 11  Extension: 1</option>
                                <option value="--gapopen 10 --gapextend 1" selected="true">Existence: 10  Extension: 1</option>
                                <option value="--gapopen 9 --gapextend 1">Existence: 9  Extension: 1</option>
                            </param>
                        </when>
                        <when value="BLOSUM80">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 8 --gapextend 2">Existence: 8  Extension: 2</option>
                                <option value="--gapopen 7 --gapextend 2">Existence: 7  Extension: 2</option>
                                <option value="--gapopen 6 --gapextend 2">Existence: 6  Extension: 2</option>
                                <option value="--gapopen 11 --gapextend 1">Existence: 11  Extension: 1</option>
                                <option value="--gapopen 10 --gapextend 1" selected="true">Existence: 10  Extension: 1</option>
                                <option value="--gapopen 9 --gapextend 1">Existence: 9  Extension: 1</option>
                            </param>
                        </when>
                        <when value="BLOSUM62">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 11 --gapextend 2">Existence: 11  Extension: 2</option>
                                <option value="--gapopen 10 --gapextend 2">Existence: 10  Extension: 2</option>
                                <option value="--gapopen 9 --gapextend 2">Existence: 9  Extension: 2</option>
                                <option value="--gapopen 8 --gapextend 2">Existence: 8  Extension: 2</option>
                                <option value="--gapopen 7 --gapextend 2">Existence: 7  Extension: 2</option>
                                <option value="--gapopen 6 --gapextend 2">Existence: 6  Extension: 2</option>
                                <option value="--gapopen 13 --gapextend 1">Existence: 13  Extension: 1</option>
                                <option value="--gapopen 12 --gapextend 1">Existence: 12  Extension: 1</option>
                                <option value="--gapopen 11 --gapextend 1" selected="true">Existence: 11  Extension: 1</option>
                                <option value="--gapopen 10 --gapextend 1">Existence: 10  Extension: 1</option>
                                <option value="--gapopen 9 --gapextend 1">Existence: 9  Extension: 1</option>
                            </param>
                        </when>
                        <when value="BLOSUM50">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 13 --gapextend 3">Existence: 13  Extension: 3</option>
                                <option value="--gapopen 12 --gapextend 3">Existence: 12  Extension: 3</option>
                                <option value="--gapopen 11 --gapextend 3">Existence: 11  Extension: 3</option>
                                <option value="--gapopen 10 --gapextend 3">Existence: 10  Extension: 3</option>
                                <option value="--gapopen 9 --gapextend 3">Existence: 9  Extension: 3</option>
                                <option value="--gapopen 16 --gapextend 2">Existence: 16  Extension: 2</option>
                                <option value="--gapopen 15 --gapextend 2">Existence: 15  Extension: 2</option>
                                <option value="--gapopen 14 --gapextend 2">Existence: 14  Extension: 2</option>
                                <option value="--gapopen 13 --gapextend 2" selected="true">Existence: 13  Extension: 2</option>
                                <option value="--gapopen 12 --gapextend 2">Existence: 12  Extension: 2</option>
                                <option value="--gapopen 19 --gapextend 1">Existence: 19  Extension: 1</option>
                                <option value="--gapopen 18 --gapextend 1">Existence: 18  Extension: 1</option>
                                <option value="--gapopen 17 --gapextend 1">Existence: 17  Extension: 1</option>
                                <option value="--gapopen 16 --gapextend 1">Existence: 16  Extension: 1</option>
                                <option value="--gapopen 15 --gapextend 1">Existence: 15  Extension: 1</option>
                            </param>
                        </when>
                        <when value="BLOSUM45">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 13 --gapextend 3">Existence: 13  Extension: 3</option>
                                <option value="--gapopen 12 --gapextend 3">Existence: 12  Extension: 3</option>
                                <option value="--gapopen 11 --gapextend 3">Existence: 11  Extension: 3</option>
                                <option value="--gapopen 10 --gapextend 3">Existence: 10  Extension: 3</option>
                                <option value="--gapopen 15 --gapextend 2" selected="true">Existence: 15  Extension: 2</option>
                                <option value="--gapopen 14 --gapextend 2">Existence: 14  Extension: 2</option>
                                <option value="--gapopen 13 --gapextend 2">Existence: 13  Extension: 2</option>
                                <option value="--gapopen 12 --gapextend 2">Existence: 12  Extension: 2</option>
                                <option value="--gapopen 19 --gapextend 1">Existence: 19  Extension: 1</option>
                                <option value="--gapopen 18 --gapextend 1">Existence: 18  Extension: 1</option>
                                <option value="--gapopen 17 --gapextend 1">Existence: 17  Extension: 1</option>
                                <option value="--gapopen 16 --gapextend 1">Existence: 16  Extension: 1</option>
                            </param>
                        </when>
                        <when value="PAM250">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 15 --gapextend 3">Existence: 15  Extension: 3</option>
                                <option value="--gapopen 14 --gapextend 3">Existence: 14  Extension: 3</option>
                                <option value="--gapopen 13 --gapextend 3">Existence: 13  Extension: 3</option>
                                <option value="--gapopen 12 --gapextend 3">Existence: 12  Extension: 3</option>
                                <option value="--gapopen 17 --gapextend 2">Existence: 17  Extension: 2</option>
                                <option value="--gapopen 16 --gapextend 2">Existence: 16  Extension: 2</option>
                                <option value="--gapopen 15 --gapextend 2">Existence: 15  Extension: 2</option>
                                <option value="--gapopen 14 --gapextend 2" selected="true">Existence: 14  Extension: 2</option>
                                <option value="--gapopen 13 --gapextend 2">Existence: 13  Extension: 2</option>
                                <option value="--gapopen 21 --gapextend 1">Existence: 21  Extension: 1</option>
                                <option value="--gapopen 20 --gapextend 1">Existence: 20  Extension: 1</option>
                                <option value="--gapopen 19 --gapextend 1">Existence: 19  Extension: 1</option>
                                <option value="--gapopen 18 --gapextend 1">Existence: 18  Extension: 1</option>
                                <option value="--gapopen 17 --gapextend 1">Existence: 17  Extension: 1</option>
                            </param>
                        </when>
                        <when value="PAM70">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 12 --gapextend 3">Existence: 12 Extension: 3</option>
                                <option value="--gapopen 11 --gapextend 2">Existence: 11 Extension: 2</option>
                                <option value="--gapopen 8 --gapextend 2">Existence: 8  Extension: 2</option>
                                <option value="--gapopen 7 --gapextend 2">Existence: 7  Extension: 2</option>
                                <option value="--gapopen 6 --gapextend 2">Existence: 6  Extension: 2</option>
                                <option value="--gapopen 11 --gapextend 1">Existence: 11  Extension: 1</option>
                                <option value="--gapopen 10 --gapextend 1" selected="true">Existence: 10  Extension: 1</option>
                                <option value="--gapopen 9 --gapextend 1">Existence: 9  Extension: 1</option>
                            </param>
                        </when>
                        <when value="PAM30">
                            <param name="gap_costs" type="select" label="Gap Costs">
                                <option value="--gapopen 15 --gapextend 3">Existence: 15 Extension: 3</option>
                                <option value="--gapopen 13 --gapextend 3">Existence: 13 Extension: 3</option>
                                <option value="--gapopen 14 --gapextend 2">Existence: 14 Extension: 2</option>
                                <option value="--gapopen 7 --gapextend 2">Existence: 7  Extension: 2</option>
                                <option value="--gapopen 6 --gapextend 2">Existence: 6  Extension: 2</option>
                                <option value="--gapopen 5 --gapextend 2">Existence: 5  Extension: 2</option>
                                <option value="--gapopen 14 --gapextend 1">Existence: 14 Extension: 1</option>
                                <option value="--gapopen 10 --gapextend 1">Existence: 10  Extension: 1</option>
                                <option value="--gapopen 9 --gapextend 1" selected="true">Existence: 9  Extension: 1</option>
                                <option value="--gapopen 8 --gapextend 1">Existence: 8  Extension: 1</option>
                            </param>
                        </when>
                    </conditional>
                </when>
            </conditional>
        <section name="annotation_options" expanded="false" title="Annotation Options">
            <param name="tax_scope" type="select" optional="true" label="Set taxonomic scope">
                <option value="NOG">All organisms  (NOG)</option>
                <option value="aciNOG">Acidobacteria  (aciNOG)</option>
                <option value="acidNOG">Acidobacteriia  (acidNOG)</option>
                <option value="acoNOG">Aconoidasida  (acoNOG)</option>
                <option value="actNOG">Actinobacteria  (actNOG)</option>
                <option value="agaNOG">Agaricales  (agaNOG)</option>
                <option value="agarNOG">Agaricomycetes  (agarNOG)</option>
                <option value="apiNOG">Apicomplexa  (apiNOG)</option>
                <option value="aproNOG">Proteobacteria_alpha  (aproNOG)</option>
                <option value="aquNOG">Aquificae  (aquNOG)</option>
                <option value="arNOG">Archaea  (arNOG)</option>
                <option value="arcNOG">Archaeoglobi  (arcNOG)</option>
                <option value="artNOG">Arthropoda  (artNOG)</option>
                <option value="arthNOG">Arthrodermataceae  (arthNOG)</option>
                <option value="ascNOG">Ascomycota  (ascNOG)</option>
                <option value="aveNOG">Aves  (aveNOG)</option>
                <option value="bacNOG">Bacilli  (bacNOG)</option>
                <option value="bactNOG">Bacteria  (bactNOG)</option>
                <option value="bacteNOG">Bacteroidia  (bacteNOG)</option>
                <option value="basNOG">Basidiomycota  (basNOG)</option>
                <option value="bctoNOG">Bacteroidetes  (bctoNOG)</option>
                <option value="biNOG">Bilateria  (biNOG)</option>
                <option value="bproNOG">Proteobacteria_beta  (bproNOG)</option>
                <option value="braNOG">Brassicales  (braNOG)</option>
                <option value="carNOG">Carnivora  (carNOG)</option>
                <option value="chaNOG">Chaetomiaceae  (chaNOG)</option>
                <option value="chlNOG">Chlorobi  (chlNOG)</option>
                <option value="chlaNOG">Chlamydiae  (chlaNOG)</option>
                <option value="chloNOG">Chloroflexi  (chloNOG)</option>
                <option value="chlorNOG">Chloroflexi  (chlorNOG)</option>
                <option value="chloroNOG">Chlorophyta  (chloroNOG)</option>
                <option value="chorNOG">Chordata  (chorNOG)</option>
                <option value="chrNOG">Chromadorea  (chrNOG)</option>
                <option value="cloNOG">Clostridia  (cloNOG)</option>
                <option value="cocNOG">Coccidia  (cocNOG)</option>
                <option value="creNOG">Crenarchaeota  (creNOG)</option>
                <option value="cryNOG">Cryptosporidiidae  (cryNOG)</option>
                <option value="cyaNOG">Cyanobacteria  (cyaNOG)</option>
                <option value="cytNOG">Cytophagia  (cytNOG)</option>
                <option value="debNOG">Debaryomycetaceae  (debNOG)</option>
                <option value="defNOG">Deferribacteres  (defNOG)</option>
                <option value="dehNOG">Dehalococcoidetes  (dehNOG)</option>
                <option value="deiNOG">Deinococcusthermus  (deiNOG)</option>
                <option value="delNOG">delta/epsilon  (delNOG)</option>
                <option value="dipNOG">Diptera  (dipNOG)</option>
                <option value="dotNOG">Dothideomycetes  (dotNOG)</option>
                <option value="dproNOG">Proteobacteria_delta  (dproNOG)</option>
                <option value="droNOG">Drosophilidae  (droNOG)</option>
                <option value="eproNOG">Proteobacteria_epsilon  (eproNOG)</option>
                <option value="eryNOG">Erysipelotrichi  (eryNOG)</option>
                <option value="euNOG">Eukaryotes  (euNOG)</option>
                <option value="eurNOG">Euryarchaeota  (eurNOG)</option>
                <option value="euroNOG">Eurotiomycetes  (euroNOG)</option>
                <option value="eurotNOG">Eurotiales  (eurotNOG)</option>
                <option value="fiNOG">Fishes  (fiNOG)</option>
                <option value="firmNOG">Firmicutes  (firmNOG)</option>
                <option value="flaNOG">Flavobacteriia  (flaNOG)</option>
                <option value="fuNOG">Fungi  (fuNOG)</option>
                <option value="fusoNOG">Fusobacteria  (fusoNOG)</option>
                <option value="gproNOG">Proteobacteria_gamma  (gproNOG)</option>
                <option value="haeNOG">Haemosporida  (haeNOG)</option>
                <option value="halNOG">Halobacteria  (halNOG)</option>
                <option value="homNOG">Hominidae  (homNOG)</option>
                <option value="hymNOG">Hymenoptera  (hymNOG)</option>
                <option value="hypNOG">Hypocreales  (hypNOG)</option>
                <option value="inNOG">Insects  (inNOG)</option>
                <option value="kinNOG">Kinetoplastida  (kinNOG)</option>
                <option value="lepNOG">Lepidoptera  (lepNOG)</option>
                <option value="lilNOG">Liliopsida  (lilNOG)</option>
                <option value="maNOG">Mammals  (maNOG)</option>
                <option value="magNOG">Magnaporthales  (magNOG)</option>
                <option value="meNOG">Animals  (meNOG)</option>
                <option value="metNOG">Methanobacteria  (metNOG)</option>
                <option value="methNOG">Methanococci  (methNOG)</option>
                <option value="methaNOG">Methanomicrobia  (methaNOG)</option>
                <option value="necNOG">Nectriaceae  (necNOG)</option>
                <option value="negNOG">Negativicutes  (negNOG)</option>
                <option value="nemNOG">Nematodes  (nemNOG)</option>
                <option value="onyNOG">Onygenales  (onyNOG)</option>
                <option value="opiNOG">Opisthokonts  (opiNOG)</option>
                <option value="perNOG">Peronosporales  (perNOG)</option>
                <option value="plaNOG">Planctomycetes  (plaNOG)</option>
                <option value="pleNOG">Pleosporales  (pleNOG)</option>
                <option value="poaNOG">Poales  (poaNOG)</option>
                <option value="prNOG">Primates  (prNOG)</option>
                <option value="proNOG">Proteobacteria  (proNOG)</option>
                <option value="rhaNOG">Rhabditida  (rhaNOG)</option>
                <option value="roNOG">Rodents  (roNOG)</option>
                <option value="sacNOG">Saccharomycetaceae  (sacNOG)</option>
                <option value="saccNOG">Saccharomycetes  (saccNOG)</option>
                <option value="sorNOG">Sordariales  (sorNOG)</option>
                <option value="sordNOG">Sordariomycetes  (sordNOG)</option>
                <option value="sphNOG">Sphingobacteriia  (sphNOG)</option>
                <option value="spiNOG">Spirochaetes  (spiNOG)</option>
                <option value="spriNOG">Supraprimates  (spriNOG)</option>
                <option value="strNOG">Streptophyta  (strNOG)</option>
                <option value="synNOG">Synergistetes  (synNOG)</option>
                <option value="tenNOG">Tenericutes  (tenNOG)</option>
                <option value="thaNOG">Thaumarchaeota  (thaNOG)</option>
                <option value="theNOG">Thermoplasmata  (theNOG)</option>
                <option value="therNOG">Thermotogae  (therNOG)</option>
                <option value="thermNOG">Thermococci  (thermNOG)</option>
                <option value="treNOG">Tremellales  (treNOG)</option>
                <option value="veNOG">Vertebrates  (veNOG)</option>
                <option value="verNOG">Verrucomicrobia  (verNOG)</option>
                <option value="verrNOG">Verrucomicrobiae  (verrNOG)</option>
                <option value="virNOG">Viridiplantae  (virNOG)</option>
            </param>
            <param name="target_orthologs" type="select" label="target orthologs for functional transfer">
                <option value="one2one">one2one</option>
                <option value="many2one">many2one</option>
                <option value="one2many">one2many</option>
                <option value="many2many">many2many</option>
                <option value="all" selected="true">all</option>
            </param>
            <param name="go_evidence" type="select"
                    label="Select the set of GO terms that should be used for annotation">
                <option value="experimental">experimental = Use only terms inferred from experimental evidence</option>
                <option value="non-electronic" selected="true">non-electronic = Use only non-electronically curated terms</option>
            </param>
        </section>
        <section name="seed_ortholog_options" expanded="false" title="Seed Ortholog Search Options">
            <param name="seed_ortholog_evalue" type="float" value="0.001" min="0" label="Min E-value threshold">
                <help>
                Min E-value expected when searching for seed eggNOG ortholog. Applies to phmmer/diamond searches. 
                Queries not having a significant seed orthologs (E-value less than threshold) will not be annotated.
                </help>
            </param>
            <param name="seed_ortholog_score" type="integer" value="60" min="0" label="Minimum bit score threshold">
                <help>
                Min bit score expected when searching for seed eggNOG ortholog. 
                Queries not having a significant seed orthologs will not be annotated.
                </help>
            </param>
        </section>
        <section name="output_options" expanded="false" title="Output Options">
            <param name="no_file_comments" type="boolean" truevalue="--no_file_comments" falsevalue="" checked="true"
                label="Exclude header lines and stats from output files"/>
            <param name="no_annot" type="boolean" truevalue="--no_annot" falsevalue="" checked="false"
                label="Skip functional annotation, reporting only hits"/>
            <param name="report_orthologs" type="boolean" truevalue="--report_orthologs" falsevalue="" checked="false"
                label="Output a file with the list of orthologs for each hits"/>
        </section>
    </inputs>
    <outputs>
        <data name="seed_orthologs" format="tabular" label="${tool.name} on ${on_string}: ${db.database}.seed_orthologs" from_work_dir="results.emapper.seed_orthologs">
            <actions>
                <action name="column_names" type="metadata" default="query_name,seed_eggNOG_ortholog,seed_ortholog_evalue,seed_ortholog_score"/>
            </actions>
        </data>
        <data name="annotations" format="tabular" label="${tool.name} on ${on_string}: ${db.database}.annotations" from_work_dir="results.emapper.annotations">
            <filter>not output_options['no_annot']</filter>
            <actions>
                <action name="column_names" type="metadata" default="query_name,seed_eggNOG_ortholog,seed_ortholog_evalue,seed_ortholog_score,predicted_gene_name,GO_terms,KEGG_KO,BiGG_Reactions,Annotation_tax_scope,Matching_OGs,best_OG|evalue|score,COG_functional_categories,eggNOG_HMM_model_annotation"/>
            </actions>
        </data>
        <data name="hmm_hits" format="tabular" label="${tool.name} on ${on_string}: ${db.database}.hmm_hits"  from_work_dir="results.emapper.hmm_hits">
            <filter>db['mode'] == 'hmmer'</filter>
            <actions>
                <action name="column_names" type="metadata" default="query_name,hit,evalue,sum_score,query_length,hmmfrom,hmmto,seqfrom,seqto,query_coverage"/>
            </actions>
        </data>
        <data name="annotations_orthologs" format="tabular" label="${tool.name} on ${on_string}: ${db.database}.annotations.orthologs"  from_work_dir="results.emapper.annotations.orthologs">
            <filter>output_options['report_orthologs']</filter>
            <actions>
                <action name="column_names" type="metadata" default="query_name,orthologs"/>
            </actions>
        </data>
    </outputs>
    <tests>
        <test>
            <param name="input" value="nlim_fragment.fasta" ftype="fasta"/>
            <param name="database" value="ENOG411CB2I"/>
            <param name="mode" value="hmmer"/>
            <!--
            <param name="test" value="true"/>
            -->
            <param name="eggnog_data" value="4.5"/>
            <param name="no_annot" value="true"/>
            <param name="no_file_comments" value="true"/>
            <output name="hmm_hits" file="HMM_nlim.emapper.hmm_hits" ftype="tabular"/>
        </test>
        <test>
            <param name="input" value="nlim_fragment.fasta" ftype="fasta"/>
            <param name="eggnog_data" value="4.5"/> <!-- not passed in test, but required for test to work -->
            <param name="no_annot" value="true"/>
            <param name="mode" value="diamond"/>
            <output name="seed_orthologs" file="DIA_nlim.emapper.seed_orthologs" ftype="tabular"/>
        </test>
    </tests>
    <help><![CDATA[

eggnog-mapper
=============
Overview
--------

``eggnog-mapper`` is a tool for fast functional annotation of novel sequences (genes or proteins) using precomputed eggNOG-based orthology assignments. 
Obvious examples include the annotation of novel genomes, transcriptomes or even metagenomic gene catalogs. 
The use of orthology predictions for functional annotation is considered more precise than traditional homology searches, 
as it avoids transferring annotations from paralogs (duplicate genes with a higher chance of being involved in functional divergence).

EggNOG-mapper is also available as a public online resource:  `<http://beta-eggnogdb.embl.de/#/app/emapper>`_.

Options
-------

``eggnog-mapper`` can use two search algorithms: `HMMER <http://hmmer.org/>`_ and `DIAMOND <https://github.com/bbuchfink/diamond>`_. 
HMMER is more sensitive, while DIAMOND is faster and useful for larger sets of query sequences. 


Outputs
-------

**hmm_hits**

For each query sequence, a list of significant 
hits to eggNOG Orthologous Groups (OGs) is reported. 
Each line in the file represents a hit, where evalue, bit-score, 
query-coverage and the sequence coordinates of the match are reported. 
If multiple hits exist for a given query, results are sorted by e-value.
Only returned when using HMMER mode. 

**seed_orthologs**

each line in the file provides the best match of each query within the best Orthologous Group (OG) 
reported in the [project].hmm_hits file, obtained running PHMMER against all sequences within the best OG. 
The seed ortholog is used to fetch fine-grained orthology relationships from eggNOG. 
If using the diamond search mode, seed orthologs are directly 
obtained from the best matching sequences by running DIAMOND against the whole eggNOG protein space.

**annotations**

This file provides final annotations of each query. Tab-delimited columns in the file are:

- ``query_name``: query sequence name
- ``seed_eggNOG_ortholog``: best protein match in eggNOG
- ``seed_ortholog_evalue``: best protein match (e-value)
- ``seed_ortholog_score``: best protein match (bit-score)
- ``predicted_gene_name``: Predicted gene name for query sequences
- ``GO_terms``: Comma delimited list of predicted Gene Ontology terms
- ``KEGG_pathways``: Comma delimited list of predicted KEGG pathways
- ``Annotation_tax_scope``: The taxonomic scope used to annotate this query sequence
- ``Matching_OGs``: Comma delimited list of matching eggNOG Orthologous Groups
- ``best_OG|evalue|score``: Best matching Orthologous Groups (only in HMM mode)
- ``COG functional categories``: COG functional category inferred from best matching OG
- ``eggNOG_HMM_model_annotation``: eggNOG functional description inferred from best matching OG

    ]]></help>
    <citations>
        <citation type="doi">10.1093/nar/gkv1248</citation>
    </citations>
</tool>