Mercurial > repos > petr-novak > dante
annotate dante.xml @ 30:f0663cdbae66 draft default tip
planemo upload commit 29868d121127a8bb509a42fb917b09f669ad4a09-dirty
author | petr-novak |
---|---|
date | Tue, 05 Nov 2024 15:14:35 +0000 |
parents | a9c81555f2fb |
children |
rev | line source |
---|---|
30
f0663cdbae66
planemo upload commit 29868d121127a8bb509a42fb917b09f669ad4a09-dirty
petr-novak
parents:
28
diff
changeset
|
1 <tool id="dante" name="Domain based ANnotation of Transposable Elements - DANTE" version="2.5.1"> |
0 | 2 <description> Tool for annotation of transposable elements based on the similarity to conserved protein domains database. </description> |
3 <requirements> | |
30
f0663cdbae66
planemo upload commit 29868d121127a8bb509a42fb917b09f669ad4a09-dirty
petr-novak
parents:
28
diff
changeset
|
4 <requirement type="package">dante=0.2.5</requirement> |
0 | 5 </requirements> |
15 | 6 <stdio> |
7 <regex match="Traceback" source="stderr" level="fatal" description="Unknown error" /> | |
8 <regex match="error" source="stderr" level="fatal" description="Unknown error" /> | |
9 </stdio> | |
10 <command> | |
11 #if str($input_type.input_type_selector) == "aln" | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
12 parse_aln.py -a $(input_sequences) -f sequences.fasta -p sequences.profile |
15 | 13 && |
14 INPUT_SEQUENCES="sequences.fasta" | |
15 #else | |
16 INPUT_SEQUENCES=$(input_sequences) | |
17 #end if | |
18 && | |
19 | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
20 dante --query \${INPUT_SEQUENCES} --domain_gff ${DomGff} |
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
21 --database $database |
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
22 --scoring_matrix ${scoring_matrix} |
24
df99812ded92
"planemo upload commit a0a9b02c60a91942a271b8b35648c0b152fe1ebd-dirty"
petr-novak
parents:
23
diff
changeset
|
23 --cpu \${GALAXY_SLOTS:-1} |
25
74babe57d739
"planemo upload commit a0a9b02c60a91942a271b8b35648c0b152fe1ebd-dirty"
petr-novak
parents:
24
diff
changeset
|
24 && |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
25 dante_gff_output_filtering.py --dom_gff ${DomGff} |
22 | 26 --domains_prot_seq ${Domains_filtered} --domains_filtered ${DomGff_filtered} |
27 --output_dir . | |
28 --selected_dom All --th_identity 0.35 | |
29 --th_similarity 0.45 --th_length 0.8 | |
30 --interruptions 3 --max_len_proportion 1.2 | |
31 --element_type '' | |
15 | 32 |
33 #if str($input_type.input_type_selector) == "aln" | |
34 && | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
35 coverage2gff.py -p sequences.profile -g ${DomGff} |
15 | 36 #end if |
10 | 37 |
15 | 38 #if str($iterative) == "Yes" |
39 && | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
40 dante_gff_output_filtering.py --dom_gff ${DomGff} |
15 | 41 --domains_prot_seq domains_filtered.fasta --domains_filtered domains_filtered.gff |
42 --output_dir . | |
43 --selected_dom All --th_identity 0.35 | |
44 --th_similarity 0.45 --th_length 0.9 | |
45 --interruptions 1 --max_len_proportion 1.1 | |
46 --element_type '' | |
47 && | |
10 | 48 |
15 | 49 |
50 | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
51 fasta2database.py domains_filtered.fasta domains_filtered.db |
15 | 52 domains_filtered.class |
53 && | |
10 | 54 |
15 | 55 lastdb -p domains_filtered.db domains_filtered.db |
56 && | |
57 | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
58 dante.py --query \${INPUT_SEQUENCES} --domain_gff ${DomGff2} |
15 | 59 --protein_database domains_filtered.db |
60 --classification domains_filtered.class | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
61 --scoring_matrix BL80 |
15 | 62 |
10 | 63 |
15 | 64 #if str($input_type.input_type_selector) == "aln" |
65 && | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
66 coverage2gff.py -p sequences.profile -g ${DomGff2} |
15 | 67 #end if |
68 #end if | |
10 | 69 |
15 | 70 </command> |
71 <inputs> | |
0 | 72 |
15 | 73 <conditional name="input_type"> |
74 <param name="input_type_selector" type="select" label="Choose the type of sequence data"> | |
75 <option value="fasta" selected="true">Fasta</option> | |
76 <option value="aln">Aln file</option> | |
77 </param> | |
78 <when value="fasta"> | |
79 <param name="input_sequences" type="data" format="fasta" label="Sequences in fasta format"/> | |
80 </when> | |
81 <when value="aln"> | |
82 <param name="input_sequences" type="data" format="txt" label="Sequences in ALN format (extracted from RepeatExplorer)"/> | |
83 </when> | |
84 </conditional> | |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
85 <param name="database" type="select" label="Select REXdb database"> |
30
f0663cdbae66
planemo upload commit 29868d121127a8bb509a42fb917b09f669ad4a09-dirty
petr-novak
parents:
28
diff
changeset
|
86 <option value="Viridiplantae_v4.0" selected="true">Viridiplantae_v4.0</option> |
23
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
87 <option value="Viridiplantae_v3.0" selected="true">Viridiplantae_v3.0</option> |
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
88 <option value="Metazoa_v3.1" selected="true">Metazoa_v3.1</option> |
e2bbc79f0fac
"planemo upload commit baf4ca09569b1b709c37f2df712e778da05edaf9-dirty"
petr-novak
parents:
22
diff
changeset
|
89 <option value="Viridiplantae_v2.2" selected="true">Viridiplantae_v2.2</option> |
30
f0663cdbae66
planemo upload commit 29868d121127a8bb509a42fb917b09f669ad4a09-dirty
petr-novak
parents:
28
diff
changeset
|
90 <option value="Metazoa_v3.0" selected="true">Metazoa_v3.0</option> |
15 | 91 </param> |
92 <param name="scoring_matrix" type="select" label="Select scoring matrix"> | |
93 <option value="BL80" selected="true" >BLOSUM80</option> | |
94 <option value="BL62">BLOSUM62</option> | |
95 <option value="MIQS">MIQS</option> | |
96 </param> | |
0 | 97 |
15 | 98 <param name="iterative" type="select" label="Run iterative search" truevalue="true" valsevalue="false" |
99 help="Second iteration run search against database of proteins extracted from query. Second iteration can yield some extra hits in some cases."> | |
100 <option value="No" selected="true">No</option> | |
101 <option value="Yes">Yes</option> | |
102 </param> | |
103 </inputs> | |
0 | 104 |
15 | 105 <outputs> |
22 | 106 <data format="gff3" name="DomGff" label="DANTE on ${on_string}, full output" /> |
107 <data format="gff3" name="DomGff_filtered" label="DANTE on ${on_string}, filtered output" /> | |
108 <data format="fasta" name="Domains_filtered" label="DANTE on ${on_string}, protein domains, filtered output" /> | |
15 | 109 <data format="gff3" name="DomGff2" label="DANTE on ${on_string}: 2nd pass"> |
110 <filter>iterative == "Yes" </filter> | |
111 </data> | |
112 </outputs> | |
113 <tests> | |
114 <test> | |
115 <param name="input_type" value="fasta"/> | |
116 <param name="input_sequences" value="GEPY_test_long_1.fa"/> | |
117 <param name="db_type" value="Viridiplantae_v3.0"/> | |
118 <param name="scoring_matrix" value="BL80"/> | |
119 <param name="iterative" value="No"/> | |
120 <output name="DomGff" value="GEPY_test_long_1_output_unfiltered.gff3"/> | |
121 </test> | |
0 | 122 |
15 | 123 |
124 </tests> | |
0 | 125 |
126 | |
15 | 127 <help> |
0 | 128 |
15 | 129 |
22 | 130 |
15 | 131 |
132 **WHAT IT DOES** | |
133 | |
134 This tool uses external aligning programme `LAST`_ and RepeatExplorer database of TE protein domains(REXdb) (Viridiplantae and Metazoa) | |
135 | |
136 .. _LAST: http://last.cbrc.jp/ | |
137 | |
138 *Lastal* runs similarity search to find hits between query DNA sequence and our database of protein domains from all Viridiplantae repetitive elements. Hits with overlapping positions in the sequence (even through other hits) forms a cluster which represents one potential protein domain. Strand orientation is taken into consideration when forming the clusters which means each cluster is built from forward or reverse stranded hits exclusively. The clusters are subsequently processed separately; within one cluster positions are scanned base-by-base and classification strings are assigned for each of them based on the database sequences which were mapped on that place. These asigned classification strings consist of a domain type as well as class and lineage of the repetitive element where the database protein comes from. Different classification levels are separated by "|" character. Every hit is scored according to the scoring matrix used for DNA-protein alignment (BLOSUM80). For single position only the hits reaching certain percentage (80% by default) of the overall best score within the whole cluster are reported. One cluster of overlapping hits represents one domain region and is recorded as one line in the resulting GFF3 file. Regarding the classition strings assigned to one region (cluster) there are three situations that can occur: | |
0 | 139 |
15 | 140 1. There is a single classification string assigned to each position as well as classifications along all the positions in the region are mutually uniform, in this case domain's final classification is equivalent to this unique classification. |
141 2. There are multiple classification strings assigned to one cluster, i.e. one domain, which leads to classification to the common (less specific) level of all the strings | |
142 3. There is a conflict at the domain type level, domains are reported with slash (e.g. RT/INT) and the classification is in this case ambiguous | |
143 | |
144 **There are 2 outputs produced by this tool:** | |
145 | |
146 1. GFF3 file of all proteins domains built from all hits found by LAST. Domains are reported per line as regions (start - end) on the original DNA sequence including the seq ID, alignment score and strand orientation. The last "Attributes" column contains several semicolon-separated information related to annotation, repetitive classification, alignment and its quality. This file can undergo further filtering using *Protein Domain Filter* tool | |
0 | 147 |
15 | 148 - Attributes reported always: |
149 | |
150 Name | |
0 | 151 type of domain; if ambiguous reported with slash |
152 | |
15 | 153 Final_classification |
0 | 154 definite classification based on all partial classifications of Region_hits_classifications attribute or |
155 "Ambiguous_domain" when there is an ambiguous domain type | |
156 | |
15 | 157 Region_Hits_Classifications |
0 | 158 all hits classifications (comma separated) from a certain domain region that reach the set score threshold; in case of multiple annotations the square brackets indicate the number of bases having this particular classification |
15 | 159 |
160 - Attributes only reported in case of unambiguous domain type (all the attributes including quality information are related to the Best_Hit of the region): | |
161 | |
162 Best_hit | |
0 | 163 classification and position of the best alignment with the highest score within the cluster; in the square brackets is the percentage of the whole cluster range that this best hit covers |
164 | |
15 | 165 Best_Hit_DB_Pos |
0 | 166 showing which part of the original datatabase domain corresponding to the Best Hit was aligned on query DNA (e.g. **Best_Hit_DB_Pos=17:75of79** means the Best Hit reported in GFF represents region from 17th to 75th of total 79 aminoacids in the original domain from the database) |
167 | |
15 | 168 DB_Seq |
0 | 169 database protein sequence of the best hit mapped to the query DNA |
170 | |
15 | 171 Query_Seq |
0 | 172 alignment sequence of the query DNA for the best hit |
173 | |
15 | 174 Identity |
0 | 175 ratio of identical amino acids in alignment sequence to the length of alignment |
176 | |
15 | 177 Similarity |
0 | 178 ratio of alignment positions with positive score (according to the scoring matrix) to the length of alignment |
179 | |
15 | 180 Relat_Length |
0 | 181 ratio of gapless length of the aligned protein sequence to the whole length of the database protein |
182 | |
15 | 183 Relat_Interruptions |
0 | 184 number of the interruptions (frameshifts + stop codons) in aligned translated query sequence per each starting 100 AA |
185 | |
15 | 186 Hit_to_DB_Length |
0 | 187 proportion of alignment length to the original length of the protein domain from database |
15 | 188 |
189 | |
0 | 190 |
15 | 191 !NOTE: Tool can in average process 0.5 Gbps of the DNA sequence per day. This is only a rough estimate and it is highly dependent on input data (repetive elements occurence) as well as computing resources. Maximum running time of the tool is 7 days. |
0 | 192 |
15 | 193 </help> |
0 | 194 </tool> |
195 |