diff abims_CAMERA_annotateDiffreport.xml @ 28:591d26b9027e draft

planemo upload commit d708b85fc764e790fac071552d19cd7a89d02d31
author lecorguille
date Tue, 28 Mar 2017 10:51:29 -0400
parents 230f0bc9e792
children fce12d692a41
line wrap: on
line diff
--- a/abims_CAMERA_annotateDiffreport.xml	Mon Feb 13 11:19:21 2017 -0500
+++ b/abims_CAMERA_annotateDiffreport.xml	Tue Mar 28 10:51:29 2017 -0400
@@ -14,45 +14,62 @@
         xfunction annotatediff
         image '$image'
 
+        nSlaves \${GALAXY_SLOTS:-1}
+
+        ## output
         variableMetadataOutput '$variableMetadata'
         dataMatrixOutput '$datamatrix'
         xsetRdataOutput '$rdata'
 
-        nSlaves \${GALAXY_SLOTS:-1}
-        sigma $sigma perfwhm $perfwhm
-        maxcharge $maxcharge maxiso $maxiso minfrac $minfrac
-        ppm $ppm mzabs $mzabs
-        max_peaks $max_peaks
+        ## groupFWHM
+        sigma $groupfwhm.sigma
+        perfwhm $groupfwhm.perfwhm
+
+        ## findIsotopes
+        maxcharge $findisotopes.maxcharge
+        maxiso $findisotopes.maxiso
+        minfrac $findisotopes.minfrac
+
+        ## General
+        ppm $general.ppm
+        mzabs $general.mzabs
+        max_peaks $general.max_peaks
+
+
         quick $quick_block.quick
         #if $quick_block.quick == "FALSE"
-            polarity $quick_block.polarity
-            cor_eic_th $quick_block.cor_eic_th
-            graphMethod $quick_block.graphMethod
-            pval $quick_block.pval
-            calcCiS $quick_block.calcCiS
-            calcIso $quick_block.calcIso
-            calcCaS $quick_block.calcCaS
-            #if $quick_block.rules_block.rules_select == "FALSE"
-                multiplier $quick_block.rules_block.multiplier
+            ## findadducts
+            polarity $quick_block.findadducts.polarity
+            #if $quick_block.findadducts.rules_block.rules_select == "FALSE"
+                multiplier $quick_block.findadducts.rules_block.multiplier
             #else
-                rules $quick_block.rules_block.rules
+                rules $quick_block.findadducts.rules_block.rules
             #end if
+
+            ## groupcorr
+            cor_eic_th $quick_block.groupcorr.cor_eic_th
+            graphMethod $quick_block.groupcorr.graphMethod
+            pval $quick_block.groupcorr.pval
+            calcCiS $quick_block.groupcorr.calcCiS
+            calcIso $quick_block.groupcorr.calcIso
+            calcCaS $quick_block.groupcorr.calcCaS
+        #end if
+
+        #if $diffreport.options.option == "show":
+            ## diffreport
+            runDiffreport TRUE
+            eicmax $diffreport.options.eicmax
+            eicwidth $diffreport.options.eicwidth
+            value $diffreport.options.value
+            sortpval $diffreport.options.sortpval
+            h $diffreport.options.h
+            w $diffreport.options.w
+            mzdec $diffreport.options.mzdec
+            new_file_path ${__new_file_path__}/primary_${output_diffreport.id}_
         #end if
 
         @COMMAND_PEAKLIST@
 
-        #if $options.option == "show":
-            runDiffreport TRUE
-            eicmax $options.eicmax
-            eicwidth $options.eicwidth
-            value $options.value
-            sortpval $options.sortpval
-            h $options.h
-            w $options.w
-            mzdec $options.mzdec
-            new_file_path ${__new_file_path__}/primary_${output_diffreport.id}_
-        #end if
-
         @COMMAND_FILE_LOAD@
 
     ]]></command>
@@ -62,258 +79,157 @@
 
         <param name="image" type="data" label="RData file" format="rdata.xcms.fillpeaks,rdata" help="output file from another function xcms (fillPeaks)" />
 
-        <param name="sigma" type="integer" value="6" label="groupFWHM: multiplier of the standard deviation" help="[sigma]" />
-        <param name="perfwhm" type="float" value="0.6" max="1" min="0" label="groupFWHM: percentage of FWHM width" help="[perfwhm]" />
-        <param name="maxcharge" type="integer" value="3" label="findIsotopes: max. ion charge" help="[maxcharge]" />
-        <param name="maxiso" type="integer" value="4" label="findIsotopes: max. number of expected isotopes" help="[maxiso]" />
-        <param name="minfrac" type="float" value="0.5" max="1" min="0" label="findIsotopes: The percentage number of samples, which must satisfy the C12/C13 rule for isotope annotation" help="[minfrac]" />
-        <param name="ppm" type="integer" value="5" label="General ppm error" help="[ppm]" />
-        <param name="mzabs" type="float" value="0.015" label="mzabs" help="General absolut error in m/z" />
-        <param name="max_peaks" type="integer" value="100" label="How much peaks will be calculated in every thread using the parallel mode" help="[max_peaks]" />
+        <section name="groupfwhm" title="Function: groupFWHM"  expanded="True">
+            <param name="sigma" type="integer" value="6" label="Multiplier of the standard deviation" help="[sigma]" />
+            <param name="perfwhm" type="float" value="0.6" max="1" min="0" label="Percentage of FWHM width" help="[perfwhm]" />
+        </section>
+
+        <section name="findisotopes" title="Function: findIsotopes"  expanded="True">
+            <param name="maxcharge" type="integer" value="3" label="Max. ion charge" help="[maxcharge]" />
+            <param name="maxiso" type="integer" value="4" label="Max. number of expected isotopes" help="[maxiso]" />
+            <param name="minfrac" type="float" value="0.5" max="1" min="0" label="The percentage number of samples, which must satisfy the C12/C13 rule for isotope annotation" help="[minfrac]" />
+        </section>
+
+        <section name="general" title="General"  expanded="True">
+            <param name="ppm" type="integer" value="5" label="General ppm error" help="[ppm]" />
+            <param name="mzabs" type="float" value="0.015" label="mzabs" help="General absolut error in m/z" />
+            <param name="max_peaks" type="integer" value="100" label="How much peaks will be calculated in every thread using the parallel mode" help="[max_peaks]" />
+        </section>
 
         <conditional name="quick_block">
-            <param name="quick" type="select" label="Quick mode" help="[quick] If TRUE, use only groupFWHM and findIsotopes functions. Else if FALSE, use also groupCorr and findAdducts">
-                <option value="TRUE">TRUE</option>
-                <option value="FALSE" selected="true">FALSE</option>
+            <param name="quick" type="select" label="Mode" help="[quick] If TRUE, use only groupFWHM and findIsotopes functions. Else if FALSE, use also groupCorr and findAdducts">
+                <option value="FALSE" selected="true">All functions</option>
+                <option value="TRUE">Only groupFWHM and findIsotopes functions [quick]</option>
             </param>
             <when value="FALSE">
-                <param name="polarity" type="select" label="findAdducts: Which polarity mode was used for measuring of the ms sample" help="polarity">
-                    <option value="positive" >positive</option>
-                    <option value="negative" selected="true">negative</option>
-                </param>
-                <param name="cor_eic_th" type="float" value="0.75" max="1" min="0" label="groupCorr: correlation threshold (0..1)" help="[cor_eic_th]" />
-                <param name="graphMethod" type="select" label="groupCorr: Method selection for grouping peaks after correlation analysis into pseudospectra" help="[graphMethod]">
-                    <option value="hcs" selected="true">hcs</option>
-                    <option value="lpc">lpc</option>
-                </param>
-                <param name="pval" type="float" value="0.05" max="1" min="0" label="groupCorr: significant correlation threshold" help="[pval]" />
-                <param name="calcCiS" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use correlation inside samples for peak grouping" help="[calcCiS]"/>
-                <param name="calcIso" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use isotopic relationship for peak grouping" help="[calcIso]"/>
-                <param name="calcCaS" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use correlation across samples for peak grouping" help="[calcCaS]"/>
-                <conditional name="rules_block">
-                    <param name="rules_select" type="select" label="Use a personal ruleset file">
-                        <option value="TRUE">TRUE</option>
-                        <option value="FALSE" selected="true">FALSE</option>
+                <section name="findadducts" title="Function: findAdducts"  expanded="True">
+                    <param name="polarity" type="select" label="Which polarity mode was used for measuring of the ms sample" help="polarity">
+                        <option value="positive" >positive</option>
+                        <option value="negative" selected="true">negative</option>
                     </param>
-                    <when value="FALSE">
-                        <param name="multiplier" type="integer" value="3" label="findAdducts: If no ruleset is provided, calculate ruleset with max. number n of [nM+x] clusterions" help="[multiplier]" />
-                    </when>
-                    <when value="TRUE">
-                        <param name="rules" type="data" format="csv" label="findAdducts: User defined ruleset" help="[rules]" />
-                    </when>
-                </conditional>
+                    <conditional name="rules_block">
+                        <param name="rules_select" type="select" label="Use a personal ruleset file">
+                            <option value="TRUE">TRUE</option>
+                            <option value="FALSE" selected="true">FALSE</option>
+                        </param>
+                        <when value="FALSE">
+                            <param name="multiplier" type="integer" value="3" label="If no ruleset is provided, calculate ruleset with max. number n of [nM+x] clusterions" help="[multiplier]" />
+                        </when>
+                        <when value="TRUE">
+                            <param name="rules" type="data" format="csv" label="User defined ruleset" help="[rules]" />
+                        </when>
+                    </conditional>
+                </section>
+                <section name="groupcorr" title="Function: groupCorr"  expanded="True">
+                    <param name="cor_eic_th" type="float" value="0.75" max="1" min="0" label="groupCorr: correlation threshold (0..1)" help="[cor_eic_th]" />
+                    <param name="graphMethod" type="select" label="groupCorr: Method selection for grouping peaks after correlation analysis into pseudospectra" help="[graphMethod]">
+                        <option value="hcs" selected="true">hcs</option>
+                        <option value="lpc">lpc</option>
+                    </param>
+                    <param name="pval" type="float" value="0.05" max="1" min="0" label="groupCorr: significant correlation threshold" help="[pval]" />
+                    <param name="calcCiS" type="boolean" checked="true" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use correlation inside samples for peak grouping" help="[calcCiS]"/>
+                    <param name="calcIso" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use isotopic relationship for peak grouping" help="[calcIso]"/>
+                    <param name="calcCaS" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="groupCorr: Use correlation across samples for peak grouping" help="[calcCaS]"/>
+                </section>
+
             </when>
             <when value="TRUE">
                 <param name="polarity" type="hidden" value="quick" label="for the output label" help="for the output label" />
             </when>
         </conditional>
 
-        <expand macro="input_peaklist"/>
+        <!-- Diffreport specific parameters -->
+        <section name="diffreport" title="Function: diffreport"  expanded="True">
+            <conditional name="options">
+                <param name="option" type="select" label="Number of condition">
+                    <option value="hide" selected="true">One condition</option>
+                    <option value="show">Two or more conditions</option>
+                </param>
+                <when value="show">
+                    <param name="eicmax" type="integer" value="0" label="Number of the most significantly different analytes to create EICs for" help="[eicmax]" />
+                    <param name="eicwidth" type="integer" value="200" label="Width (in seconds) of EICs produced" help="[eicwidth]" />
+                    <param name="value" type="select" label="Intensity values to be used for the diffreport" help="[value]">
+                        <option value="into" selected="true">into</option>
+                        <option value="maxo" >maxo</option>
+                        <option value="intb">intb</option>
+                    </param>
+                    <param name="h" type="integer" value="480" label="Numeric variable for the height of the eic and boxplots that are printed out" help="[height]" />
+                    <param name="w" type="integer" value="640" label="Numeric variable for the width of the eic and boxplots print out made" help="[width]" />
+                    <param name="mzdec" type="integer" value="2" label="Number of decimal places of title m/z values in the eic plot" help="[mzdec]" />
+                    <param name="sortpval" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="logical indicating whether the reports should be sorted by p-value" help="[sortpval]"/>
+                </when>
+                <when value="hide">
+                </when>
+            </conditional>
+        </section>
 
-        <!-- Annotatediffreport specific parameters -->
-        <conditional name="options">
-            <param name="option" type="select" label="Number of condition">
-                <option value="hide" selected="true">One condition</option>
-                <option value="show">Two or more conditions</option>
-            </param>
-            <when value="show">
-                <param name="eicmax" type="integer" value="0" label="diffreport: number of the most significantly different analytes to create EICs for" help="[eicmax]" />
-                <param name="eicwidth" type="integer" value="200" label="diffreport: width (in seconds) of EICs produced" help="[eicwidth]" />
-                <param name="value" type="select" label="diffreport: Intensity values to be used for the diffreport" help="[value]">
-                    <option value="into" selected="true">into</option>
-                    <option value="maxo" >maxo</option>
-                    <option value="intb">intb</option>
-                </param>
-                <param name="h" type="integer" value="480" label="diffreport: Numeric variable for the height of the eic and boxplots that are printed out" help="[height]" />
-                <param name="w" type="integer" value="640" label="diffreport: Numeric variable for the width of the eic and boxplots print out made" help="[width]" />
-                <param name="mzdec" type="integer" value="2" label="diffreport: Number of decimal places of title m/z values in the eic plot" help="[mzdec]" />
-                <param name="sortpval" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="diffreport: logical indicating whether the reports should be sorted by p-value" help="[sortpval]"/>
-            </when>
-            <when value="hide">
-            </when>
-        </conditional>
-
-        <expand macro="file_load"/>
+        <expand macro="input_peaklist"/>
+        <expand macro="input_file_load"/>
     </inputs>
 
     <outputs>
         <data name="variableMetadata" format="tabular" label="${image.name[:-6]}.annotate.variableMetadata.tsv" />
         <data name="datamatrix" format="tabular" label="${image.name[:-6]}.annotate.dataMatrix.tsv" />
-        <data name="rdata" format="rdata.camera.quick" label="${image.name[:-6]}.annotate.${$quick_block.polarity}.Rdata" >
+        <data name="rdata" format="rdata.camera.quick" label="${image.name[:-6]}.annotate.${$quick_block.findadducts.polarity}.Rdata" >
             <change_format>
-                <when input="quick_block.polarity" value="positive" format="rdata.camera.positive" />
-                <when input="quick_block.polarity" value="negative" format="rdata.camera.negative" />
+                <when input="quick_block.findadducts.polarity" value="positive" format="rdata.camera.positive" />
+                <when input="quick_block.findadducts.polarity" value="negative" format="rdata.camera.negative" />
             </change_format>
         </data>
         <data name="output_diffreport" format="text" label="${image.name[:-6]}.annotateDiffreport" hidden="true">
-            <filter>(options['option'] == 'show')</filter>
+            <filter>(diffreport.options.option == "show")</filter>
         </data>
     </outputs>
 
     <tests>
-        <!--<test>
-            <param name="image" value="xset.group.retcor.group.fillPeaks.RData"/>
-            <param name="convert_param" value="False"/>
-            <param name="num_digits" value="0"/>
-            <param name="sigma" value="6"/>
-            <param name="perfwhm" value="0.6"/>
-            <param name="maxcharge" value="3"/>
-            <param name="maxiso" value="4"/>
-            <param name="minfrac" value="0.5"/>
-            <param name="ppm" value="5"/>
-            <param name="mzabs" value="0.015"/>
-            <param name="intval" value="into"/>
-            <param name="max_peaks" value="100"/>
-            <param name="quick_block|quick" value="FALSE"/>
-            <param name="quick_block|polarity" value="negative"/>
-            <param name="quick_block|cor_eic_th" value="0.75"/>
-            <param name="quick_block|graphMethod" value="hcs"/>
-            <param name="quick_block|pval" value="0.05"/>
-            <param name="quick_block|calcCiS" value="True"/>
-            <param name="quick_block|calcIso" value="False"/>
-            <param name="quick_block|calcCaS" value="False"/>
-            <param name="quick_block|multiplier" value="3"/>
-            <param name="options|option" value="show"/>
-            <param name="options|eicmax" value="200"/>
-            <param name="options|eicwidth" value="200"/>
-            <param name="options|value" value="into"/>
-            <param name="options|h" value="480"/>
-            <param name="options|w" value="640"/>
-            <param name="options|mzdec" value="2"/>
-            <param name="options|sortpval" value="False"/>
-            <param name="zip_file" value="sacuri_dir_root.zip"  ftype="zip" />
-            <output name="variableMetadata" file="xset.group.retcor.group.fillPeaks.annotate.variableMetadata.tsv" />
-            <output name="datamatrix" file="xset.group.retcor.group.fillPeaks.annotate.dataMatrix.tsv" />
-        </test>-->
         <test>
             <param name="image" value="faahKO.xset.group.retcor.group.fillpeaks.RData"/>
-            <param name="sigma" value="6"/>
-            <param name="perfwhm" value="0.6"/>
-            <param name="maxcharge" value="3"/>
-            <param name="maxiso" value="4"/>
-            <param name="minfrac" value="0.5"/>
-            <param name="ppm" value="5"/>
-            <param name="mzabs" value="0.015"/>
-            <param name="max_peaks" value="100"/>
+            <expand macro="test_annotate_diffreport"/>
             <conditional name="quick_block">
-                <param name="quick" value="FALSE"/>
-                <param name="polarity" value="negative"/>
-                <param name="cor_eic_th" value="0.75"/>
-                <param name="graphMethod" value="hcs"/>
-                <param name="pval" value="0.05"/>
-                <param name="calcCiS" value="True"/>
-                <param name="calcIso" value="False"/>
-                <param name="calcCaS" value="False"/>
-                <conditional name="rules_block">
-                    <param name="rules_select" value="FALSE"/>
-                    <param name="multiplier" value="3"/>
-                </conditional>
+                <expand macro="test_annotate_diffreport_quick" />
+                <section name="findadducts">
+                    <param name="polarity" value="negative"/>
+                    <conditional name="rules_block">
+                        <param name="rules_select" value="FALSE"/>
+                        <param name="multiplier" value="3"/>
+                    </conditional>
+                </section>
             </conditional>
-            <param name="convertRTMinute" value="False"/>
-            <param name="numDigitsMZ" value="4" />
-            <param name="numDigitsRT" value="1" />
-            <param name="intval" value="into"/>
-            <conditional name="options">
-                <param name="option" value="show"/>
-                <param name="eicmax" value="200"/>
-                <param name="eicwidth" value="200"/>
-                <param name="value" value="into"/>
-                <param name="h" value="480"/>
-                <param name="w" value="640"/>
-                <param name="mzdec" value="2"/>
-                <param name="sortpval" value="False"/>
-            </conditional>
-            <param name="file_load_conditional|file_load_select" value="yes" />
-            <param name="file_load_conditional|inputs|input" value="zip_file" />
-            <param name="file_load_conditional|inputs|zip_file" value="faahKO_reduce.zip"  ftype="zip" />
+            <expand macro="test_file_load_zip"/>
             <output name="variableMetadata" file="faahKO.xset.group.retcor.group.fillPeaks.annotate.variableMetadata.tsv" />
             <output name="datamatrix" file="faahKO.xset.group.retcor.group.fillPeaks.annotate.dataMatrix.tsv" />
         </test>
         <test>
             <param name="image" value="faahKO-single.xset.merged.group.retcor.group.fillpeaks.RData"/>
-            <param name="sigma" value="6"/>
-            <param name="perfwhm" value="0.6"/>
-            <param name="maxcharge" value="3"/>
-            <param name="maxiso" value="4"/>
-            <param name="minfrac" value="0.5"/>
-            <param name="ppm" value="5"/>
-            <param name="mzabs" value="0.015"/>
-            <param name="max_peaks" value="100"/>
+            <expand macro="test_annotate_diffreport"/>
             <conditional name="quick_block">
-                <param name="quick" value="FALSE"/>
-                <param name="polarity" value="negative"/>
-                <param name="cor_eic_th" value="0.75"/>
-                <param name="graphMethod" value="hcs"/>
-                <param name="pval" value="0.05"/>
-                <param name="calcCiS" value="True"/>
-                <param name="calcIso" value="False"/>
-                <param name="calcCaS" value="False"/>
-                <conditional name="rules_block">
-                    <param name="rules_select" value="FALSE"/>
-                    <param name="multiplier" value="3"/>
-                </conditional>
+                <expand macro="test_annotate_diffreport_quick" />
+                <section name="findadducts">
+                    <param name="polarity" value="negative"/>
+                    <conditional name="rules_block">
+                        <param name="rules_select" value="FALSE"/>
+                        <param name="multiplier" value="3"/>
+                    </conditional>
+                </section>
             </conditional>
-            <param name="convertRTMinute" value="False"/>
-            <param name="numDigitsMZ" value="4" />
-            <param name="numDigitsRT" value="1" />
-            <param name="intval" value="into"/>
-            <conditional name="options">
-                <param name="option" value="show"/>
-                <param name="eicmax" value="200"/>
-                <param name="eicwidth" value="200"/>
-                <param name="value" value="into"/>
-                <param name="h" value="480"/>
-                <param name="w" value="640"/>
-                <param name="mzdec" value="2"/>
-                <param name="sortpval" value="False"/>
-            </conditional>
-            <param name="file_load_conditional|file_load_select" value="yes" />
-            <param name="file_load_conditional|inputs|input" value="single_file" />
-            <param name="file_load_conditional|inputs|single_file" value="wt15.CDF,ko16.CDF,ko15.CDF,wt16.CDF"  ftype="netcdf" />
+            <expand macro="test_file_load_single"/>
             <output name="variableMetadata" file="faahKO.xset.group.retcor.group.fillPeaks.annotate.variableMetadata.tsv" />
             <output name="datamatrix" file="faahKO.xset.group.retcor.group.fillPeaks.annotate.dataMatrix.tsv" />
         </test>
         <test>
             <param name="image" value="faahKO-single.xset.merged.group.retcor.group.fillpeaks.RData"/>
-            <param name="sigma" value="6"/>
-            <param name="perfwhm" value="0.6"/>
-            <param name="maxcharge" value="3"/>
-            <param name="maxiso" value="4"/>
-            <param name="minfrac" value="0.5"/>
-            <param name="ppm" value="5"/>
-            <param name="mzabs" value="0.015"/>
-            <param name="max_peaks" value="100"/>
+            <expand macro="test_annotate_diffreport"/>
             <conditional name="quick_block">
-                <param name="quick" value="FALSE"/>
-                <param name="polarity" value="negative"/>
-                <param name="cor_eic_th" value="0.75"/>
-                <param name="graphMethod" value="hcs"/>
-                <param name="pval" value="0.05"/>
-                <param name="calcCiS" value="True"/>
-                <param name="calcIso" value="False"/>
-                <param name="calcCaS" value="False"/>
-                <conditional name="rules_block">
-                    <param name="rules_select" value="TRUE"/>
-                    <param name="rules" value="CASMI_extended_NEG_rules.csv" ftype="csv"/>
-                </conditional>
+                <expand macro="test_annotate_diffreport_quick" />
+                <section name="findadducts">
+                    <param name="polarity" value="negative"/>
+                    <conditional name="rules_block">
+                        <param name="rules_select" value="TRUE"/>
+                        <param name="rules" value="CASMI_extended_NEG_rules.csv" ftype="csv"/>
+                    </conditional>
+                </section>
             </conditional>
-            <param name="convertRTMinute" value="False"/>
-            <param name="numDigitsMZ" value="4" />
-            <param name="numDigitsRT" value="1" />
-            <param name="intval" value="into"/>
-            <conditional name="options">
-                <param name="option" value="show"/>
-                <param name="eicmax" value="200"/>
-                <param name="eicwidth" value="200"/>
-                <param name="value" value="into"/>
-                <param name="h" value="480"/>
-                <param name="w" value="640"/>
-                <param name="mzdec" value="2"/>
-                <param name="sortpval" value="False"/>
-            </conditional>
-            <param name="file_load_conditional|file_load_select" value="yes" />
-            <param name="file_load_conditional|inputs|input" value="single_file" />
-            <param name="file_load_conditional|inputs|single_file" value="wt15.CDF,ko16.CDF,ko15.CDF,wt16.CDF"  ftype="netcdf" />
+            <expand macro="test_file_load_single"/>
             <output name="variableMetadata" file="faahKO.xset.group.retcor.group.fillPeaks.annotate.rules.variableMetadata.tsv" />
             <output name="datamatrix" file="faahKO.xset.group.retcor.group.fillPeaks.annotate.rules.dataMatrix.tsv" />
         </test>
@@ -370,7 +286,7 @@
 +---------------------------+---------------------------------------+------------------------------------------------+
 | Name                      | Output file                           | Format                                         |
 +===========================+=======================================+================================================+
-|CAMERA_combinexsAnnot      |xset.annotate.dataMatrix.tsv           | rdata.camera.positive or rdata.camera.negative |
+|CAMERA_combinexsAnnot      |xset.annotate.Rdata                    | rdata.camera.positive or rdata.camera.negative |
 +---------------------------+---------------------------------------+------------------------------------------------+
 |Determine Vdk or Lowess    |xset.annotate.dataMatrix.tsv           | Tabular                                        |
 +---------------------------+---------------------------------------+------------------------------------------------+
@@ -408,6 +324,22 @@
 +---------------------------+---------------------------+
 
 
+[Optional] User defined ruleset:
+--------------------------------
+
+Example:
+
+    | "name","nmol","charge","massdiff","oidscore","quasi","ips"
+    | "[M-H]-",1,-1,-1.007276,1,1,1
+    | "[M-2H]2-",1,-2,-2.014552,2,0,1
+    | "[M-3H]3-",1,-3,-3.021828,3,0,1
+    | "[M-2H+Na]-",1,-1,20.974666,4,0,0.25
+    | "[M-H+Cl]2-",1,-2,33.962126,5,0,1
+    | "[M-2H+K]-",1,-1,36.948606,6,0,0.25
+    | "[M+Cl]-",1,-1,34.969402,7,1,1
+    | "[M+2Cl]2-",1,-2,69.938804,8,0,1
+    | "[2M-H]-",2,-1,-1.007276,1,0,0.5
+
 ----------
 Parameters
 ----------
@@ -501,16 +433,18 @@
 Changelog/News
 --------------
 
-**Version 2.2.0 - 03/02/2017**
+**Version 2.2.0 - 28/03/2017**
 
 - BUGFIX: the diffreport ids didn't convert the rt in minute as the other export
 
 - UPDATE: the settings (digits, convertion in minutes) of the identifiants will no longer modify the native one. Because we want to be conservative and because it can be dangerous for the data integrity during a futur merge of the table, we decide to put those customization in a new column namecustom within the variableMetadata.
 
-- IMPROVEMENT: add the possibility to set the MZ digit within the identifiants
+- IMPROVEMENT: add some sections within to separate the different parts of the process
 
 - IMPROVEMENT: add the possibility to use defined ruleset
 
+- IMPROVEMENT: add the possibility to set the MZ digit within the identifiants
+
 - IMPROVEMENT: CAMERA.annotate is now compatible with merged individual data from xcms.xcmsSet
 
 
@@ -535,12 +469,12 @@
 - UPDATE: refactoring of internal management of inputs/outputs
 
 
-VERSION 2.1.0 - 09/10/2015**
+**VERSION 2.1.0 - 09/10/2015**
 
 - BUGFIX: There was a bug with the CAMERA.annotate (generating a bad dataMatrix (intensities which don't match with the metabolites))
 
 
-VERSION 2.1.0 - 07/06/2015**
+**VERSION 2.1.0 - 07/06/2015**
 
 - IMPROVEMENT: new datatype/dataset formats (rdata.camera.positive, rdata.camera.negative, rdata.camera.quick ...) will facilitate the sequence of tools and so avoid incompatibility errors.