comparison FeatureLinkerUnlabeled.xml @ 16:fbe41f0cc71e draft default tip

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 5c080b1e2b99f1c88f4557e9fec8c45c9d23b906
author galaxyp
date Fri, 14 Jun 2024 21:35:21 +0000
parents b46263c3ee99
children
comparison
equal deleted inserted replaced
15:b46263c3ee99 16:fbe41f0cc71e
1 <?xml version='1.0' encoding='UTF-8'?>
2 <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.--> 1 <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
3 <!--Proposed Tool Section: [Map Alignment]--> 2 <!--Proposed Tool Section: [Feature Linking]-->
4 <tool id="FeatureLinkerUnlabeled" name="FeatureLinkerUnlabeled" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05"> 3 <tool id="FeatureLinkerUnlabeled" name="FeatureLinkerUnlabeled" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
5 <description>Groups corresponding features from multiple maps.</description> 4 <description>Groups corresponding features from multiple maps</description>
6 <macros> 5 <macros>
7 <token name="@EXECUTABLE@">FeatureLinkerUnlabeled</token> 6 <token name="@EXECUTABLE@">FeatureLinkerUnlabeled</token>
8 <import>macros.xml</import> 7 <import>macros.xml</import>
9 </macros> 8 </macros>
10 <expand macro="requirements"/> 9 <expand macro="requirements"/>
15 14
16 ## Preprocessing 15 ## Preprocessing
17 mkdir in_cond.in && 16 mkdir in_cond.in &&
18 #if $in_cond.in_select == "no" 17 #if $in_cond.in_select == "no"
19 mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 18 mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} &&
20 ${' '.join(["ln -s '%s' 'in_cond.in/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])} 19 ${' '.join(["cp '%s' 'in_cond.in/%s/%s.%s' && " % (f, i, re.sub('[^\w\-_]', '_', f.element_identifier), $gxy2omsext(f.ext)) for i, f in enumerate($in_cond.in) if f])}
21 #else 20 #else
22 ln -s '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' && 21 cp '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
23 #end if 22 #end if
24 mkdir out && 23 mkdir out &&
25 #if $design: 24 #if $design:
26 mkdir design && 25 mkdir design &&
27 ln -s '$design' 'design/${re.sub("[^\w\-_]", "_", $design.element_identifier)}.$gxy2omsext($design.ext)' && 26 cp '$design' 'design/${re.sub("[^\w\-_]", "_", $design.element_identifier)}.$gxy2omsext($design.ext)' &&
28 #end if 27 #end if
29 28
30 ## Main program call 29 ## Main program call
31 30
32 set -o pipefail && 31 set -o pipefail &&
60 <param name="in_select" type="select" label="Run tool in batch mode for -in"> 59 <param name="in_select" type="select" label="Run tool in batch mode for -in">
61 <option value="no">No: process all datasets jointly</option> 60 <option value="no">No: process all datasets jointly</option>
62 <option value="yes">Yes: process each dataset in an independent job</option> 61 <option value="yes">Yes: process each dataset in an independent job</option>
63 </param> 62 </param>
64 <when value="no"> 63 <when value="no">
65 <param argument="-in" type="data" format="consensusxml,featurexml" multiple="true" optional="false" label="input files separated by blanks" help=" select consensusxml,featurexml data sets(s)"/> 64 <param argument="-in" type="data" format="consensusxml,featurexml" multiple="true" label="input files separated by blanks" help=" select consensusxml,featurexml data sets(s)"/>
66 </when> 65 </when>
67 <when value="yes"> 66 <when value="yes">
68 <param argument="-in" type="data" format="consensusxml,featurexml" multiple="false" optional="false" label="input files separated by blanks" help=" select consensusxml,featurexml data sets(s)"/> 67 <param argument="-in" type="data" format="consensusxml,featurexml" label="input files separated by blanks" help=" select consensusxml,featurexml data sets(s)"/>
69 </when> 68 </when>
70 </conditional> 69 </conditional>
71 <param argument="-design" type="data" format="tabular" optional="true" label="input file containing the experimental design" help=" select tabular data sets(s)"/> 70 <param argument="-design" type="data" format="tabular" optional="true" label="input file containing the experimental design" help=" select tabular data sets(s)"/>
72 <param argument="-keep_subelements" type="boolean" truevalue="true" falsevalue="false" checked="false" label="For consensusXML input only: If set, the sub-features of the inputs are transferred to the output" help=""/> 71 <param argument="-keep_subelements" type="boolean" truevalue="true" falsevalue="false" checked="false" label="For consensusXML input only: If set, the sub-features of the inputs are transferred to the output" help=""/>
73 <section name="algorithm" title="Algorithm parameters section" help="" expanded="false"> 72 <section name="algorithm" title="Algorithm parameters section" help="" expanded="false">
74 <param name="second_nearest_gap" argument="-algorithm:second_nearest_gap" type="float" optional="true" min="1.0" value="2.0" label="Only link features whose distance to the second nearest neighbors (for both sides) is larger by 'second_nearest_gap' than the distance between the matched pair itself" help=""/> 73 <param name="second_nearest_gap" argument="-algorithm:second_nearest_gap" type="float" min="1.0" value="2.0" label="Only link features whose distance to the second nearest neighbors (for both sides) is larger by 'second_nearest_gap' than the distance between the matched pair itself" help=""/>
75 <param name="use_identifications" argument="-algorithm:use_identifications" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Never link features that are annotated with different peptides (features without ID's always match; only the best hit per peptide identification is considered)" help=""/> 74 <param name="use_identifications" argument="-algorithm:use_identifications" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Never link features that are annotated with different peptides (features without ID's always match; only the best hit per peptide identification is considered)" help=""/>
76 <param name="ignore_charge" argument="-algorithm:ignore_charge" type="boolean" truevalue="true" falsevalue="false" checked="false" label="false [default]: pairing requires equal charge state (or at least one unknown charge '0'); true: Pairing irrespective of charge state" help=""/> 75 <param name="ignore_charge" argument="-algorithm:ignore_charge" type="boolean" truevalue="true" falsevalue="false" checked="false" label="false [default]: pairing requires equal charge state (or at least one unknown charge '0'); true: Pairing irrespective of charge state" help=""/>
77 <param name="ignore_adduct" argument="-algorithm:ignore_adduct" type="boolean" truevalue="true" falsevalue="false" checked="true" label="true [default]: pairing requires equal adducts (or at least one without adduct annotation); true: Pairing irrespective of adducts" help=""/> 76 <param name="ignore_adduct" argument="-algorithm:ignore_adduct" type="boolean" truevalue="true" falsevalue="false" checked="true" label="true [default]: pairing requires equal adducts (or at least one without adduct annotation); true: Pairing irrespective of adducts" help=""/>
78 <section name="distance_RT" title="Distance component based on RT differences" help="" expanded="false"> 77 <section name="distance_RT" title="Distance component based on RT differences" help="" expanded="false">
79 <param name="max_difference" argument="-algorithm:distance_RT:max_difference" type="float" optional="true" min="0.0" value="100.0" label="Never pair features with a larger RT distance (in seconds)" help=""/> 78 <param name="max_difference" argument="-algorithm:distance_RT:max_difference" type="float" min="0.0" value="100.0" label="Never pair features with a larger RT distance (in seconds)" help=""/>
80 <param name="exponent" argument="-algorithm:distance_RT:exponent" type="float" optional="true" min="0.0" value="1.0" label="Normalized RT differences ([0-1], relative to 'max_difference') are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/> 79 <param name="exponent" argument="-algorithm:distance_RT:exponent" type="float" min="0.0" value="1.0" label="Normalized RT differences ([0-1], relative to 'max_difference') are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/>
81 <param name="weight" argument="-algorithm:distance_RT:weight" type="float" optional="true" min="0.0" value="1.0" label="Final RT distances are weighted by this facto" help=""/> 80 <param name="weight" argument="-algorithm:distance_RT:weight" type="float" min="0.0" value="1.0" label="Final RT distances are weighted by this facto" help=""/>
82 </section> 81 </section>
83 <section name="distance_MZ" title="Distance component based on m/z differences" help="" expanded="false"> 82 <section name="distance_MZ" title="Distance component based on m/z differences" help="" expanded="false">
84 <param name="max_difference" argument="-algorithm:distance_MZ:max_difference" type="float" optional="true" min="0.0" value="0.3" label="Never pair features with larger m/z distance (unit defined by 'unit')" help=""/> 83 <param name="max_difference" argument="-algorithm:distance_MZ:max_difference" type="float" min="0.0" value="0.3" label="Never pair features with larger m/z distance (unit defined by 'unit')" help=""/>
85 <param name="unit" argument="-algorithm:distance_MZ:unit" type="select" optional="true" label="Unit of the 'max_difference' paramete" help=""> 84 <param name="unit" argument="-algorithm:distance_MZ:unit" type="select" label="Unit of the 'max_difference' paramete" help="">
86 <option value="Da" selected="true">Da</option> 85 <option value="Da" selected="true">Da</option>
87 <option value="ppm">ppm</option> 86 <option value="ppm">ppm</option>
88 <expand macro="list_string_san" name="unit"/> 87 <expand macro="list_string_san" name="unit"/>
89 </param> 88 </param>
90 <param name="exponent" argument="-algorithm:distance_MZ:exponent" type="float" optional="true" min="0.0" value="2.0" label="Normalized ([0-1], relative to 'max_difference') m/z differences are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/> 89 <param name="exponent" argument="-algorithm:distance_MZ:exponent" type="float" min="0.0" value="2.0" label="Normalized ([0-1], relative to 'max_difference') m/z differences are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/>
91 <param name="weight" argument="-algorithm:distance_MZ:weight" type="float" optional="true" min="0.0" value="1.0" label="Final m/z distances are weighted by this facto" help=""/> 90 <param name="weight" argument="-algorithm:distance_MZ:weight" type="float" min="0.0" value="1.0" label="Final m/z distances are weighted by this facto" help=""/>
92 </section> 91 </section>
93 <section name="distance_intensity" title="Distance component based on differences in relative intensity (usually relative to highest peak in the whole data set)" help="" expanded="false"> 92 <section name="distance_intensity" title="Distance component based on differences in relative intensity (usually relative to highest peak in the whole data set)" help="" expanded="false">
94 <param name="exponent" argument="-algorithm:distance_intensity:exponent" type="float" optional="true" min="0.0" value="1.0" label="Differences in relative intensity ([0-1]) are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/> 93 <param name="exponent" argument="-algorithm:distance_intensity:exponent" type="float" min="0.0" value="1.0" label="Differences in relative intensity ([0-1]) are raised to this power (using 1 or 2 will be fast, everything else is REALLY slow)" help=""/>
95 <param name="weight" argument="-algorithm:distance_intensity:weight" type="float" optional="true" min="0.0" value="0.0" label="Final intensity distances are weighted by this facto" help=""/> 94 <param name="weight" argument="-algorithm:distance_intensity:weight" type="float" min="0.0" value="0.0" label="Final intensity distances are weighted by this facto" help=""/>
96 <param name="log_transform" argument="-algorithm:distance_intensity:log_transform" type="select" optional="true" label="Log-transform intensities" help="If disabled, d = |int_f2 - int_f1| / int_max. If enabled, d = |log(int_f2 + 1) - log(int_f1 + 1)| / log(int_max + 1))"> 95 <param name="log_transform" argument="-algorithm:distance_intensity:log_transform" type="select" label="Log-transform intensities" help="If disabled, d = |int_f2 - int_f1| / int_max. If enabled, d = |log(int_f2 + 1) - log(int_f1 + 1)| / log(int_max + 1))">
97 <option value="enabled">enabled</option> 96 <option value="enabled">enabled</option>
98 <option value="disabled" selected="true">disabled</option> 97 <option value="disabled" selected="true">disabled</option>
99 <expand macro="list_string_san" name="log_transform"/> 98 <expand macro="list_string_san" name="log_transform"/>
100 </param> 99 </param>
101 </section> 100 </section>
102 </section> 101 </section>
103 <expand macro="adv_opts_macro"> 102 <expand macro="adv_opts_macro">
104 <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/> 103 <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
105 <param argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help=""> 104 <param argument="-test" type="hidden" value="False" label="Enables the test mode (needed for internal use only)" help="" optional="true">
106 <expand macro="list_string_san" name="test"/> 105 <expand macro="list_string_san" name="test"/>
107 </param> 106 </param>
108 </expand> 107 </expand>
109 <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs"> 108 <param name="OPTIONAL_OUTPUTS" type="select" optional="true" multiple="true" label="Optional outputs">
110 <option value="ctd_out_FLAG">Output used ctd (ini) configuration file</option> 109 <option value="ctd_out_FLAG">Output used ctd (ini) configuration file</option>
114 <data name="out" label="${tool.name} on ${on_string}: out" format="consensusxml"/> 113 <data name="out" label="${tool.name} on ${on_string}: out" format="consensusxml"/>
115 <data name="ctd_out" format="xml" label="${tool.name} on ${on_string}: ctd"> 114 <data name="ctd_out" format="xml" label="${tool.name} on ${on_string}: ctd">
116 <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter> 115 <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
117 </data> 116 </data>
118 </outputs> 117 </outputs>
119 <tests><!-- TOPP_FeatureLinkerUnlabeled_1 --> 118 <tests>
119 <!-- TOPP_FeatureLinkerUnlabeled_1 -->
120 <test expect_num_outputs="2"> 120 <test expect_num_outputs="2">
121 <section name="adv_opts"> 121 <section name="adv_opts">
122 <param name="force" value="false"/> 122 <param name="force" value="false"/>
123 <param name="test" value="true"/> 123 <param name="test" value="true"/>
124 </section> 124 </section>
125 <conditional name="in_cond"> 125 <conditional name="in_cond">
126 <param name="in" value="FeatureLinkerUnlabeled_1_input1.featureXML,FeatureLinkerUnlabeled_1_input2.featureXML,FeatureLinkerUnlabeled_1_input3.featureXML"/> 126 <param name="in" value="FeatureLinkerUnlabeled_1_input1.featureXML,FeatureLinkerUnlabeled_1_input2.featureXML,FeatureLinkerUnlabeled_1_input3.featureXML"/>
127 </conditional> 127 </conditional>
128 <output name="out" file="FeatureLinkerUnlabeled_1_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/> 128 <output name="out" value="FeatureLinkerUnlabeled_1_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
129 <param name="keep_subelements" value="false"/> 129 <param name="keep_subelements" value="false"/>
130 <section name="algorithm"> 130 <section name="algorithm">
131 <param name="second_nearest_gap" value="2.0"/> 131 <param name="second_nearest_gap" value="2.0"/>
132 <param name="use_identifications" value="false"/> 132 <param name="use_identifications" value="false"/>
133 <param name="ignore_charge" value="true"/> 133 <param name="ignore_charge" value="true"/>
153 <output name="ctd_out" ftype="xml"> 153 <output name="ctd_out" ftype="xml">
154 <assert_contents> 154 <assert_contents>
155 <is_valid_xml/> 155 <is_valid_xml/>
156 </assert_contents> 156 </assert_contents>
157 </output> 157 </output>
158 <assert_stdout>
159 <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
160 </assert_stdout>
158 </test> 161 </test>
159 <!-- TOPP_FeatureLinkerUnlabeled_2 --> 162 <!-- TOPP_FeatureLinkerUnlabeled_2 -->
160 <test expect_num_outputs="2"> 163 <test expect_num_outputs="2">
161 <section name="adv_opts"> 164 <section name="adv_opts">
162 <param name="force" value="false"/> 165 <param name="force" value="false"/>
163 <param name="test" value="true"/> 166 <param name="test" value="true"/>
164 </section> 167 </section>
165 <conditional name="in_cond"> 168 <conditional name="in_cond">
166 <param name="in" value="FeatureLinkerUnlabeled_2_input1.featureXML,FeatureLinkerUnlabeled_2_input2.featureXML,FeatureLinkerUnlabeled_2_input3.featureXML"/> 169 <param name="in" value="FeatureLinkerUnlabeled_2_input1.featureXML,FeatureLinkerUnlabeled_2_input2.featureXML,FeatureLinkerUnlabeled_2_input3.featureXML"/>
167 </conditional> 170 </conditional>
168 <output name="out" file="FeatureLinkerUnlabeled_2_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/> 171 <output name="out" value="FeatureLinkerUnlabeled_2_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
169 <param name="keep_subelements" value="false"/> 172 <param name="keep_subelements" value="false"/>
170 <section name="algorithm"> 173 <section name="algorithm">
171 <param name="second_nearest_gap" value="2.0"/> 174 <param name="second_nearest_gap" value="2.0"/>
172 <param name="use_identifications" value="false"/> 175 <param name="use_identifications" value="false"/>
173 <param name="ignore_charge" value="false"/> 176 <param name="ignore_charge" value="false"/>
193 <output name="ctd_out" ftype="xml"> 196 <output name="ctd_out" ftype="xml">
194 <assert_contents> 197 <assert_contents>
195 <is_valid_xml/> 198 <is_valid_xml/>
196 </assert_contents> 199 </assert_contents>
197 </output> 200 </output>
201 <assert_stdout>
202 <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
203 </assert_stdout>
198 </test> 204 </test>
199 <!-- TOPP_FeatureLinkerUnlabeled_3 --> 205 <!-- TOPP_FeatureLinkerUnlabeled_3 -->
200 <test expect_num_outputs="2"> 206 <test expect_num_outputs="2">
201 <section name="adv_opts"> 207 <section name="adv_opts">
202 <param name="force" value="false"/> 208 <param name="force" value="false"/>
203 <param name="test" value="true"/> 209 <param name="test" value="true"/>
204 </section> 210 </section>
205 <conditional name="in_cond"> 211 <conditional name="in_cond">
206 <param name="in" value="FeatureLinkerUnlabeled_3_input1.featureXML,FeatureLinkerUnlabeled_3_input2.featureXML"/> 212 <param name="in" value="FeatureLinkerUnlabeled_3_input1.featureXML,FeatureLinkerUnlabeled_3_input2.featureXML"/>
207 </conditional> 213 </conditional>
208 <output name="out" file="FeatureLinkerUnlabeled_3_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/> 214 <output name="out" value="FeatureLinkerUnlabeled_3_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
209 <param name="keep_subelements" value="false"/> 215 <param name="keep_subelements" value="false"/>
210 <section name="algorithm"> 216 <section name="algorithm">
211 <param name="second_nearest_gap" value="1.5"/> 217 <param name="second_nearest_gap" value="1.5"/>
212 <param name="use_identifications" value="false"/> 218 <param name="use_identifications" value="false"/>
213 <param name="ignore_charge" value="true"/> 219 <param name="ignore_charge" value="true"/>
233 <output name="ctd_out" ftype="xml"> 239 <output name="ctd_out" ftype="xml">
234 <assert_contents> 240 <assert_contents>
235 <is_valid_xml/> 241 <is_valid_xml/>
236 </assert_contents> 242 </assert_contents>
237 </output> 243 </output>
244 <assert_stdout>
245 <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
246 </assert_stdout>
238 </test> 247 </test>
239 <!-- TOPP_FeatureLinkerUnlabeled_4 --> 248 <!-- TOPP_FeatureLinkerUnlabeled_4 -->
240 <test expect_num_outputs="2"> 249 <test expect_num_outputs="2">
241 <section name="adv_opts"> 250 <section name="adv_opts">
242 <param name="force" value="false"/> 251 <param name="force" value="false"/>
243 <param name="test" value="true"/> 252 <param name="test" value="true"/>
244 </section> 253 </section>
245 <conditional name="in_cond"> 254 <conditional name="in_cond">
246 <param name="in" value="FeatureLinkerUnlabeled_1_input1.featureXML,FeatureLinkerUnlabeled_1_input2.featureXML,FeatureLinkerUnlabeled_1_input3.featureXML"/> 255 <param name="in" value="FeatureLinkerUnlabeled_1_input1.featureXML,FeatureLinkerUnlabeled_1_input2.featureXML,FeatureLinkerUnlabeled_1_input3.featureXML"/>
247 </conditional> 256 </conditional>
248 <output name="out" file="FeatureLinkerUnlabeled_4_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/> 257 <output name="out" value="FeatureLinkerUnlabeled_4_output.consensusXML" compare="sim_size" delta_frac="0.7" ftype="consensusxml"/>
249 <param name="keep_subelements" value="false"/> 258 <param name="keep_subelements" value="false"/>
250 <section name="algorithm"> 259 <section name="algorithm">
251 <param name="second_nearest_gap" value="2.0"/> 260 <param name="second_nearest_gap" value="2.0"/>
252 <param name="use_identifications" value="true"/> 261 <param name="use_identifications" value="true"/>
253 <param name="ignore_charge" value="true"/> 262 <param name="ignore_charge" value="true"/>
273 <output name="ctd_out" ftype="xml"> 282 <output name="ctd_out" ftype="xml">
274 <assert_contents> 283 <assert_contents>
275 <is_valid_xml/> 284 <is_valid_xml/>
276 </assert_contents> 285 </assert_contents>
277 </output> 286 </output>
287 <assert_stdout>
288 <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
289 </assert_stdout>
278 </test> 290 </test>
279 </tests> 291 </tests>
280 <help><![CDATA[Groups corresponding features from multiple maps. 292 <help><![CDATA[Groups corresponding features from multiple maps.
281 293
282 294
283 For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/TOPP_FeatureLinkerUnlabeled.html]]></help> 295 For more information, visit https://openms.de/doxygen/release/3.1.0/html/TOPP_FeatureLinkerUnlabeled.html]]></help>
284 <expand macro="references"/> 296 <expand macro="references"/>
285 </tool> 297 </tool>