diff OpenSwathRTNormalizer.xml @ 14:0eaf3d4219cf 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:37:00 +0000
parents d31426ef20f6
children
line wrap: on
line diff
--- a/OpenSwathRTNormalizer.xml	Thu Dec 01 19:19:38 2022 +0000
+++ b/OpenSwathRTNormalizer.xml	Fri Jun 14 21:37:00 2024 +0000
@@ -1,8 +1,7 @@
-<?xml version='1.0' encoding='UTF-8'?>
 <!--This is a configuration file for the integration of a tools into Galaxy (https://galaxyproject.org/). This file was automatically generated using CTDConverter.-->
-<!--Proposed Tool Section: [Targeted Experiments]-->
+<!--Proposed Tool Section: [Targeted Experiments and OpenSWATH]-->
 <tool id="OpenSwathRTNormalizer" name="OpenSwathRTNormalizer" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
-  <description>This tool will take a description of RT peptides and their normalized retention time to write out a transformation file on how to transform the RT space into the normalized space.</description>
+  <description>This tool will take a description of RT peptides and their normalized retention time to write out a transformation file on how to transform the RT space into the normalized space</description>
   <macros>
     <token name="@EXECUTABLE@">OpenSwathRTNormalizer</token>
     <import>macros.xml</import>
@@ -17,16 +16,16 @@
 mkdir in_cond.in &&
 #if $in_cond.in_select == "no"
 mkdir ${' '.join(["'in_cond.in/%s'" % (i) for i, f in enumerate($in_cond.in) if f])} && 
-${' '.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])}
+${' '.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])}
 #else
-ln -s '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
+cp '$in_cond.in' 'in_cond.in/${re.sub("[^\w\-_]", "_", $in_cond.in.element_identifier)}.$gxy2omsext($in_cond.in.ext)' &&
 #end if
 mkdir tr &&
-ln -s '$tr' 'tr/${re.sub("[^\w\-_]", "_", $tr.element_identifier)}.$gxy2omsext($tr.ext)' &&
+cp '$tr' 'tr/${re.sub("[^\w\-_]", "_", $tr.element_identifier)}.$gxy2omsext($tr.ext)' &&
 mkdir out &&
 #if $rt_norm:
   mkdir rt_norm &&
-  ln -s '$rt_norm' 'rt_norm/${re.sub("[^\w\-_]", "_", $rt_norm.element_identifier)}.$gxy2omsext($rt_norm.ext)' &&
+  cp '$rt_norm' 'rt_norm/${re.sub("[^\w\-_]", "_", $rt_norm.element_identifier)}.$gxy2omsext($rt_norm.ext)' &&
 #end if
 
 ## Main program call
@@ -66,19 +65,19 @@
         <option value="yes">Yes: process each dataset in an independent job</option>
       </param>
       <when value="no">
-        <param argument="-in" type="data" format="mzml" multiple="true" optional="false" label="Input files separated by blank" help=" select mzml data sets(s)"/>
+        <param argument="-in" type="data" format="mzml" multiple="true" label="Input files separated by blank" help=" select mzml data sets(s)"/>
       </when>
       <when value="yes">
-        <param argument="-in" type="data" format="mzml" multiple="false" optional="false" label="Input files separated by blank" help=" select mzml data sets(s)"/>
+        <param argument="-in" type="data" format="mzml" label="Input files separated by blank" help=" select mzml data sets(s)"/>
       </when>
     </conditional>
-    <param argument="-tr" type="data" format="csv,traml" optional="false" label="transition file with the RT peptides ('TraML' or 'csv')" help=" select csv,traml data sets(s)"/>
+    <param argument="-tr" type="data" format="csv,traml" label="transition file with the RT peptides ('TraML' or 'csv')" help=" select csv,traml data sets(s)"/>
     <param argument="-rt_norm" type="data" format="trafoxml" optional="true" label="RT normalization file (how to map the RTs of this run to the ones stored in the library)" help=" select trafoxml data sets(s)"/>
-    <param argument="-min_rsq" type="float" optional="true" value="0.95" label="Minimum r-squared of RT peptides regression" help=""/>
-    <param argument="-min_coverage" type="float" optional="true" value="0.6" label="Minimum relative amount of RT peptides to keep" help=""/>
+    <param argument="-min_rsq" type="float" value="0.95" label="Minimum r-squared of RT peptides regression" help=""/>
+    <param argument="-min_coverage" type="float" value="0.6" label="Minimum relative amount of RT peptides to keep" help=""/>
     <param argument="-estimateBestPeptides" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Whether the algorithms should try to choose the best peptides based on their peak shape for normalization" help="Use this option you do not expect all your peptides to be detected in a sample and too many 'bad' peptides enter the outlier removal step (e.g. due to them being endogenous peptides or using a less curated list of peptides)"/>
     <section name="RTNormalization" title="Parameters for the RTNormalization" help="RT normalization and outlier detection can be done iteratively (by default) which removes one outlier per iteration or using the RANSAC algorithm" expanded="false">
-      <param name="outlierMethod" argument="-RTNormalization:outlierMethod" type="select" optional="true" label="Which outlier detection method to use (valid: 'iter_residual', 'iter_jackknife', 'ransac', 'none')" help="Iterative methods remove one outlier at a time. Jackknife approach optimizes for maximum r-squared improvement while 'iter_residual' removes the datapoint with the largest residual error (removal by residual is computationally cheaper, use this with lots of peptides)">
+      <param name="outlierMethod" argument="-RTNormalization:outlierMethod" type="select" label="Which outlier detection method to use (valid: 'iter_residual', 'iter_jackknife', 'ransac', 'none')" help="Iterative methods remove one outlier at a time. Jackknife approach optimizes for maximum r-squared improvement while 'iter_residual' removes the datapoint with the largest residual error (removal by residual is computationally cheaper, use this with lots of peptides)">
         <option value="iter_residual" selected="true">iter_residual</option>
         <option value="iter_jackknife">iter_jackknife</option>
         <option value="ransac">ransac</option>
@@ -86,42 +85,42 @@
         <expand macro="list_string_san" name="outlierMethod"/>
       </param>
       <param name="useIterativeChauvenet" argument="-RTNormalization:useIterativeChauvenet" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Whether to use Chauvenet's criterion when using iterative methods" help="This should be used if the algorithm removes too many datapoints but it may lead to true outliers being retained"/>
-      <param name="RANSACMaxIterations" argument="-RTNormalization:RANSACMaxIterations" type="integer" optional="true" value="1000" label="Maximum iterations for the RANSAC outlier detection algorithm" help=""/>
-      <param name="RANSACMaxPercentRTThreshold" argument="-RTNormalization:RANSACMaxPercentRTThreshold" type="integer" optional="true" value="3" label="Maximum threshold in RT dimension for the RANSAC outlier detection algorithm (in percent of the total gradient)" help="Default is set to 3% which is around +/- 4 minutes on a 120 gradient"/>
-      <param name="RANSACSamplingSize" argument="-RTNormalization:RANSACSamplingSize" type="integer" optional="true" value="10" label="Sampling size of data points per iteration for the RANSAC outlier detection algorithm" help=""/>
+      <param name="RANSACMaxIterations" argument="-RTNormalization:RANSACMaxIterations" type="integer" value="1000" label="Maximum iterations for the RANSAC outlier detection algorithm" help=""/>
+      <param name="RANSACMaxPercentRTThreshold" argument="-RTNormalization:RANSACMaxPercentRTThreshold" type="integer" value="3" label="Maximum threshold in RT dimension for the RANSAC outlier detection algorithm (in percent of the total gradient)" help="Default is set to 3% which is around +/- 4 minutes on a 120 gradient"/>
+      <param name="RANSACSamplingSize" argument="-RTNormalization:RANSACSamplingSize" type="integer" value="10" label="Sampling size of data points per iteration for the RANSAC outlier detection algorithm" help=""/>
     </section>
     <section name="algorithm" title="Algorithm parameters section" help="" expanded="false">
-      <param name="stop_report_after_feature" argument="-algorithm:stop_report_after_feature" type="integer" optional="true" value="-1" label="Stop reporting after feature (ordered by quality; -1 means do not stop)" help=""/>
-      <param name="rt_extraction_window" argument="-algorithm:rt_extraction_window" type="float" optional="true" value="-1.0" label="Only extract RT around this value (-1 means extract over the whole range, a value of 500 means to extract around +/- 500 s of the expected elution)" help="For this to work, the TraML input file needs to contain normalized RT values"/>
-      <param name="rt_normalization_factor" argument="-algorithm:rt_normalization_factor" type="float" optional="true" value="1.0" label="The normalized RT is expected to be between 0 and 1" help="If your normalized RT has a different range, pass this here (e.g. it goes from 0 to 100, set this value to 100)"/>
-      <param name="quantification_cutoff" argument="-algorithm:quantification_cutoff" type="float" optional="true" min="0.0" value="0.0" label="Cutoff in m/z below which peaks should not be used for quantification any more" help=""/>
+      <param name="stop_report_after_feature" argument="-algorithm:stop_report_after_feature" type="integer" value="-1" label="Stop reporting after feature (ordered by quality; -1 means do not stop)" help=""/>
+      <param name="rt_extraction_window" argument="-algorithm:rt_extraction_window" type="float" value="-1.0" label="Only extract RT around this value (-1 means extract over the whole range, a value of 500 means to extract around +/- 500 s of the expected elution)" help="For this to work, the TraML input file needs to contain normalized RT values"/>
+      <param name="rt_normalization_factor" argument="-algorithm:rt_normalization_factor" type="float" value="1.0" label="The normalized RT is expected to be between 0 and 1" help="If your normalized RT has a different range, pass this here (e.g. it goes from 0 to 100, set this value to 100)"/>
+      <param name="quantification_cutoff" argument="-algorithm:quantification_cutoff" type="float" min="0.0" value="0.0" label="Cutoff in m/z below which peaks should not be used for quantification any more" help=""/>
       <param name="write_convex_hull" argument="-algorithm:write_convex_hull" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Whether to write out all points of all features into the featureXML" help=""/>
-      <param name="spectrum_addition_method" argument="-algorithm:spectrum_addition_method" type="select" optional="true" label="For spectrum addition, either use simple concatenation or use peak resampling" help="">
+      <param name="spectrum_addition_method" argument="-algorithm:spectrum_addition_method" type="select" label="For spectrum addition, either use simple concatenation or use peak resampling" help="">
         <option value="simple" selected="true">simple</option>
         <option value="resample">resample</option>
         <expand macro="list_string_san" name="spectrum_addition_method"/>
       </param>
-      <param name="add_up_spectra" argument="-algorithm:add_up_spectra" type="integer" optional="true" min="1" value="1" label="Add up spectra around the peak apex (needs to be a non-even integer)" help=""/>
-      <param name="spacing_for_spectra_resampling" argument="-algorithm:spacing_for_spectra_resampling" type="float" optional="true" min="0.0" value="0.005" label="If spectra are to be added, use this spacing to add them up" help=""/>
-      <param name="uis_threshold_sn" argument="-algorithm:uis_threshold_sn" type="integer" optional="true" value="-1" label="S/N threshold to consider identification transition (set to -1 to consider all)" help=""/>
-      <param name="uis_threshold_peak_area" argument="-algorithm:uis_threshold_peak_area" type="integer" optional="true" value="0" label="Peak area threshold to consider identification transition (set to -1 to consider all)" help=""/>
-      <param name="scoring_model" argument="-algorithm:scoring_model" type="select" optional="true" label="Scoring model to use" help="">
+      <param name="add_up_spectra" argument="-algorithm:add_up_spectra" type="integer" min="1" value="1" label="Add up spectra around the peak apex (needs to be a non-even integer)" help=""/>
+      <param name="spacing_for_spectra_resampling" argument="-algorithm:spacing_for_spectra_resampling" type="float" min="0.0" value="0.005" label="If spectra are to be added, use this spacing to add them up" help=""/>
+      <param name="uis_threshold_sn" argument="-algorithm:uis_threshold_sn" type="integer" value="-1" label="S/N threshold to consider identification transition (set to -1 to consider all)" help=""/>
+      <param name="uis_threshold_peak_area" argument="-algorithm:uis_threshold_peak_area" type="integer" value="0" label="Peak area threshold to consider identification transition (set to -1 to consider all)" help=""/>
+      <param name="scoring_model" argument="-algorithm:scoring_model" type="select" label="Scoring model to use" help="">
         <option value="default" selected="true">default</option>
         <option value="single_transition">single_transition</option>
         <expand macro="list_string_san" name="scoring_model"/>
       </param>
-      <param name="im_extra_drift" argument="-algorithm:im_extra_drift" type="float" optional="true" min="0.0" value="0.0" label="Extra drift time to extract for IM scoring (as a fraction" help="e.g. 0.25 means 25% extra on each side)"/>
+      <param name="im_extra_drift" argument="-algorithm:im_extra_drift" type="float" min="0.0" value="0.0" label="Extra drift time to extract for IM scoring (as a fraction" help="e.g. 0.25 means 25% extra on each side)"/>
       <param name="strict" argument="-algorithm:strict" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Whether to error (true) or skip (false) if a transition in a transition group does not have a corresponding chromatogram" help=""/>
       <section name="TransitionGroupPicker" title="" help="" expanded="false">
-        <param name="stop_after_feature" argument="-algorithm:TransitionGroupPicker:stop_after_feature" type="integer" optional="true" value="-1" label="Stop finding after feature (ordered by intensity; -1 means do not stop)" help=""/>
-        <param name="stop_after_intensity_ratio" argument="-algorithm:TransitionGroupPicker:stop_after_intensity_ratio" type="float" optional="true" value="0.0001" label="Stop after reaching intensity ratio" help=""/>
-        <param name="min_peak_width" argument="-algorithm:TransitionGroupPicker:min_peak_width" type="float" optional="true" value="0.001" label="Minimal peak width (s), discard all peaks below this value (-1 means no action)" help=""/>
-        <param name="peak_integration" argument="-algorithm:TransitionGroupPicker:peak_integration" type="select" optional="true" label="Calculate the peak area and height either the smoothed or the raw chromatogram data" help="">
+        <param name="stop_after_feature" argument="-algorithm:TransitionGroupPicker:stop_after_feature" type="integer" value="-1" label="Stop finding after feature (ordered by intensity; -1 means do not stop)" help=""/>
+        <param name="stop_after_intensity_ratio" argument="-algorithm:TransitionGroupPicker:stop_after_intensity_ratio" type="float" value="0.0001" label="Stop after reaching intensity ratio" help=""/>
+        <param name="min_peak_width" argument="-algorithm:TransitionGroupPicker:min_peak_width" type="float" value="0.001" label="Minimal peak width (s), discard all peaks below this value (-1 means no action)" help=""/>
+        <param name="peak_integration" argument="-algorithm:TransitionGroupPicker:peak_integration" type="select" label="Calculate the peak area and height either the smoothed or the raw chromatogram data" help="">
           <option value="original" selected="true">original</option>
           <option value="smoothed">smoothed</option>
           <expand macro="list_string_san" name="peak_integration"/>
         </param>
-        <param name="background_subtraction" argument="-algorithm:TransitionGroupPicker:background_subtraction" type="select" optional="true" label="Remove background from peak signal using estimated noise levels" help="The 'original' method is only provided for historical purposes, please use the 'exact' method and set parameters using the PeakIntegrator: settings. The same original or smoothed chromatogram specified by peak_integration will be used for background estimation">
+        <param name="background_subtraction" argument="-algorithm:TransitionGroupPicker:background_subtraction" type="select" label="Remove background from peak signal using estimated noise levels" help="The 'original' method is only provided for historical purposes, please use the 'exact' method and set parameters using the PeakIntegrator: settings. The same original or smoothed chromatogram specified by peak_integration will be used for background estimation">
           <option value="none" selected="true">none</option>
           <option value="original">original</option>
           <option value="exact">exact</option>
@@ -130,29 +129,29 @@
         <param name="recalculate_peaks" argument="-algorithm:TransitionGroupPicker:recalculate_peaks" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Tries to get better peak picking by looking at peak consistency of all picked peaks" help="Tries to use the consensus (median) peak border if the variation within the picked peaks is too large"/>
         <param name="use_precursors" argument="-algorithm:TransitionGroupPicker:use_precursors" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use precursor chromatogram for peak picking (note that this may lead to precursor signal driving the peak picking)" help=""/>
         <param name="use_consensus" argument="-algorithm:TransitionGroupPicker:use_consensus" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Use consensus peak boundaries when computing transition group picking (if false, compute independent peak boundaries for each transition)" help=""/>
-        <param name="recalculate_peaks_max_z" argument="-algorithm:TransitionGroupPicker:recalculate_peaks_max_z" type="float" optional="true" value="1.0" label="Determines the maximal Z-Score (difference measured in standard deviations) that is considered too large for peak boundaries" help="If the Z-Score is above this value, the median is used for peak boundaries (default value 1.0)"/>
-        <param name="minimal_quality" argument="-algorithm:TransitionGroupPicker:minimal_quality" type="float" optional="true" value="-10000.0" label="Only if compute_peak_quality is set, this parameter will not consider peaks below this quality threshold" help=""/>
-        <param name="resample_boundary" argument="-algorithm:TransitionGroupPicker:resample_boundary" type="float" optional="true" value="15.0" label="For computing peak quality, how many extra seconds should be sample left and right of the actual peak" help=""/>
+        <param name="recalculate_peaks_max_z" argument="-algorithm:TransitionGroupPicker:recalculate_peaks_max_z" type="float" value="1.0" label="Determines the maximal Z-Score (difference measured in standard deviations) that is considered too large for peak boundaries" help="If the Z-Score is above this value, the median is used for peak boundaries (default value 1.0)"/>
+        <param name="minimal_quality" argument="-algorithm:TransitionGroupPicker:minimal_quality" type="float" value="-10000.0" label="Only if compute_peak_quality is set, this parameter will not consider peaks below this quality threshold" help=""/>
+        <param name="resample_boundary" argument="-algorithm:TransitionGroupPicker:resample_boundary" type="float" value="15.0" label="For computing peak quality, how many extra seconds should be sample left and right of the actual peak" help=""/>
         <param name="compute_peak_quality" argument="-algorithm:TransitionGroupPicker:compute_peak_quality" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Tries to compute a quality value for each peakgroup and detect outlier transitions" help="The resulting score is centered around zero and values above 0 are generally good and below -1 or -2 are usually bad"/>
         <param name="compute_peak_shape_metrics" argument="-algorithm:TransitionGroupPicker:compute_peak_shape_metrics" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Calculates various peak shape metrics" help="(e.g., tailing) that can be used for downstream QC/QA"/>
         <param name="compute_total_mi" argument="-algorithm:TransitionGroupPicker:compute_total_mi" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Compute mutual information metrics for individual transitions that can be used for OpenSWATH/IPF scoring" help=""/>
-        <param name="boundary_selection_method" argument="-algorithm:TransitionGroupPicker:boundary_selection_method" type="select" optional="true" label="Method to use when selecting the best boundaries for peaks" help="">
+        <param name="boundary_selection_method" argument="-algorithm:TransitionGroupPicker:boundary_selection_method" type="select" label="Method to use when selecting the best boundaries for peaks" help="">
           <option value="largest" selected="true">largest</option>
           <option value="widest">widest</option>
           <expand macro="list_string_san" name="boundary_selection_method"/>
         </param>
         <section name="PeakPickerMRM" title="" help="" expanded="false">
-          <param name="sgolay_frame_length" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sgolay_frame_length" type="integer" optional="true" value="15" label="The number of subsequent data points used for smoothing" help="This number has to be uneven. If it is not, 1 will be added"/>
-          <param name="sgolay_polynomial_order" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sgolay_polynomial_order" type="integer" optional="true" value="3" label="Order of the polynomial that is fitted" help=""/>
-          <param name="gauss_width" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:gauss_width" type="float" optional="true" value="50.0" label="Gaussian width in seconds, estimated peak size" help=""/>
+          <param name="sgolay_frame_length" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sgolay_frame_length" type="integer" value="15" label="The number of subsequent data points used for smoothing" help="This number has to be uneven. If it is not, 1 will be added"/>
+          <param name="sgolay_polynomial_order" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sgolay_polynomial_order" type="integer" value="3" label="Order of the polynomial that is fitted" help=""/>
+          <param name="gauss_width" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:gauss_width" type="float" value="50.0" label="Gaussian width in seconds, estimated peak size" help=""/>
           <param name="use_gauss" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:use_gauss" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Use Gaussian filter for smoothing (alternative is Savitzky-Golay filter)" help=""/>
-          <param name="peak_width" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:peak_width" type="float" optional="true" value="-1.0" label="Force a certain minimal peak_width on the data" help="(e.g. extend the peak at least by this amount on both sides) in seconds. -1 turns this feature off"/>
-          <param name="signal_to_noise" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:signal_to_noise" type="float" optional="true" min="0.0" value="1.0" label="Signal-to-noise threshold at which a peak will not be extended any more" help="Note that setting this too high (e.g. 1.0) can lead to peaks whose flanks are not fully captured"/>
-          <param name="sn_win_len" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sn_win_len" type="float" optional="true" value="1000.0" label="Signal to noise window length" help=""/>
-          <param name="sn_bin_count" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sn_bin_count" type="integer" optional="true" value="30" label="Signal to noise bin count" help=""/>
+          <param name="peak_width" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:peak_width" type="float" value="-1.0" label="Force a certain minimal peak_width on the data" help="(e.g. extend the peak at least by this amount on both sides) in seconds. -1 turns this feature off"/>
+          <param name="signal_to_noise" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:signal_to_noise" type="float" min="0.0" value="1.0" label="Signal-to-noise threshold at which a peak will not be extended any more" help="Note that setting this too high (e.g. 1.0) can lead to peaks whose flanks are not fully captured"/>
+          <param name="sn_win_len" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sn_win_len" type="float" value="1000.0" label="Signal to noise window length" help=""/>
+          <param name="sn_bin_count" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:sn_bin_count" type="integer" value="30" label="Signal to noise bin count" help=""/>
           <param name="write_sn_log_messages" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:write_sn_log_messages" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Write out log messages of the signal-to-noise estimator in case of sparse windows or median in rightmost histogram bin" help=""/>
           <param name="remove_overlapping_peaks" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:remove_overlapping_peaks" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Try to remove overlapping peaks during peak picking" help=""/>
-          <param name="method" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:method" type="select" optional="true" label="Which method to choose for chromatographic peak-picking (OpenSWATH legacy on raw data, corrected picking on smoothed chromatogram or Crawdad on smoothed chromatogram)" help="">
+          <param name="method" argument="-algorithm:TransitionGroupPicker:PeakPickerMRM:method" type="select" label="Which method to choose for chromatographic peak-picking (OpenSWATH legacy on raw data, corrected picking on smoothed chromatogram or Crawdad on smoothed chromatogram)" help="">
             <option value="legacy">legacy</option>
             <option value="corrected" selected="true">corrected</option>
             <option value="crawdad">crawdad</option>
@@ -160,13 +159,13 @@
           </param>
         </section>
         <section name="PeakIntegrator" title="" help="" expanded="false">
-          <param name="integration_type" argument="-algorithm:TransitionGroupPicker:PeakIntegrator:integration_type" type="select" optional="true" label="The integration technique to use in integratePeak() and estimateBackground() which uses either the summed intensity, integration by Simpson's rule or trapezoidal integration" help="">
+          <param name="integration_type" argument="-algorithm:TransitionGroupPicker:PeakIntegrator:integration_type" type="select" label="The integration technique to use in integratePeak() and estimateBackground() which uses either the summed intensity, integration by Simpson's rule or trapezoidal integration" help="">
             <option value="intensity_sum" selected="true">intensity_sum</option>
             <option value="simpson">simpson</option>
             <option value="trapezoid">trapezoid</option>
             <expand macro="list_string_san" name="integration_type"/>
           </param>
-          <param name="baseline_type" argument="-algorithm:TransitionGroupPicker:PeakIntegrator:baseline_type" type="select" optional="true" label="The baseline type to use in estimateBackground() based on the peak boundaries" help="A rectangular baseline shape is computed based either on the minimal intensity of the peak boundaries, the maximum intensity or the average intensity (base_to_base)">
+          <param name="baseline_type" argument="-algorithm:TransitionGroupPicker:PeakIntegrator:baseline_type" type="select" label="The baseline type to use in estimateBackground() based on the peak boundaries" help="A rectangular baseline shape is computed based either on the minimal intensity of the peak boundaries, the maximum intensity or the average intensity (base_to_base)">
             <option value="base_to_base" selected="true">base_to_base</option>
             <option value="vertical_division">vertical_division</option>
             <option value="vertical_division_min">vertical_division_min</option>
@@ -177,27 +176,27 @@
         </section>
       </section>
       <section name="DIAScoring" title="" help="" expanded="false">
-        <param name="dia_extraction_window" argument="-algorithm:DIAScoring:dia_extraction_window" type="float" optional="true" min="0.0" value="0.05" label="DIA extraction window in Th or ppm" help=""/>
-        <param name="dia_extraction_unit" argument="-algorithm:DIAScoring:dia_extraction_unit" type="select" optional="true" label="DIA extraction window unit" help="">
+        <param name="dia_extraction_window" argument="-algorithm:DIAScoring:dia_extraction_window" type="float" min="0.0" value="0.05" label="DIA extraction window in Th or ppm" help=""/>
+        <param name="dia_extraction_unit" argument="-algorithm:DIAScoring:dia_extraction_unit" type="select" label="DIA extraction window unit" help="">
           <option value="Th" selected="true">Th</option>
           <option value="ppm">ppm</option>
           <expand macro="list_string_san" name="dia_extraction_unit"/>
         </param>
         <param name="dia_centroided" argument="-algorithm:DIAScoring:dia_centroided" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Use centroided DIA data" help=""/>
-        <param name="dia_byseries_intensity_min" argument="-algorithm:DIAScoring:dia_byseries_intensity_min" type="float" optional="true" min="0.0" value="300.0" label="DIA b/y series minimum intensity to conside" help=""/>
-        <param name="dia_byseries_ppm_diff" argument="-algorithm:DIAScoring:dia_byseries_ppm_diff" type="float" optional="true" min="0.0" value="10.0" label="DIA b/y series minimal difference in ppm to conside" help=""/>
-        <param name="dia_nr_isotopes" argument="-algorithm:DIAScoring:dia_nr_isotopes" type="integer" optional="true" min="0" value="4" label="DIA number of isotopes to conside" help=""/>
-        <param name="dia_nr_charges" argument="-algorithm:DIAScoring:dia_nr_charges" type="integer" optional="true" min="0" value="4" label="DIA number of charges to conside" help=""/>
-        <param name="peak_before_mono_max_ppm_diff" argument="-algorithm:DIAScoring:peak_before_mono_max_ppm_diff" type="float" optional="true" min="0.0" value="20.0" label="DIA maximal difference in ppm to count a peak at lower m/z when searching for evidence that a peak might not be monoisotopic" help=""/>
+        <param name="dia_byseries_intensity_min" argument="-algorithm:DIAScoring:dia_byseries_intensity_min" type="float" min="0.0" value="300.0" label="DIA b/y series minimum intensity to conside" help=""/>
+        <param name="dia_byseries_ppm_diff" argument="-algorithm:DIAScoring:dia_byseries_ppm_diff" type="float" min="0.0" value="10.0" label="DIA b/y series minimal difference in ppm to conside" help=""/>
+        <param name="dia_nr_isotopes" argument="-algorithm:DIAScoring:dia_nr_isotopes" type="integer" min="0" value="4" label="DIA number of isotopes to conside" help=""/>
+        <param name="dia_nr_charges" argument="-algorithm:DIAScoring:dia_nr_charges" type="integer" min="0" value="4" label="DIA number of charges to conside" help=""/>
+        <param name="peak_before_mono_max_ppm_diff" argument="-algorithm:DIAScoring:peak_before_mono_max_ppm_diff" type="float" min="0.0" value="20.0" label="DIA maximal difference in ppm to count a peak at lower m/z when searching for evidence that a peak might not be monoisotopic" help=""/>
       </section>
       <section name="EMGScoring" title="" help="" expanded="false">
-        <param name="interpolation_step" argument="-algorithm:EMGScoring:interpolation_step" type="float" optional="true" value="0.2" label="Sampling rate for the interpolation of the model function" help=""/>
-        <param name="tolerance_stdev_bounding_box" argument="-algorithm:EMGScoring:tolerance_stdev_bounding_box" type="float" optional="true" value="3.0" label="Bounding box has range [minimim of data, maximum of data] enlarged by tolerance_stdev_bounding_box times the standard deviation of the data" help=""/>
-        <param name="max_iteration" argument="-algorithm:EMGScoring:max_iteration" type="integer" optional="true" value="500" label="Maximum number of iterations using by Levenberg-Marquardt algorithm" help=""/>
+        <param name="interpolation_step" argument="-algorithm:EMGScoring:interpolation_step" type="float" value="0.2" label="Sampling rate for the interpolation of the model function" help=""/>
+        <param name="tolerance_stdev_bounding_box" argument="-algorithm:EMGScoring:tolerance_stdev_bounding_box" type="float" value="3.0" label="Bounding box has range [minimim of data, maximum of data] enlarged by tolerance_stdev_bounding_box times the standard deviation of the data" help=""/>
+        <param name="max_iteration" argument="-algorithm:EMGScoring:max_iteration" type="integer" value="500" label="Maximum number of iterations using by Levenberg-Marquardt algorithm" help=""/>
         <param name="init_mom" argument="-algorithm:EMGScoring:init_mom" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Initialize parameters using method of moments estimators" help=""/>
         <section name="statistics" title="" help="" expanded="false">
-          <param name="mean" argument="-algorithm:EMGScoring:statistics:mean" type="float" optional="true" value="1.0" label="Centroid position of the model" help=""/>
-          <param name="variance" argument="-algorithm:EMGScoring:statistics:variance" type="float" optional="true" value="1.0" label="Variance of the model" help=""/>
+          <param name="mean" argument="-algorithm:EMGScoring:statistics:mean" type="float" value="1.0" label="Centroid position of the model" help=""/>
+          <param name="variance" argument="-algorithm:EMGScoring:statistics:variance" type="float" value="1.0" label="Variance of the model" help=""/>
         </section>
       </section>
       <section name="Scores" title="" help="" expanded="false">
@@ -224,15 +223,15 @@
       </section>
     </section>
     <section name="peptideEstimation" title="Parameters for the peptide estimation (use -estimateBestPeptides to enable)" help="" expanded="false">
-      <param name="InitialQualityCutoff" argument="-peptideEstimation:InitialQualityCutoff" type="float" optional="true" value="0.5" label="The initial overall quality cutoff for a peak to be scored (range ca" help="-2 to 2)"/>
-      <param name="OverallQualityCutoff" argument="-peptideEstimation:OverallQualityCutoff" type="float" optional="true" value="5.5" label="The overall quality cutoff for a peak to go into the retention time estimation (range ca" help="0 to 10)"/>
-      <param name="NrRTBins" argument="-peptideEstimation:NrRTBins" type="integer" optional="true" value="10" label="Number of RT bins to use to compute coverage" help="This option should be used to ensure that there is a complete coverage of the RT space (this should detect cases where only a part of the RT gradient is actually covered by normalization peptides)"/>
-      <param name="MinPeptidesPerBin" argument="-peptideEstimation:MinPeptidesPerBin" type="integer" optional="true" value="1" label="Minimal number of peptides that are required for a bin to counted as 'covered'" help=""/>
-      <param name="MinBinsFilled" argument="-peptideEstimation:MinBinsFilled" type="integer" optional="true" value="8" label="Minimal number of bins required to be covered" help=""/>
+      <param name="InitialQualityCutoff" argument="-peptideEstimation:InitialQualityCutoff" type="float" value="0.5" label="The initial overall quality cutoff for a peak to be scored (range ca" help="-2 to 2)"/>
+      <param name="OverallQualityCutoff" argument="-peptideEstimation:OverallQualityCutoff" type="float" value="5.5" label="The overall quality cutoff for a peak to go into the retention time estimation (range ca" help="0 to 10)"/>
+      <param name="NrRTBins" argument="-peptideEstimation:NrRTBins" type="integer" value="10" label="Number of RT bins to use to compute coverage" help="This option should be used to ensure that there is a complete coverage of the RT space (this should detect cases where only a part of the RT gradient is actually covered by normalization peptides)"/>
+      <param name="MinPeptidesPerBin" argument="-peptideEstimation:MinPeptidesPerBin" type="integer" value="1" label="Minimal number of peptides that are required for a bin to counted as 'covered'" help=""/>
+      <param name="MinBinsFilled" argument="-peptideEstimation:MinBinsFilled" type="integer" value="8" label="Minimal number of bins required to be covered" help=""/>
     </section>
     <expand macro="adv_opts_macro">
       <param argument="-force" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Overrides tool-specific checks" help=""/>
-      <param argument="-test" type="hidden" optional="true" value="False" label="Enables the test mode (needed for internal use only)" help="">
+      <param argument="-test" type="hidden" value="False" label="Enables the test mode (needed for internal use only)" help="" optional="true">
         <expand macro="list_string_san" name="test"/>
       </param>
     </expand>
@@ -246,7 +245,8 @@
       <filter>OPTIONAL_OUTPUTS is not None and "ctd_out_FLAG" in OPTIONAL_OUTPUTS</filter>
     </data>
   </outputs>
-  <tests><!-- TOPP_OpenSwathRTNormalizer_test_1 -->
+  <tests>
+    <!-- TOPP_OpenSwathRTNormalizer_test_1 -->
     <test expect_num_outputs="2">
       <section name="adv_opts">
         <param name="force" value="false"/>
@@ -256,7 +256,7 @@
         <param name="in" value="OpenSwathRTNormalizer_1_input.mzML"/>
       </conditional>
       <param name="tr" value="OpenSwathRTNormalizer_1_input.TraML"/>
-      <output name="out" file="OpenSwathRTNormalizer_1_output.trafoXML" compare="sim_size" delta_frac="0.7" ftype="trafoxml"/>
+      <output name="out" value="OpenSwathRTNormalizer_1_output.trafoXML" compare="sim_size" delta_frac="0.7" ftype="trafoxml"/>
       <param name="min_rsq" value="0.95"/>
       <param name="min_coverage" value="0.6"/>
       <param name="estimateBestPeptides" value="false"/>
@@ -372,6 +372,9 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_OpenSwathRTNormalizer_test_3 -->
     <test expect_num_outputs="2">
@@ -383,7 +386,7 @@
         <param name="in" value="OpenSwathRTNormalizer_1_input.mzML"/>
       </conditional>
       <param name="tr" value="OpenSwathRTNormalizer_1_input.TraML"/>
-      <output name="out" file="OpenSwathRTNormalizer_3_output.trafoXML" compare="sim_size" delta_frac="0.7" ftype="trafoxml"/>
+      <output name="out" value="OpenSwathRTNormalizer_3_output.trafoXML" compare="sim_size" delta_frac="0.7" ftype="trafoxml"/>
       <param name="min_rsq" value="0.95"/>
       <param name="min_coverage" value="0.6"/>
       <param name="estimateBestPeptides" value="true"/>
@@ -499,6 +502,9 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
     <!-- TOPP_OpenSwathRTNormalizer_test_4 -->
     <test expect_num_outputs="2">
@@ -510,7 +516,7 @@
         <param name="in" value="OpenSwathRTNormalizer_1_input.mzML"/>
       </conditional>
       <param name="tr" value="OpenSwathRTNormalizer_1_input.TraML"/>
-      <output name="out" file="OpenSwathRTNormalizer_4_output.trafoXML" compare="sim_size" delta_frac="0.7" ftype="trafoxml"/>
+      <output name="out" value="OpenSwathRTNormalizer_4_output.trafoXML" compare="sim_size" delta_frac="0.7" ftype="trafoxml"/>
       <param name="min_rsq" value="0.95"/>
       <param name="min_coverage" value="0.6"/>
       <param name="estimateBestPeptides" value="false"/>
@@ -626,11 +632,14 @@
           <is_valid_xml/>
         </assert_contents>
       </output>
+      <assert_stdout>
+        <has_text_matching expression="@EXECUTABLE@ took .* \(wall\), .* \(CPU\), .* \(system\), .* \(user\)(; Peak Memory Usage: 32 MB)?."/>
+      </assert_stdout>
     </test>
   </tests>
   <help><![CDATA[This tool will take a description of RT peptides and their normalized retention time to write out a transformation file on how to transform the RT space into the normalized space.
 
 
-For more information, visit http://www.openms.de/doxygen/release/2.8.0/html/TOPP_OpenSwathRTNormalizer.html]]></help>
+For more information, visit https://openms.de/doxygen/release/3.1.0/html/TOPP_OpenSwathRTNormalizer.html]]></help>
   <expand macro="references"/>
 </tool>