view maxquant_mqpar.xml @ 0:a52165553917 draft

planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/maxquant commit ab4e4f1817080cbe8a031a82cb180610ff140847
author galaxyp
date Fri, 19 Jul 2019 19:13:52 -0400
parents
children b95d333b4a3f
line wrap: on
line source

<tool id="maxquant_mqpar" name="MaxQuant (using mqpar.xml)" version="@VERSION@">
    <macros>
        <import>macros.xml</import>
    </macros>
    <requirements>
        <requirement type="package" version="@VERSION@">maxquant</requirement>
        <requirement type="package" version="3.7">python</requirement>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
    #import re

    python3 '$__tool_directory__/mqwrapper.py'
    --num_threads=\${GALAXY_SLOTS:-1}
    --substitution_rx='@SUBSTITUTION_RX@'
    #if $infile.select == "mzxml_files"
        --mzxml_files='$infile.mzxml_files'
        #set names = ','.join([re.sub('@SUBSTITUTION_RX@', '_', str($name.element_identifier)) for $name in $infile.mzxml_files])
    #else
        --raw_files='$infile.raw_files'
        #set names = ','.join([re.sub('@SUBSTITUTION_RX@', '_', str($name.element_identifier)) for $name in $infile.raw_files])
    #end if
    --infile_names='$names'
    --version='@VERSION@'
    --fasta_files='$fasta_files'
    --identifier_parse_rule='$identifier_parse_rule'
    --description_parse_rule='$description_parse_rule'
    --mqpar_in='$mqpar_in'

    --evidence='$evidence'
    --msms='$msms'
    --parameters='$parameters'
    --peptides='$peptides'
    --proteinGroups='$proteinGroups'
    --allPeptides='$allPeptides'
    --libraryMatch='$libraryMatch'
    --matchedFeatures='$matchedFeatures'
    --modificationSpecificPeptides='$modificationSpecificPeptides'
    --ms3Scans='$ms3Scans'
    --msmsScans='$msmsScans'
    --mzRange='$mzRange'
    --peptideSection='$peptideSection'
    --summary='$summary'
    --mzTab='$mzTab'
    --output_all='$output_all'
    --mqpar_out='$mqpar_out'

    > '$log'
    ]]></command>
    <inputs>
        <conditional name="infile">
            <param name="select" type="select" label="choose the type of your input files">
                <option value="raw_files">Thermo.raw</option>
                <option value="mzxml_files">mzXML</option>
            </param>
            <when value="raw_files"> 
                <param multiple="true" name="raw_files" type="data"
                       format="thermo.raw" label="RAW Files"
                       help="Specify one or more Thermo RAW files" />
            </when>
            <when value="mzxml_files">
                <param multiple="true" name="mzxml_files" type="data"
                       format="mzxml" label="mzXML Files"
                       help="Specify one or more mzXML files" />
            </when>
        </conditional>
        <param format="fasta" multiple="true" name="fasta_files"
               type="data" label="FASTA files"
               help="Specify one or more FASTA databases." />
        <param name="identifier_parse_rule" type="text"
               label="identifier parse rule" value="^&gt;.*\|(.*)\|.*$">
            <sanitizer>
                <valid initial="string.printable">
                    <remove value="&apos;"/>
                </valid>
            </sanitizer>
        </param>
        <param name="description_parse_rule" type="text"
               label="description parse rule" value="^&gt;.*\|.*\|[^ ]+ (.*) OS.*$"
               help="Modify parse rules if needed">
            <sanitizer>
                <valid initial="string.printable">
                    <remove value="&apos;"/>
                </valid>
            </sanitizer>
        </param>
        <param type="data" name="mqpar_in" format="xml"
               label="mqpar.xml file with your search parameters. RAW file names 
                      must match the names displayed in galaxy. Their paths 
                      from the local machine are ignored. E.g. a file named
                      'test01.raw' in galaxy can either be named 'test01.raw' or
                      'D:\path\to\test01.raw' in the mqpar.xml."/>

        <param type="select" name="output" label="Select the desired outputs."
               multiple="true" optional="false">
            <expand macro="output_option" name="proteinGroups" label="Protein Groups"/>
            <expand macro="output_option" name="mqpar_out" label="mqpar.xml"/>
            <expand macro="output_option" name="peptides" label="Peptides"/>
            <expand macro="output_option" name="evidence" label="Evidence"/>
            <expand macro="output_option" name="parameters" label="Tabular Paramters"/>
            <expand macro="output_option" name="msms" label="MSMS"/>
            <expand macro="output_option" name="mzTab" label="mzTab"/>
            <expand macro="output_option" name="allPeptides" label="all peptides"/>
            <expand macro="output_option" name="libraryMatch" label="library match"/>
            <expand macro="output_option" name="matchedFeatures"
                    label="matched features"/>
            <expand macro="output_option" name="modificationSpecificPeptides"
                    label="modification specific peptides"/>
            <expand macro="output_option" name="ms3Scans" label="ms3 scans"/>
            <expand macro="output_option" name="msmsScans" label="msms scans"/>
            <expand macro="output_option" name="mzRange" label="mz range"/>
            <expand macro="output_option" name="peptideSection" label="peptide section"/>
            <expand macro="output_option" name="summary" label="summary"/>
            <expand macro="output_option" name="output_all"
                    label="complete 'combined/txt/' directory (compressed)"/>
        </param>
    </inputs>

    <outputs>
        <expand macro="output" name="mqpar_out" label="mqpar.xml" format="xml"/>
        <expand macro="output" name="proteinGroups" label="MaxQuant Protein Groups"/>
        <expand macro="output" name="peptides" label="MaxQuant Peptides"/>
        <expand macro="output" name="evidence" label="MaxQuant Evidence"/>
        <expand macro="output" name="parameters" label="MaxQuant Tabular Parameters"/>
        <expand macro="output" name="msms" label="MaxQuant MSMS"/>
        <expand macro="output" name="mzTab" label="mzTab"/>
        <expand macro="output" name="allPeptides" label="all peptides"/>
        <expand macro="output" name="libraryMatch" label="library match"/>
        <expand macro="output" name="matchedFeatures" label="matched features"/>
        <expand macro="output" name="modificationSpecificPeptides"
                label="modification specific peptides"/>
        <expand macro="output" name="ms3Scans" label="ms3 scans"/>
        <expand macro="output" name="msmsScans"
                label="msms Scans"/>
        <expand macro="output" name="mzRange"
                label="mz range"/>
        <expand macro="output" name="peptideSection"
                label="peptide section"/>
        <expand macro="output" name="summary"
                label="MaxQuant summary"/>
        <expand macro="output" format="tar" name="output_all"
                label="'combined/txt/' directory"/>
        <data name="log" format="txt"
              label="log"/>
    </outputs>

    <tests>
        <test>
            <param name="select" value="mzxml_files" />
            <param name="mzxml_files" value="BSA_min_22,BSA_min_21.mzXML" />
            <param name="fasta_files" value="bsa.fasta" />
            <param name="identifier_parse_rule" value="&gt;([^\s]*)" />
            <param name="description_parse_rule" value="&gt;(.*)" />
            <param name="mqpar_in" value="two/mqpar.xml" />
            <param name="output" value="evidence,msms,mzTab,allPeptides,msmsScans,mzRange,parameters,peptides,peptideSection,proteinGroups,summary,modificationSpecificPeptides" />
            <output name="evidence" file="two/combined/txt/evidence.txt" />
            <output name="msms" file="two/combined/txt/msms.txt" />
            <output name="mzTab" file="two/combined/txt/mzTab.mzTab" lines_diff="4"/>
            <output name="allPeptides" file="two/combined/txt/allPeptides.txt" lines_diff="14"/>
            <output name="msmsScans" file="two/combined/txt/msmsScans.txt" />
            <output name="mzRange" file="two/combined/txt/mzRange.txt" />
            <output name="parameters" file="two/combined/txt/parameters.txt" lines_diff="8"/>
            <output name="peptides" file="two/combined/txt/peptides.txt" />
            <output name="peptideSection" file="two/combined/txt/peptideSection.txt" />
            <output name="proteinGroups" file="two/combined/txt/proteinGroups.txt" />
            <output name="summary" file="two/combined/txt/summary.txt" />
            <output name="modificationSpecificPeptides" file="two/combined/txt/modificationSpecificPeptides.txt" />
        </test>
    </tests>
    <help><![CDATA[
MaxQuant is a quantitative proteomics software package designed for analyzing large mass-spectrometric data sets. 

This tool is a wrapper for MaxQuant v@VERSION@. It gets its search parameters from a previously created parameter file (mqpar.xml). A similiar tool that allows the specification of search parameters directly through galaxy is available as well and should be preferred. 

**Input files**

- Thermo raw file or mzXML file
    - The datatype has to be 'thermo.raw' or 'mzXML'. Make sure to specify the correct datatype either during upload to Galaxy or afterwards (edit attributes --> datatypes)
- Optional files:
    - mqpar.xml: 
        - MaxQuant parameters will be taken from the provided mqpar.xml file. This parameter file MUST be created using the same version of MaxQuant as is used by this tool. The correct version of MaxQuant can be obtained via the bioconda channel for the conda package manager.

**Output files**

Different output file options are available, most of them are part of the MaxQuant txt folder. An additional mztab output option is implemented. 
    ]]></help>
    <citations>
        <citation type="bibtex">
        @article{cox2008maxquant,
        title={MaxQuant enables high peptide identification rates, individualized
        ppb-range mass accuracies and proteome-wide protein quantification},
        author={Cox, J{\"u}rgen and Mann, Matthias},
        journal={Nature biotechnology},
        volume={26},
        number={12},
        pages={1367},
        year={2008},
        publisher={Nature Publishing Group}
        }
        </citation>
        <citation type="bibtex">
        @article{tyanova2016maxquant,
        title={The MaxQuant computational platform for mass
        spectrometry-based shotgun proteomics},
        author={Tyanova, Stefka and Temu, Tikira and Cox, J{\"u}rgen},
        journal={Nature protocols},
        volume={11},
        number={12},
        pages={2301},
        year={2016},
        publisher={Nature Publishing Group}
        }
        </citation>
    </citations>
</tool>