changeset 0:02e802817d48 draft

planemo upload for repository https://github.com/workflow4metabolomics/tools-metabolomics/blob/master/tools/mzmine/ commit dbad3fc09e109598befcec3a9a000496f4e0c9dd
author iuc
date Sat, 21 Oct 2023 10:29:31 +0000
parents
children 90d60c9da21e
files mzmine_batch.xml test-data/test_small.xml
diffstat 2 files changed, 766 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mzmine_batch.xml	Sat Oct 21 10:29:31 2023 +0000
@@ -0,0 +1,129 @@
+<tool id="mzmine_batch" name="MZMine batch" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.05">
+    <macros>
+        <token name="@TOOL_VERSION@">3.6.0</token>
+        <token name="@VERSION_SUFFIX@">0</token>
+    </macros>
+    <xrefs>
+        <xref type="bio.tools">mzmine</xref>
+    </xrefs>
+    <requirements>
+        <requirement type="package" version="@TOOL_VERSION@">mzmine</requirement>
+    </requirements>
+    <command detect_errors="exit_code"><![CDATA[
+    #import re
+    
+    mkdir -p input &&
+    #for $i in $input
+        #set escaped_i = re.sub('[^\s\w\-\.]', '_', str($i.element_identifier))
+        ln -s '$i' 'input/$escaped_i'.$i.ext &&
+        echo 'input/$escaped_i'.$i.ext >> input.txt &&
+    #end for
+
+    #if $libraries
+        mkdir -p libraries &&
+        #for $l in $libraries
+            #set escaped_l = re.sub('[^\s\w\-\.]', '_', str($l.element_identifier))
+            ln -s '$l' 'libraries/$escaped_l'.$l.ext &&
+            echo 'libraries/$escaped_l'.$l.ext >> libraries.txt &&
+        #end for
+    #end if
+    ## modify output paths in batch XML to relative path
+    ## - any output will be redirected to ./output/BASENAME
+    mkdir -p output/ &&
+    
+    sed -e 's@<current_file>.*[\\\/]\([^\\\/]\+\)</current_file>@<current_file>./output/\1</current_file>@' '$batch' > batch.xml &&
+
+    mzmine
+        --batch 'batch.xml'
+        --input 'input.txt'
+        #if $libraries
+            --libraries 'libraries.txt'
+        #end if
+        --memory "\${MZMINE_MEMORY:-none}"
+        --temp "\${TMPDIR:-\$_GALAXY_JOB_TMP_DIR}"
+        --threads \${GALAXY_SLOTS:-1}
+## ignored parameters
+##  -p,--pref <arg>        preferences file
+## -r,--running          keep MZmine running in headless mode
+## -tdfpseudoprofile     Loads pseudo-profile frame spectra for tdf files
+##                       instead of centroided spectra.
+## -tsfprofile           Loads profile spectra from .tsf data instead of
+##                       centroid spectra.
+    ]]></command>
+    <inputs>
+        <param argument="--batch" type="data" format="xml" label="MZMine batch file" help="XML batch file (ideally created with version @TOOL_VERSION@)"/>
+        <param argument="--input" type="data" format="mzml,mzxml,csv" multiple="true" label="Spectra (mzml)"/>
+        <param argument="--libraries" type="data" format="json,mgf,msp" multiple="true" optional="true" label="Spectral libraries"/>
+    </inputs>
+    <outputs>
+        <collection name="output" type="list">
+            <discover_datasets pattern="__name_and_ext__" directory="output"/>
+        </collection>
+    </outputs>
+    <tests>
+        <test>
+            <param name="batch" value="test_small.xml" ftype="xml"/>
+            <param name="input" value="DOM_a.mzML,DOM_b.mzXML"/>
+            <param name="libraries" value="GNPS-FAULKNERLEGACY.json" ftype="json"/>
+            <!-- <param name="input" location="https://raw.githubusercontent.com/mzmine/mzmine3/master/src/test/resources/rawdatafiles/DOM_a.mzML"/> -->
+            <!-- <param name="input" location="https://raw.githubusercontent.com/mzmine/mzmine3/master/src/test/resources/rawdatafiles/DOM_a.mzML,https://raw.githubusercontent.com/mzmine/mzmine3/master/src/test/resources/rawdatafiles/DOM_b.mzXML"/>
+            <param name="libraries" location="https://external.gnps2.org/gnpslibrary/GNPS-FAULKNERLEGACY.json" ftype="json"/> -->
+            <output_collection name="output" count="3" type="list">
+                <element name="test2_iimn_gnps" ftype="mgf">
+                    <assert_contents>
+                        <has_n_lines n="2103"/>
+                        <has_text text="BEGIN IONS"/>
+                    </assert_contents>
+                </element>
+                <element name="test2_iimn_gnps_quant" ftype="csv">
+                    <assert_contents>
+                        <has_n_lines n="34"/>
+                        <has_n_columns sep="," n="16"/>
+                    </assert_contents>
+                </element>
+                <element name="test2_sirius" ftype="mgf">
+                    <assert_contents>
+                        <has_n_lines n="54406"/>
+                        <has_text text="BEGIN IONS"/>
+                    </assert_contents>
+                </element>
+            </output_collection>
+        </test>
+    </tests>
+    <help><![CDATA[
+        MZmine 3 is an open-source software for mass-spectrometry data processing, with the main focus on LC-MS data.
+
+        This Galaxy tool allows to execute MZmine batches. That is you can create MZmine batch (XML) files thatdescribe the parameters of a MZmine analysis using the MZmine GUI
+        and use this to execute such an analysis on the Galaxy platform. 
+
+        **Inputs**
+
+        - MZMine batch file in XML format. This file describes the parameters for a MZmine batch analysis. It can be generated with the MZmine GUI (preferentiall with a matching version, i.e. @TOOL_VERSION@).
+        - Input spectra in mzml format
+        - Spectra libraries in mgf or json format (optional)
+
+        **Outputs**
+
+        Galaxy will store all outputs of MZMine in a single collection. When specifying the batch XML
+        file one should pay attention to use file extensions that correspond to Galaxy datatypes
+        (which allows Galaxy to easily autodetect the datatype). The following extensions can be used
+        (lower/upper case does not matter):
+
+        - mzml
+        - netcdf
+        - mgf
+        - txt
+        - msp
+        - csv
+        - mztab
+        - mztab2 (this is mzTab-m)
+        - json
+        - tabular (Galaxy's tsv implementation)
+
+        Specific datasets from the collection can be accessed using the *Extract dataset* tool, e.g.
+        for further processing in Galaxy.
+    ]]></help>
+    <citations>
+        <citation type="doi">10.1038/s41587-023-01690-2</citation>
+    </citations>
+</tool>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test_small.xml	Sat Oct 21 10:29:31 2023 +0000
@@ -0,0 +1,637 @@
+<?xml version="1.0" encoding="UTF-8"?><batch mzmine_version="3.5.5">
+    <batchstep method="io.github.mzmine.modules.io.import_rawdata_all.AllSpectralDataImportModule" parameter_version="1">
+        <parameter name="File names">
+            <file>/tmp/mzminetest/DOM_a.mzML</file>
+            <file>/tmp/mzminetest/DOM_b.mzXML</file>
+        </parameter>
+        <parameter name="Advanced import" selected="false">
+            <parameter name="Scan filters" selected="false">
+                <parameter name="Scan number"/>
+                <parameter name="Base Filtering Integer"/>
+                <parameter name="Retention time"/>
+                <parameter name="Mobility"/>
+                <parameter name="MS level filter" selected="All MS levels">1</parameter>
+                <parameter name="Scan definition"/>
+                <parameter name="Polarity">Any</parameter>
+                <parameter name="Spectrum type">ANY</parameter>
+            </parameter>
+            <parameter name="Crop MS1 m/z" selected="false"/>
+            <parameter name="MS1 detector (Advanced)" selected="false" selected_item="Centroid">
+                <module name="Factor of lowest signal">
+                    <parameter name="Noise factor">3.0</parameter>
+                </module>
+                <module name="Centroid">
+                    <parameter name="Noise level">3000.0</parameter>
+                    <parameter name="Detect isotope signals below noise level" selected="false">
+                        <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                        <parameter name="m/z tolerance">
+                            <absolutetolerance>0.0015</absolutetolerance>
+                            <ppmtolerance>3.0</ppmtolerance>
+                        </parameter>
+                        <parameter name="Maximum charge of isotope m/z">2</parameter>
+                    </parameter>
+                </module>
+                <module name="Exact mass">
+                    <parameter name="Noise level">1000.0</parameter>
+                    <parameter name="Detect isotope signals below noise level" selected="false">
+                        <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                        <parameter name="m/z tolerance">
+                            <absolutetolerance>0.0015</absolutetolerance>
+                            <ppmtolerance>3.0</ppmtolerance>
+                        </parameter>
+                        <parameter name="Maximum charge of isotope m/z">2</parameter>
+                    </parameter>
+                </module>
+                <module name="Local maxima">
+                    <parameter name="Noise level"/>
+                </module>
+                <module name="Recursive threshold">
+                    <parameter name="Noise level"/>
+                    <parameter name="Min m/z peak width"/>
+                    <parameter name="Max m/z peak width"/>
+                </module>
+                <module name="Wavelet transform">
+                    <parameter name="Noise level"/>
+                    <parameter name="Scale level"/>
+                    <parameter name="Wavelet window size (%)"/>
+                </module>
+                <module name="Auto">
+                    <parameter name="Noise level">1000.0</parameter>
+                    <parameter name="Detect isotope signals below noise level" selected="false">
+                        <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                        <parameter name="m/z tolerance">
+                            <absolutetolerance>0.0015</absolutetolerance>
+                            <ppmtolerance>3.0</ppmtolerance>
+                        </parameter>
+                        <parameter name="Maximum charge of isotope m/z">2</parameter>
+                    </parameter>
+                </module>
+            </parameter>
+            <parameter name="MS2 detector (Advanced)" selected="false" selected_item="Centroid">
+                <module name="Factor of lowest signal">
+                    <parameter name="Noise factor">3.0</parameter>
+                </module>
+                <module name="Centroid">
+                    <parameter name="Noise level">3000.0</parameter>
+                    <parameter name="Detect isotope signals below noise level" selected="false">
+                        <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                        <parameter name="m/z tolerance">
+                            <absolutetolerance>0.0015</absolutetolerance>
+                            <ppmtolerance>3.0</ppmtolerance>
+                        </parameter>
+                        <parameter name="Maximum charge of isotope m/z">2</parameter>
+                    </parameter>
+                </module>
+                <module name="Exact mass">
+                    <parameter name="Noise level">1000.0</parameter>
+                    <parameter name="Detect isotope signals below noise level" selected="false">
+                        <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                        <parameter name="m/z tolerance">
+                            <absolutetolerance>0.0015</absolutetolerance>
+                            <ppmtolerance>3.0</ppmtolerance>
+                        </parameter>
+                        <parameter name="Maximum charge of isotope m/z">2</parameter>
+                    </parameter>
+                </module>
+                <module name="Local maxima">
+                    <parameter name="Noise level"/>
+                </module>
+                <module name="Recursive threshold">
+                    <parameter name="Noise level"/>
+                    <parameter name="Min m/z peak width"/>
+                    <parameter name="Max m/z peak width"/>
+                </module>
+                <module name="Wavelet transform">
+                    <parameter name="Noise level"/>
+                    <parameter name="Scale level"/>
+                    <parameter name="Wavelet window size (%)"/>
+                </module>
+                <module name="Auto">
+                    <parameter name="Noise level">1000.0</parameter>
+                    <parameter name="Detect isotope signals below noise level" selected="false">
+                        <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                        <parameter name="m/z tolerance">
+                            <absolutetolerance>0.0015</absolutetolerance>
+                            <ppmtolerance>3.0</ppmtolerance>
+                        </parameter>
+                        <parameter name="Maximum charge of isotope m/z">2</parameter>
+                    </parameter>
+                </module>
+            </parameter>
+            <parameter name="Denormalize fragment scans (traps)">false</parameter>
+        </parameter>
+        <parameter name="Spectral library files">
+            <file>/tmp/mzminetest/GNPS-FAULKNERLEGACY.json</file>
+	    <!--<file>D:\Data\lib\HMDB.mgf</file>-->
+        </parameter>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.featdet_massdetection.MassDetectionModule" parameter_version="1">
+        <parameter name="Raw data files" type="BATCH_LAST_FILES"/>
+        <parameter name="Scan filters" selected="true">
+            <parameter name="Scan number"/>
+            <parameter name="Base Filtering Integer"/>
+            <parameter name="Retention time"/>
+            <parameter name="Mobility"/>
+            <parameter name="MS level filter" selected="MS1, level = 1">1</parameter>
+            <parameter name="Scan definition"/>
+            <parameter name="Polarity">Any</parameter>
+            <parameter name="Spectrum type">ANY</parameter>
+        </parameter>
+        <parameter name="Scan types (IMS)">All scan types</parameter>
+        <parameter name="Mass detector" selected_item="Auto">
+            <module name="Factor of lowest signal">
+                <parameter name="Noise factor">3.0</parameter>
+            </module>
+            <module name="Centroid">
+                <parameter name="Noise level">3000.0</parameter>
+                <parameter name="Detect isotope signals below noise level" selected="false">
+                    <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                    <parameter name="m/z tolerance">
+                        <absolutetolerance>0.0015</absolutetolerance>
+                        <ppmtolerance>3.0</ppmtolerance>
+                    </parameter>
+                    <parameter name="Maximum charge of isotope m/z">2</parameter>
+                </parameter>
+            </module>
+            <module name="Exact mass">
+                <parameter name="Noise level">1000.0</parameter>
+                <parameter name="Detect isotope signals below noise level" selected="false">
+                    <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                    <parameter name="m/z tolerance">
+                        <absolutetolerance>0.0015</absolutetolerance>
+                        <ppmtolerance>3.0</ppmtolerance>
+                    </parameter>
+                    <parameter name="Maximum charge of isotope m/z">2</parameter>
+                </parameter>
+            </module>
+            <module name="Local maxima">
+                <parameter name="Noise level"/>
+            </module>
+            <module name="Recursive threshold">
+                <parameter name="Noise level"/>
+                <parameter name="Min m/z peak width"/>
+                <parameter name="Max m/z peak width"/>
+            </module>
+            <module name="Wavelet transform">
+                <parameter name="Noise level"/>
+                <parameter name="Scale level"/>
+                <parameter name="Wavelet window size (%)"/>
+            </module>
+            <module name="Auto">
+                <parameter name="Noise level">30000.0</parameter>
+                <parameter name="Detect isotope signals below noise level" selected="false">
+                    <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                    <parameter name="m/z tolerance">
+                        <absolutetolerance>0.0015</absolutetolerance>
+                        <ppmtolerance>3.0</ppmtolerance>
+                    </parameter>
+                    <parameter name="Maximum charge of isotope m/z">2</parameter>
+                </parameter>
+            </module>
+        </parameter>
+        <parameter name="Denormalize fragment scans (traps)">false</parameter>
+        <parameter name="Output netCDF filename (optional)" selected="false"/>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.featdet_massdetection.MassDetectionModule" parameter_version="1">
+        <parameter name="Raw data files" type="BATCH_LAST_FILES"/>
+        <parameter name="Scan filters" selected="true">
+            <parameter name="Scan number"/>
+            <parameter name="Base Filtering Integer"/>
+            <parameter name="Retention time"/>
+            <parameter name="Mobility"/>
+            <parameter name="MS level filter" selected="MSn, level ≥ 2">3</parameter>
+            <parameter name="Scan definition"/>
+            <parameter name="Polarity">Any</parameter>
+            <parameter name="Spectrum type">ANY</parameter>
+        </parameter>
+        <parameter name="Scan types (IMS)">All scan types</parameter>
+        <parameter name="Mass detector" selected_item="Auto">
+            <module name="Factor of lowest signal">
+                <parameter name="Noise factor">3.0</parameter>
+            </module>
+            <module name="Centroid">
+                <parameter name="Noise level">3000.0</parameter>
+                <parameter name="Detect isotope signals below noise level" selected="false">
+                    <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                    <parameter name="m/z tolerance">
+                        <absolutetolerance>0.0015</absolutetolerance>
+                        <ppmtolerance>3.0</ppmtolerance>
+                    </parameter>
+                    <parameter name="Maximum charge of isotope m/z">2</parameter>
+                </parameter>
+            </module>
+            <module name="Exact mass">
+                <parameter name="Noise level">1000.0</parameter>
+                <parameter name="Detect isotope signals below noise level" selected="false">
+                    <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                    <parameter name="m/z tolerance">
+                        <absolutetolerance>0.0015</absolutetolerance>
+                        <ppmtolerance>3.0</ppmtolerance>
+                    </parameter>
+                    <parameter name="Maximum charge of isotope m/z">2</parameter>
+                </parameter>
+            </module>
+            <module name="Local maxima">
+                <parameter name="Noise level"/>
+            </module>
+            <module name="Recursive threshold">
+                <parameter name="Noise level"/>
+                <parameter name="Min m/z peak width"/>
+                <parameter name="Max m/z peak width"/>
+            </module>
+            <module name="Wavelet transform">
+                <parameter name="Noise level"/>
+                <parameter name="Scale level"/>
+                <parameter name="Wavelet window size (%)"/>
+            </module>
+            <module name="Auto">
+                <parameter name="Noise level">3000.0</parameter>
+                <parameter name="Detect isotope signals below noise level" selected="false">
+                    <parameter name="Chemical elements">H,C,N,O,S</parameter>
+                    <parameter name="m/z tolerance">
+                        <absolutetolerance>0.0015</absolutetolerance>
+                        <ppmtolerance>3.0</ppmtolerance>
+                    </parameter>
+                    <parameter name="Maximum charge of isotope m/z">2</parameter>
+                </parameter>
+            </module>
+        </parameter>
+        <parameter name="Denormalize fragment scans (traps)">false</parameter>
+        <parameter name="Output netCDF filename (optional)" selected="false"/>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.featdet_adapchromatogrambuilder.ModularADAPChromatogramBuilderModule" parameter_version="1">
+        <parameter name="Raw data files" type="BATCH_LAST_FILES"/>
+        <parameter name="Scan filters" selected="true">
+            <parameter name="Scan number"/>
+            <parameter name="Base Filtering Integer"/>
+            <parameter name="Retention time">
+                <min>0.5</min>
+                <max>10.0</max>
+            </parameter>
+            <parameter name="Mobility"/>
+            <parameter name="MS level filter" selected="MS1, level = 1">1</parameter>
+            <parameter name="Scan definition"/>
+            <parameter name="Polarity">Any</parameter>
+            <parameter name="Spectrum type">ANY</parameter>
+        </parameter>
+        <parameter name="Minimum consecutive scans">5</parameter>
+        <parameter name="Minimum intensity for consecutive scans">300000.0</parameter>
+        <parameter name="Minimum absolute height">500000.0</parameter>
+        <parameter name="m/z tolerance (scan-to-scan)">
+            <absolutetolerance>0.002</absolutetolerance>
+            <ppmtolerance>10.0</ppmtolerance>
+        </parameter>
+        <parameter name="Suffix">eics</parameter>
+        <parameter name="Allow single scan chromatograms"/>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.featdet_chromatogramdeconvolution.minimumsearch.MinimumSearchFeatureResolverModule" parameter_version="2">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="Suffix">r</parameter>
+        <parameter name="Original feature list">KEEP</parameter>
+        <parameter name="MS/MS scan pairing" selected="true">
+            <parameter name="MS1 to MS2 precursor tolerance (m/z)">
+                <absolutetolerance>0.01</absolutetolerance>
+                <ppmtolerance>10.0</ppmtolerance>
+            </parameter>
+            <parameter name="Retention time filter" selected="Use feature edges" unit="MINUTES">0.05</parameter>
+            <parameter name="Minimum relative feature height" selected="true">0.25</parameter>
+            <parameter name="Minimum required signals" selected="true">1</parameter>
+            <parameter name="Limit by ion mobility edges">true</parameter>
+            <parameter name="Merge MS/MS spectra (TIMS)">false</parameter>
+            <parameter name="Minimum signal intensity (absolute, TIMS)" selected="false">6000.0</parameter>
+            <parameter name="Minimum signal intensity (relative, TIMS)" selected="false">0.01</parameter>
+        </parameter>
+        <parameter name="Dimension">Retention time</parameter>
+        <parameter name="Chromatographic threshold">0.8420000000000001</parameter>
+        <parameter name="Minimum search range RT/Mobility (absolute)">0.05</parameter>
+        <parameter name="Minimum relative height">0.0</parameter>
+        <parameter name="Minimum absolute height">500000.0</parameter>
+        <parameter name="Min ratio of peak top/edge">2.0</parameter>
+        <parameter name="Peak duration range (min/mobility)">
+            <min>0.0</min>
+            <max>1.501</max>
+        </parameter>
+        <parameter name="Minimum scans (data points)">5</parameter>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.align_join.JoinAlignerModule" parameter_version="1">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="Feature list name">Aligned feature list</parameter>
+        <parameter name="m/z tolerance (sample-to-sample)">
+            <absolutetolerance>0.0015</absolutetolerance>
+            <ppmtolerance>5.0</ppmtolerance>
+        </parameter>
+        <parameter name="Weight for m/z">3.0</parameter>
+        <parameter name="Retention time tolerance" unit="MINUTES">0.1</parameter>
+        <parameter name="Weight for RT">1.0</parameter>
+        <parameter name="Mobility tolerance" selected="false">1.0</parameter>
+        <parameter name="Mobility weight">0.0</parameter>
+        <parameter name="Require same charge state">false</parameter>
+        <parameter name="Require same ID">false</parameter>
+        <parameter name="Compare isotope pattern" selected="false">
+            <parameter name="Isotope m/z tolerance">
+                <absolutetolerance>0.001</absolutetolerance>
+                <ppmtolerance>5.0</ppmtolerance>
+            </parameter>
+            <parameter name="Minimum absolute intensity">0.0</parameter>
+            <parameter name="Minimum score">0.0</parameter>
+        </parameter>
+        <parameter name="Compare spectra similarity" selected="false">
+            <parameter name="Spectral m/z tolerance">
+                <absolutetolerance>0.001</absolutetolerance>
+                <ppmtolerance>10.0</ppmtolerance>
+            </parameter>
+            <parameter name="MS level">2</parameter>
+            <parameter name="Compare spectra similarity" selected_item="Weighted cosine similarity">
+                <module name="Weighted cosine similarity">
+                    <parameter name="Weights">MassBank (mz^2 * I^0.5)</parameter>
+                    <parameter name="Minimum  cos similarity">0.65</parameter>
+                    <parameter name="Handle unmatched signals">KEEP ALL AND MATCH TO ZERO</parameter>
+                </module>
+                <module name="Composite cosine identity (e.g., GC-EI-MS; similar to NIST search)">
+                    <parameter name="Weights">MassBank (mz^2 * I^0.5)</parameter>
+                    <parameter name="Minimum  cos similarity">0.7</parameter>
+                    <parameter name="Handle unmatched signals">KEEP ALL AND MATCH TO ZERO</parameter>
+                </module>
+            </parameter>
+        </parameter>
+        <parameter name="Original feature list">KEEP</parameter>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.group_metacorrelate.corrgrouping.CorrelateGroupingModule" parameter_version="2">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="RT tolerance" unit="MINUTES">0.055000003</parameter>
+        <parameter name="Minimum feature height">0.0</parameter>
+        <parameter name="Intensity threshold for correlation">30000.0</parameter>
+        <parameter name="Min samples filter">
+            <parameter name="Min samples in all">
+                <abs>2</abs>
+                <rel>0.0</rel>
+            </parameter>
+            <parameter name="Min samples in group">
+                <abs>0</abs>
+                <rel>0.0</rel>
+            </parameter>
+            <parameter name="Min %-intensity overlap">0.6</parameter>
+            <parameter name="Exclude gap-filled features">true</parameter>
+        </parameter>
+        <parameter name="Feature shape correlation" selected="true">
+            <parameter name="Min data points">5</parameter>
+            <parameter name="Min data points on edge">2</parameter>
+            <parameter name="Measure">PEARSON</parameter>
+            <parameter name="Min feature shape correlation">0.85</parameter>
+            <parameter name="Min total correlation" selected="false">0.5</parameter>
+        </parameter>
+        <parameter name="Feature height correlation" selected="true">
+            <parameter name="Minimum samples">2</parameter>
+            <parameter name="Measure">PEARSON</parameter>
+            <parameter name="Min correlation">0.7</parameter>
+        </parameter>
+        <parameter name="Suffix (or auto)" selected="false"/>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.id_ion_identity_networking.ionidnetworking.IonNetworkingModule" parameter_version="1">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="m/z tolerance (intra-sample)">
+            <absolutetolerance>0.0015</absolutetolerance>
+            <ppmtolerance>3.0</ppmtolerance>
+        </parameter>
+        <parameter name="Check">ALL FEATURES</parameter>
+        <parameter name="Min height">0.0</parameter>
+        <parameter name="Ion identity library">
+            <parameter name="MS mode">POSITIVE</parameter>
+            <parameter name="Maximum charge">2</parameter>
+            <parameter name="Maximum molecules/cluster">2</parameter>
+            <parameter name="Adducts">
+                <adduct_type selected="false">
+                    <subpart charge="-1" mass_difference="-1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="1" mass_difference="-5.4858E-4" mol_formula="" name="e" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="true">
+                    <subpart charge="1" mass_difference="1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="true">
+                    <subpart charge="1" mass_difference="22.989218" mol_formula="Na" name="Na" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="true">
+                    <subpart charge="1" mass_difference="38.963158" mol_formula="K" name="K" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="true">
+                    <subpart charge="1" mass_difference="18.033823" mol_formula="NH4" name="NH4" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="1" mass_difference="-5.4858E-4" mol_formula="" name="e" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="-5.4858E-4" mol_formula="" name="e" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="true">
+                    <subpart charge="1" mass_difference="1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="2" mass_difference="39.96149382" mol_formula="Ca" name="Ca" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="2" mass_difference="55.93384" mol_formula="Fe" name="Fe" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="2" mass_difference="47.96953482" mol_formula="Mg" name="Mg" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="1" mass_difference="1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="22.989218" mol_formula="Na" name="Na" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="1" mass_difference="1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="18.033823" mol_formula="NH4" name="NH4" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="1" mass_difference="1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="38.963158" mol_formula="K" name="K" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="true">
+                    <subpart charge="-1" mass_difference="-1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="22.989218" mol_formula="Na" name="Na" type="ADDUCT"/>
+                    <subpart charge="1" mass_difference="22.989218" mol_formula="Na" name="Na" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="2" mass_difference="39.96149382" mol_formula="Ca" name="Ca" type="ADDUCT"/>
+                    <subpart charge="-1" mass_difference="-1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="2" mass_difference="55.93384" mol_formula="Fe" name="Fe" type="ADDUCT"/>
+                    <subpart charge="-1" mass_difference="-1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="1" mass_difference="0.0" mol_formula="" name="e" type="ADDUCT"/>
+                </adduct_type>
+                <adduct_type selected="false">
+                    <subpart charge="-1" mass_difference="-1.007276" mol_formula="H" name="H" type="ADDUCT"/>
+                    <subpart charge="2" mass_difference="47.96953482" mol_formula="Mg" name="Mg" type="ADDUCT"/>
+                </adduct_type>
+                <modification_type selected="true">
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="true">
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                    <subpart charge="0" mass_difference="-18.010565" mol_formula="H2O" name="H2O" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-17.026549" mol_formula="NH3" name="NH3" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="15.99491462" mol_formula="O" name="O" type="CLUSTER"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-27.994915" mol_formula="CO" name="CO" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-43.989829" mol_formula="CO2" name="CO2" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="-28.031301" mol_formula="C2H4" name="C2H4" type="NEUTRAL_LOSS"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="46.005479" mol_formula="CHOOH" name="HFA" type="CLUSTER"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="60.021129" mol_formula="CH3COOH" name="HAc" type="CLUSTER"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="32.026215" mol_formula="CH3OH" name="MeOH" type="CLUSTER"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="41.026549" mol_formula="CH3CN" name="ACN" type="CLUSTER"/>
+                </modification_type>
+                <modification_type selected="false">
+                    <subpart charge="0" mass_difference="60.058064" mol_formula="C3H8O" name="IsoProp" type="CLUSTER"/>
+                </modification_type>
+            </parameter>
+        </parameter>
+        <parameter name="Annotation refinement" selected="true">
+            <parameter name="Minimum size" selected="false">3</parameter>
+            <parameter name="Delete small networks without major ion">true</parameter>
+            <parameter name="Delete smaller networks: Link threshold" selected="true">4</parameter>
+            <parameter name="Delete networks without monomer">true</parameter>
+            <parameter name="Delete rows witout ion id">false</parameter>
+        </parameter>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.dataprocessing.id_spectral_library_match.SpectralLibrarySearchModule" parameter_version="2">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="Spectral libraries" type="ALL_IMPORTED"/>
+        <parameter name="Scans for matching">MS level ≥ 2 (merged)</parameter>
+        <parameter name="Precursor m/z tolerance">
+            <absolutetolerance>0.01</absolutetolerance>
+            <ppmtolerance>20.0</ppmtolerance>
+        </parameter>
+        <parameter name="Spectral m/z tolerance">
+            <absolutetolerance>0.01</absolutetolerance>
+            <ppmtolerance>20.0</ppmtolerance>
+        </parameter>
+        <parameter name="Remove precursor">true</parameter>
+        <parameter name="Minimum  matched signals">4</parameter>
+        <parameter name="Similarity" selected_item="Weighted cosine similarity">
+            <module name="Weighted cosine similarity">
+                <parameter name="Weights">SQRT (mz^0 * I^0.5)</parameter>
+                <parameter name="Minimum  cos similarity">0.1</parameter>
+                <parameter name="Handle unmatched signals">KEEP ALL AND MATCH TO ZERO</parameter>
+            </module>
+            <module name="Composite cosine identity (e.g., GC-EI-MS; similar to NIST search)">
+                <parameter name="Weights">MassBank (mz^2 * I^0.5)</parameter>
+                <parameter name="Minimum  cos similarity">0.7</parameter>
+                <parameter name="Handle unmatched signals">KEEP ALL AND MATCH TO ZERO</parameter>
+            </module>
+        </parameter>
+        <parameter name="Advanced" selected="false">
+            <parameter name="Retention time tolerance" selected="false"/>
+            <parameter name="CCS tolerance [%]" selected="false">0.05</parameter>
+            <parameter name="13C deisotoping" selected="false">
+                <parameter name="m/z tolerance">
+                    <absolutetolerance>0.001</absolutetolerance>
+                    <ppmtolerance>5.0</ppmtolerance>
+                </parameter>
+                <parameter name="Monotonic shape">false</parameter>
+                <parameter name="Maximum charge">1</parameter>
+            </parameter>
+            <parameter name="Min matched isotope signals" selected="false">3</parameter>
+            <parameter name="Crop spectra to m/z overlap">false</parameter>
+        </parameter>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.io.export_features_gnps.fbmn.GnpsFbmnExportAndSubmitModule" parameter_version="2">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="Filename">
+		<current_file>/tmp/mzminetest/test2_iimn_gnps</current_file>
+        </parameter>
+        <parameter name="Merge MS/MS (experimental)" selected="false">
+            <parameter name="Select spectra to merge">across samples</parameter>
+            <parameter name="m/z merge mode">weighted average (remove outliers)</parameter>
+            <parameter name="intensity merge mode">sum intensities</parameter>
+            <parameter name="Expected mass deviation">
+                <absolutetolerance>0.001</absolutetolerance>
+                <ppmtolerance>5.0</ppmtolerance>
+            </parameter>
+            <parameter name="Cosine threshold (%)">0.7</parameter>
+            <parameter name="Signal count threshold (%)">0.2</parameter>
+            <parameter name="Isolation window offset (m/z)">0.0</parameter>
+            <parameter name="Isolation window width (m/z)">3.0</parameter>
+        </parameter>
+        <parameter name="Filter rows">MS2 OR ION IDENTITY</parameter>
+        <parameter name="Feature intensity">Area</parameter>
+        <parameter name="CSV export">SIMPLE</parameter>
+        <parameter name="Submit to GNPS" selected="false">
+            <parameter name="Meta data file" selected="false"/>
+            <parameter name="Export ion identity networks">true</parameter>
+            <parameter name="Presets">HIGHRES</parameter>
+            <parameter name="Job title"/>
+            <parameter name="Email"/>
+            <parameter name="Username"/>
+            <parameter name="Password"/>
+            <parameter name="Open website">true</parameter>
+        </parameter>
+        <parameter name="Open folder">false</parameter>
+    </batchstep>
+    <batchstep method="io.github.mzmine.modules.io.export_features_sirius.SiriusExportModule" parameter_version="1">
+        <parameter name="Feature lists" type="BATCH_LAST_FEATURELISTS"/>
+        <parameter name="Filename">
+            <current_file>D:\tmp\export_mzmine3\test2_sirius.MGF</current_file>
+            <last_file>D:\tmp\new_sirius\merged_new_sirius.mgf</last_file>
+            <last_file>D:\tmp\test\merged_new_sirius.mgf</last_file>
+        </parameter>
+        <parameter name="Merge MS/MS" selected="false">
+            <parameter name="Select spectra to merge">across samples</parameter>
+            <parameter name="m/z merge mode">weighted average (remove outliers)</parameter>
+            <parameter name="intensity merge mode">sum intensities</parameter>
+            <parameter name="Expected mass deviation">
+                <absolutetolerance>0.001</absolutetolerance>
+                <ppmtolerance>5.0</ppmtolerance>
+            </parameter>
+            <parameter name="Cosine threshold (%)">0.7</parameter>
+            <parameter name="Signal count threshold (%)">0.2</parameter>
+            <parameter name="Isolation window offset (m/z)">0.0</parameter>
+            <parameter name="Isolation window width (m/z)">3.0</parameter>
+        </parameter>
+        <parameter name="m/z tolerance">
+            <absolutetolerance>0.002</absolutetolerance>
+            <ppmtolerance>5.0</ppmtolerance>
+        </parameter>
+        <parameter name="Only rows with annotation">false</parameter>
+        <parameter name="Exclude multiple charge">false</parameter>
+        <parameter name="Exclude multimers">false</parameter>
+    </batchstep>
+</batch>