diff peptide_shaker.xml @ 18:a5f9b959d5d1 draft

Uploaded
author iracooke
date Wed, 25 Jun 2014 11:49:45 -0400
parents
children 2cafc729b2ae
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/peptide_shaker.xml	Wed Jun 25 11:49:45 2014 -0400
@@ -0,0 +1,958 @@
+<tool id="peptide_shaker" name="Peptide Shaker" version="1.19.5.0">
+    <description>
+        Perform protein identification using various search engines (using SearchGUI) and combine results with PeptideShaker.
+    </description>
+    <requirements>
+        <requirement type="package" version="0.31.4">peptide_shaker</requirement>
+        <requirement type="package" version="1.19.5">searchgui</requirement>
+        <!--<requirement type="package" version="2.2.29">blast+</requirement>-->
+    </requirements>
+    <stdio>
+        <exit_code range="1:" level="fatal" description="Job Failed" />
+        <regex match="java.*Exception" level="fatal" description="Java Exception"/> 
+        <regex match="Could not create the Java virtual machine" level="fatal" description="JVM Error"/>
+    </stdio>
+    <command>
+
+        #from datetime import datetime
+        #set $exp_str = "Galaxy_Experiment_%s" % datetime.now().strftime("%Y%m%d%H%M%s")
+        #set $samp_str = "Sample_%s" % datetime.now().strftime("%Y%m%d%H%M%s")
+        #set $temp_stderr = 'macs2_stderr'
+
+        mkdir output;
+        mkdir output_reports;
+        cwd=`pwd`;
+        #for $mgf in $peak_lists:
+            #set $input_name = $mgf.display_name.replace(".mgf", "") + ".mgf"
+            ln -s '${mgf}' '${input_name}';
+        #end for
+        ##ln -s "${input_database}" input_database.fasta;
+        cp "${input_database}" input_database.fasta;
+
+        ###########################################
+        ####       Creating decoy database     ####
+        ###########################################
+        #if $create_decoy:
+            echo "Creating decoy database.";
+            java -cp \$SEARCHGUI_JAR_PATH eu.isas.searchgui.cmd.FastaCLI -in input_database.fasta -decoy;
+            rm input_database.fasta;
+            cp input_database_concatenated_target_decoy.fasta input_database.fasta;
+            ##ln -sf input_database_concatenated_target_decoy.fasta input_database.fasta;
+        #end if
+
+        #####################################################
+        ## generate IdentificationParameters for SearchGUI ##
+        #####################################################
+
+        (java -cp \$SEARCHGUI_JAR_PATH eu.isas.searchgui.cmd.IdentificationParametersCLI
+            -out SEARCHGUI_IdentificationParameters.parameters
+            -prec_ppm "${precursor_ion_tol_units}"
+            -prec_tol "${precursor_ion_tol}"
+            -frag_tol "${fragment_tol}"
+            -enzyme "${enzyme}"
+            #set $fixed_mods_str = $fixed_modifications or ''
+            #set $variable_mods_str = $variable_modifications or ''
+            #if $fixed_mods_str
+                -fixed_mods "${fixed_mods_str}" 
+            #end if
+            #if $variable_mods_str
+                -variable_mods "${variable_mods_str}"
+            #end if
+            -min_charge "${min_charge}"
+            -max_charge "${max_charge}"
+            -mc "${missed_cleavages}"
+            -fi "${forward_ion}"
+            -ri "${reverse_ion}"
+            -db input_database.fasta
+
+            #if $advanced.advanced_type_selector == "advanced":
+
+                #if $advanced.xtandem.xtandem_selector == "yes"
+
+                    -xtandem_npeaks ${advanced.xtandem.xtandem_npeaks}
+                    -xtandem_min_peaks ${advanced.xtandem.xtandem_min_peaks}
+                    -xtandem_min_frag_mz ${advanced.xtandem.xtandem_min_frag_mz}
+                    -xtandem_min_prec_mass ${advanced.xtandem.xtandem_min_prec_mass}
+                    -xtandem_noise_suppr ${advanced.xtandem.xtandem_noise_suppr}
+
+                    #if $advanced.xtandem.xtandem_refine.xtandem_refine_selector == "yes"
+                        -xtandem_refine 1
+                        -xtandem_refine_unc ${advanced.xtandem.xtandem_refine.xtandem_refine_unc}
+                        -xtandem_refine_semi ${advanced.xtandem.xtandem_refine.xtandem_refine_semi}
+                        -xtandem_refine_p_mut ${advanced.xtandem.xtandem_refine.xtandem_refine_p_mut}
+                        -xtandem_refine_snaps ${advanced.xtandem.xtandem_refine.xtandem_refine_snaps}
+                        -xtandem_refine_spec_synt ${advanced.xtandem.xtandem_refine.xtandem_refine_spec_synt}
+                    #end if
+                #end if
+
+                #if $advanced.omssa.omssa_selector == "yes"
+                    -omssa_hitlist_length ${advanced.omssa.hitlist_length}
+                    -omssa_remove_prec ${advanced.omssa.remove_precursor}
+                    -omssa_scale_prec ${advanced.omssa.scale_precursor}
+                    -omssa_estimate_charge ${advanced.omssa.estimate_charge}
+                #end if
+
+                #if $advanced.msgf.msgf_selector == "yes"
+                    -msgf_decoy ${advanced.msgf.msgf_decoy}
+                    -msgf_min_pep_length ${advanced.msgf.msgf_min_pep_length}
+                    -msgf_max_pep_length ${advanced.msgf.msgf_max_pep_length}
+                    -msgf_termini ${advanced.msgf.msgf_termini}
+                    -msgf_num_ptms ${advanced.msgf.msgf_num_ptms}
+                #end if
+
+                ##if $advanced.ms_amanda.ms_amanda_selector == "yes"
+                ##end if
+
+            #end if
+
+        2> $temp_stderr)
+        &amp;&amp;
+
+        ################
+        ## Search CLI ##
+        ################
+        (java -Djava.awt.headless=true -cp \$SEARCHGUI_JAR_PATH eu.isas.searchgui.cmd.SearchCLI 
+            -temp_folder `pwd`
+            -spectrum_files \$cwd
+            -output_folder \$cwd/output
+            -id_params SEARCHGUI_IdentificationParameters.parameters
+
+            -threads "\${GALAXY_SLOTS:-12}"
+            -correct_titles "${correct_titles}"
+            $missing_titles
+            -mgf_splitting "${mgf_splitting}"
+            -mgf_spectrum_count "${mgf_spectrum_count}"
+
+            ## Turn of the protein tree generation as it can produce errors if the search is finished before the tree is created
+            ## the tree is generated afterwards in PeptideShaker
+            -protein_index 0
+
+            ##-makeblastdb_folder \$BLAST_ROOT_DIR
+
+            #if $advanced.advanced_type_selector == "advanced":
+
+                #if $advanced.xtandem.xtandem_selector == "yes"
+                    -xtandem 1
+                #else
+                    -xtandem 0
+                #end if
+
+                #if $advanced.omssa.omssa_selector == "yes"
+                    -omssa 1
+                #else
+                    -omssa 0
+                #end if
+
+                #if $advanced.msgf.msgf_selector == "yes"
+                    -msgf 1
+                #else
+                    -msgf 0
+                #end if
+
+                #if $advanced.ms_amanda.ms_amanda_selector == "yes"
+                    -ms_amanda 1
+                #else
+                    -ms_amanda 0
+                #end if
+
+            #else
+                -ms_amanda 0
+            #end if
+            
+        2>> $temp_stderr)
+        &amp;&amp;
+
+        #########################################################
+        ## generate IdentificationParameters for PeptideShaker ##
+        #########################################################
+        (java -cp \$PEPTIDESHAKER_JAR_PATH eu.isas.peptideshaker.cmd.IdentificationParametersCLI
+            -out PEPTIDESHAKER_IdentificationParameters.parameters
+            -prec_ppm "${precursor_ion_tol_units}"
+            -prec_tol "${precursor_ion_tol}"
+            -frag_tol "${fragment_tol}"
+            -enzyme "${enzyme}"
+            #set $fixed_mods_str = $fixed_modifications or ''
+            #set $variable_mods_str = $variable_modifications or ''
+            #if $fixed_mods_str
+                -fixed_mods "$fixed_mods_str" 
+            #end if
+            #if $variable_mods_str
+                -variable_mods "$variable_mods_str"
+            #end if
+            -min_charge $min_charge
+            -max_charge $max_charge
+            -mc $missed_cleavages
+            -fi $forward_ion
+            -ri $reverse_ion
+            -db input_database.fasta
+
+        2>> $temp_stderr)
+        &amp;&amp;
+
+        ######################
+        ## PeptideShakerCLI ##
+        ######################
+        (java -cp \$PEPTIDESHAKER_JAR_PATH eu.isas.peptideshaker.cmd.PeptideShakerCLI
+            -temp_folder `pwd`
+            -experiment '${exp_str}'
+            -sample '${samp_str}'
+            -replicate 1
+            -spectrum_files \$cwd
+            -identification_files \$cwd/output
+            -out \$cwd/peptide_shaker_output.cps
+            -id_params PEPTIDESHAKER_IdentificationParameters.parameters
+
+            ##Optional gene annotation parameter
+            #if $species_type.species_type_selector != 'no_species_type':
+                -species_type "${species_type.species_type_selector}"
+                -species "${species_type.species}"
+            #end if
+
+            ##Optional processing parameters:
+            #if $processing_options.processing_options_selector == "yes"
+                -protein_FDR "${processing_options.protein_fdr}"
+                -peptide_FDR "${processing_options.peptide_fdr}"
+                -psm_FDR "${processing_options.psm_fdr}"
+                -ptm_score "${processing_options.ptm_score.ptm_score_selector}"
+                #if $processing_options.ptm_score.ptm_score_selector == 1
+                    -score_neutral_losses "${processing_options.ptm_score.neutral_losses}"
+                    #if str($processing_options.ptm_score.ptm_threshold) != ''
+                        -ptm_threshold "${processing_options.ptm_score.ptm_threshold}"
+                    #end if
+                #end if
+                -protein_fraction_mw_confidence "${processing_options.protein_fraction_mw_confidence}"
+            #end if
+
+           ##Optional filtering parameters:
+            #if $filtering_options.filtering_options_selector == "yes":
+                -min_peptide_length "${filtering_options.min_peptide_length}"
+                -max_peptide_length "${filtering_options.max_peptide_length}"
+                -max_precursor_error "${filtering_options.max_precursor_error}"
+                -max_precursor_error_type "${filtering_options.max_precursor_error_type}"
+                -max_xtandem_e "${filtering_options.max_xtandem_e}"
+                -max_omssa_e "${filtering_options.max_omssa_e}"
+                -max_mascot_e "${filtering_options.max_mascot_e}"
+                -exclude_unknown_ptms "${filtering_options.exclude_unknown_ptms}"
+            #end if
+
+        2>> $temp_stderr)
+        &amp;&amp;
+
+        ##################################
+        ## PeptideShaker Report options ##
+        ##################################
+        (java -cp \$PEPTIDESHAKER_JAR_PATH eu.isas.peptideshaker.cmd.ReportCLI
+            -temp_folder `pwd`
+            -in \$cwd/peptide_shaker_output.cps
+            -out_reports \$cwd/output_reports
+            #set $cleaned_list = str($outputs).split(',')
+            #if 'cps' in $cleaned_list:
+                #silent $cleaned_list.remove('cps')
+            #end if
+            #if 'mzidentML' in $cleaned_list:
+                #silent $cleaned_list.remove('mzidentML')
+            #end if
+            -reports #echo ','.join($cleaned_list)#
+
+        2>> $temp_stderr)
+        &amp;&amp;
+
+        #if 'mzidentML' in str($outputs).split(','):
+            java -cp \$PEPTIDESHAKER_JAR_PATH eu.isas.peptideshaker.cmd.MzidCLI
+                -in \$cwd/peptide_shaker_output.cps
+                -output_file output.mzid
+                -contact_first_name 'Proteomics'
+                -contact_last_name 'Galaxy'
+                -contact_email 'galaxyp@umn.edu'
+                -contact_address 'galaxyp@umn.edu'
+                -organization_name 'University of Minnesota'
+                -organization_email 'galaxyp@umn.edu'
+                -organization_address 'Minneapolis, MN 55455, Vereinigte Staaten'
+                ;
+        #end if
+        #if '0' in str($outputs).split(','):
+            find \$cwd/output_reports -name '*Certificate*' -exec bash -c 'mv "$0" "certificate.txt"' {} \;
+            ;
+        #end if
+        #if '2' in str($outputs).split(','):
+            find \$cwd/output_reports -name '*PSM*' -exec bash -c 'mv "$0" "psm.txt"' {} \;
+            ;
+        #end if
+        #if '3' in str($outputs).split(','):
+            find \$cwd/output_reports -name '*Peptide*' -exec bash -c 'mv "$0" "peptides.txt"' {} \;
+            ;
+        #end if
+        #if '4' in str($outputs).split(','):
+            find \$cwd/output_reports -name '*Protein*' -exec bash -c 'mv "$0" "proteins.txt"' {} \;
+            ;
+        #end if
+        #if '1' in str($outputs).split(','):
+            find \$cwd/output_reports -name '*Hierarchical*' -exec bash -c 'mv "$0" "hierarchical.txt"' {} \;
+            ;
+        #end if
+
+        exit_code_for_galaxy=\$?;
+        cat $temp_stderr 2&gt;&amp;1;
+        (exit \$exit_code_for_galaxy)
+
+    </command>
+    <inputs>
+        <param format="fasta" name="input_database" type="data" label="Protein Database"
+            help="Select FASTA database from history"/>
+
+        <param name="create_decoy" label="Create a concatenated target/decoy database before running PeptideShaker." type="boolean" truevalue="True" falsevalue="False" checked="true" help="Selecting this option will help PeptideShaker calculate FDR values" />
+
+        <param format="mgf" name="peak_lists" type="data" multiple="true" label="Input Peak Lists (mgf)"
+            help="Select appropriate MGF dataset(s) from history" />
+        <param name="precursor_ion_tol_units" type="select" label="Precursor Ion Tolerance Units"
+            help="Select based on instrument used, as different machines provide different quality of spectra. ppm is a standard for most precursor ions">
+            <option value="1">Parts per million (ppm)</option>
+            <option value="0">Daltons</option>
+        </param>
+        <param name="precursor_ion_tol" type="float" value="10" label="Percursor Ion Tolerance"
+            help="Provide error value for precursor ion, based on instrument used. 10 ppm recommended for Orbitrap instrument"/>
+        <param name="fragment_tol" type="float" value="0.5" label="Fragment Tolerance (Daltons)"
+            help="Provide error value for fragment ions, based on instrument used"/>
+        <param name="enzyme" type="select" label="Enzyme"
+            help="Which enzyme was used for protein digest in experiment? In most cases, trypsin is used">
+            <option value="Trypsin">Trypsin</option>
+            <option value="Arg-C">Arg-C</option>
+            <option value="CNBr">CNBr</option>
+            <option value="Chymotrypsin (FYWL)">Chymotrypsin (FYWL)</option>
+            <option value="Formic Acid">Formic Acid</option>
+            <option value="Lys-C">Lys-C</option>
+            <option value="Lys-C, no P rule">Lys-C, no P rule</option>
+            <option value="Pepsin A">Pepsin A</option>
+            <option value="Trypsin + CNBr">Trypsin + CNBr</option>
+            <option value="Trypsin + Chymotrypsin (FYWLKR)">Trypsin + Chymotrypsin (FYWLKR)</option>
+            <option value="Trypsin, no P rule">Trypsin, no P rule</option>
+            <option value="whole protein">whole protein</option>
+            <option value="Asp-N">Asp-N</option>
+            <option value="Glu-C">Glu-C</option>
+            <option value="Asp-N + Glu-C">Asp-N + Glu-C</option>
+            <option value="Top-Down">Top-Down</option>
+            <option value="Semi-Tryptic">Semi-Tryptic</option>
+            <option value="No enzyme">No enzyme</option>
+            <option value="Chymotrypsin, no P rule (FYWL)">Chymotrypsin, no P rule (FYWL)</option>
+            <option value="Asp-N (DE)">Asp-N (DE)</option>
+            <option value="Glu-C (DE)">Glu-C (DE)</option>
+            <option value="Lys-N (K)">Lys-N (K)</option>
+            <option value="Thermolysin, no P rule">Thermolysin, no P rule</option>
+            <option value="Semi-Chymotrypsin (FYWL)">Semi-Chymotrypsin (FYWL)</option>
+            <option value="Semi-Glu-C">Semi-Glu-C</option>
+        </param>
+
+        <param name="correct_titles" type="select" label="How should PeptideShaker deal with duplicate spectra?"
+            help="Unless you suspect some input files to be genuine duplicates then rename spectra is the safest option">
+            <option value="0">no correction</option>
+            <option value="1" selected="True">rename spectra</option>
+            <option value="2">delete spectra</option>
+        </param>
+
+        <param name="missing_titles" label="Add missing spectrum titles" type="boolean" checked="false" truevalue="-missing_titles 1" falsevalue="-missing_titles 0" help="(-missing_titles)"/>
+
+        <param name="mgf_splitting" type="integer" value="1000" label="The maximum mgf file size in MB before splitting the mgf"
+            help="Choose a smaller value if you are running on a machine with limited memory"/>
+        <param name="mgf_spectrum_count" type="integer" value="25000" label="The maximum number of spectra per mgf file when splitting"
+            help="Choose a smaller value if you are running on a machine with limited memory"/>
+
+        <conditional name="species_type">
+            <param name="species_type_selector" type="select" optional="true" label="The species type to use for the gene annotation"
+                help="(Optional) If your species is supported under one of the groups, selecting it will allow GO annotations and other information to be included in the results">
+                <option value="Fungi">Fungi</option>
+                <option value="Plants">Plants</option>
+                <option value="Metazoa">Metazoa</option>
+                <option value="Vertebrates">Vertebrates</option>
+                <option value="Protists">Protists</option>
+                <option value="no_species_type" selected="true">No species restriction</option>
+            </param>
+            <when value="Protists">
+                <param name="species" type="select" label="The species to use for the gene annotation"
+                    help="">
+                    <option value="Albugo laibachii">Albugo laibachii</option>
+                    <option value="Dictyostelium discoideum">Dictyostelium discoideum</option>
+                    <option value="Entamoeba histolytica">Entamoeba histolytica</option>
+                    <option value="Giardia lamblia">Giardia lamblia</option>
+                    <option value="Guillardia theta CCMP2712">Guillardia theta CCMP2712</option>
+                    <option value="Hyaloperonospora arabidopsidis">Hyaloperonospora arabidopsidis</option>
+                    <option value="Leishmania major">Leishmania major</option>
+                    <option value="Phaeodactylum tricornutum">Phaeodactylum tricornutum</option>
+                    <option value="Phytophthora infestans">Phytophthora infestans</option>
+                    <option value="Phytophthora ramorum">Phytophthora ramorum</option>
+                    <option value="Phytophthora sojae">Phytophthora sojae</option>
+                    <option value="Plasmodium berghei">Plasmodium berghei</option>
+                    <option value="Plasmodium chabaudi">Plasmodium chabaudi</option>
+                    <option value="Plasmodium falciparum">Plasmodium falciparum</option>
+                    <option value="Plasmodium knowlesi">Plasmodium knowlesi</option>
+                    <option value="Plasmodium vivax">Plasmodium vivax</option>
+                    <option value="Pythium ultimum">Pythium ultimum</option>
+                    <option value="Tetrahymena thermophila">Tetrahymena thermophila</option>
+                    <option value="Thalassiosira pseudonana">Thalassiosira pseudonana</option>
+                    <option value="Toxoplasma gondii">Toxoplasma gondii</option>
+                    <option value="Trypanosoma brucei">Trypanosoma brucei</option>
+                </param>
+            </when>
+            <when value="Plants">
+                <param name="species" type="select" label="The species to use for the gene annotation"
+                    help="">
+                    <option value="Arabidopsis lyrata">Arabidopsis lyrata</option>
+                    <option value="Arabidopsis thaliana">Arabidopsis thaliana</option>
+                    <option value="Brachypodium distachyon">Brachypodium distachyon</option>
+                    <option value="Brassica rapa genes">Brassica rapa genes</option>
+                    <option value="Chlamydomonas reinhardtii">Chlamydomonas reinhardtii</option>
+                    <option value="Cyanidioschyzon merolae">Cyanidioschyzon merolae</option>
+                    <option value="Glycine max">Glycine max</option>
+                    <option value="Hordeum vulgare">Hordeum vulgare</option>
+                    <option value="Medicago truncatula">Medicago truncatula</option>
+                    <option value="Musa acuminata">Musa acuminata</option>
+                    <option value="Oryza brachyantha">Oryza brachyantha</option>
+                    <option value="Oryza glaberrima">Oryza glaberrima</option>
+                    <option value="Oryza sativa Indica Group">Oryza sativa Indica Group</option>
+                    <option value="Oryza sativa">Oryza sativa</option>
+                    <option value="Physcomitrella patens">Physcomitrella patens</option>
+                    <option value="Populus trichocarpa">Populus trichocarpa</option>
+                    <option value="Selaginella moellendorffii">Selaginella moellendorffii</option>
+                    <option value="Setaria italica">Setaria italica</option>
+                    <option value="Solanum lycopersicum">Solanum lycopersicum</option>
+                    <option value="Solanum tuberosum">Solanum tuberosum</option>
+                    <option value="Sorghum bicolor">Sorghum bicolor</option>
+                    <option value="Vitis vinifera">Vitis vinifera</option>
+                    <option value="Zea mays">Zea mays</option>
+                </param>
+            </when>
+            <when value="Metazoa">
+                <param name="species" type="select" label="The species to use for the gene annotation"
+                    help="">
+                    <option value="Acyrthosiphon pisum">Acyrthosiphon pisum</option>
+                    <option value="Aedes aegypti">Aedes aegypti</option>
+                    <option value="Amphimedon queenslandica">Amphimedon queenslandica</option>
+                    <option value="Anopheles darlingi">Anopheles darlingi</option>
+                    <option value="Anopheles gambiae">Anopheles gambiae</option>
+                    <option value="Apis mellifera">Apis mellifera</option>
+                    <option value="Atta cephalotes">Atta cephalotes</option>
+                    <option value="Bombyx mori">Bombyx mori</option>
+                    <option value="Brugia malayi">Brugia malayi</option>
+                    <option value="Caenorhabditis brenneri">Caenorhabditis brenneri</option>
+                    <option value="Caenorhabditis briggsae">Caenorhabditis briggsae</option>
+                    <option value="Caenorhabditis elegans">Caenorhabditis elegans</option>
+                    <option value="Caenorhabditis japonica">Caenorhabditis japonica</option>
+                    <option value="Caenorhabditis remanei">Caenorhabditis remanei</option>
+                    <option value="Culex quinquefasciatus">Culex quinquefasciatus</option>
+                    <option value="Danaus plexippus">Danaus plexippus</option>
+                    <option value="Daphnia pulex">Daphnia pulex</option>
+                    <option value="Drosophila ananassae">Drosophila ananassae</option>
+                    <option value="Drosophila erecta">Drosophila erecta</option>
+                    <option value="Drosophila grimshawi">Drosophila grimshawi</option>
+                    <option value="Drosophila melanogaster">Drosophila melanogaster</option>
+                    <option value="Drosophila mojavensis">Drosophila mojavensis</option>
+                    <option value="Drosophila persimilis">Drosophila persimilis</option>
+                    <option value="Drosophila pseudoobscura">Drosophila pseudoobscura</option>
+                    <option value="Drosophila sechellia">Drosophila sechellia</option>
+                    <option value="Drosophila simulans">Drosophila simulans</option>
+                    <option value="Drosophila virilis">Drosophila virilis</option>
+                    <option value="Drosophila willistoni">Drosophila willistoni</option>
+                    <option value="Drosophila yakuba">Drosophila yakuba</option>
+                    <option value="Heliconius melpomene">Heliconius melpomene</option>
+                    <option value="Ixodes scapularis">Ixodes scapularis</option>
+                    <option value="Loa loa">Loa loa</option>
+                    <option value="Megaselia scalaris">Megaselia scalaris</option>
+                    <option value="Nasonia vitripennis">Nasonia vitripennis</option>
+                    <option value="Nematostella vectensis">Nematostella vectensis</option>
+                    <option value="Pediculus humanus">Pediculus humanus</option>
+                    <option value="Pristionchus pacificus">Pristionchus pacificus</option>
+                    <option value="Schistosoma mansoni">Schistosoma mansoni</option>
+                    <option value="Strigamia maritima">Strigamia maritima</option>
+                    <option value="Strongylocentrotus purpuratus">Strongylocentrotus purpuratus</option>
+                    <option value="Tribolium castaneum">Tribolium castaneum</option>
+                    <option value="Trichinella spiralis">Trichinella spiralis</option>
+                    <option value="Trichoplax adhaerens">Trichoplax adhaerens</option>
+                </param>
+            </when>
+            <when value="Fungi">
+                <param name="species" type="select" label="The species to use for the gene annotation"
+                    help="">
+                    <option value="Ashbya gossypii">Ashbya gossypii</option>
+                    <option value="Aspergillus clavatus">Aspergillus clavatus</option>
+                    <option value="Aspergillus flavus">Aspergillus flavus</option>
+                    <option value="Aspergillus fumigatus">Aspergillus fumigatus</option>
+                    <option value="Aspergillus fumigatusa1163">Aspergillus fumigatusa1163</option>
+                    <option value="Aspergillus nidulans">Aspergillus nidulans</option>
+                    <option value="Aspergillus niger">Aspergillus niger</option>
+                    <option value="Aspergillus oryzae">Aspergillus oryzae</option>
+                    <option value="Aspergillus terreus">Aspergillus terreus</option>
+                    <option value="Botryotinia fuckeliana">Botryotinia fuckeliana</option>
+                    <option value="Cryptococcus neoformans">Cryptococcus neoformans</option>
+                    <option value="Fusarium oxysporum">Fusarium oxysporum</option>
+                    <option value="Gaeumannomyces graminis">Gaeumannomyces graminis</option>
+                    <option value="Gibberella moniliformis">Gibberella moniliformis</option>
+                    <option value="Gibberella zeae">Gibberella zeae</option>
+                    <option value="Glomerella graminicola">Glomerella graminicola</option>
+                    <option value="Komagataella pastoris">Komagataella pastoris</option>
+                    <option value="Leptosphaeria maculans">Leptosphaeria maculans</option>
+                    <option value="Magnaporthe oryzae">Magnaporthe oryzae</option>
+                    <option value="Magnaporthe poae">Magnaporthe poae</option>
+                    <option value="Melampsora larici-populina">Melampsora larici-populina</option>
+                    <option value="Nectria haematococca">Nectria haematococca</option>
+                    <option value="Neosartorya fischeri">Neosartorya fischeri</option>
+                    <option value="Neurospora crassa">Neurospora crassa</option>
+                    <option value="Phaeosphaeria nodorum">Phaeosphaeria nodorum</option>
+                    <option value="Puccinia graminis">Puccinia graminis</option>
+                    <option value="Puccinia triticina">Puccinia triticina</option>
+                    <option value="Pyrenophora teres">Pyrenophora teres</option>
+                    <option value="Pyrenophora tritici-repentis">Pyrenophora tritici-repentis</option>
+                    <option value="Saccharomyces cerevisiae">Saccharomyces cerevisiae</option>
+                    <option value="Schizosaccharomyces pombe">Schizosaccharomyces pombe</option>
+                    <option value="Sclerotinia sclerotiorum">Sclerotinia sclerotiorum</option>
+                    <option value="Sporisorium reilianum">Sporisorium reilianum</option>
+                    <option value="Trichoderma reesei">Trichoderma reesei</option>
+                    <option value="Trichoderma virens">Trichoderma virens</option>
+                    <option value="Tuber melanosporum">Tuber melanosporum</option>
+                    <option value="Ustilago maydis">Ustilago maydis</option>
+                    <option value="Yarrowia lipolytica">Yarrowia lipolytica</option>
+                    <option value="Zymoseptoria tritici">Zymoseptoria tritici</option>
+                </param>
+            </when>
+            <when value="Vertebrates">
+                <param name="species" type="select" label="The species to use for the gene annotation"
+                    help="">
+                    <option value="Ailuropoda melanoleuca">Ailuropoda melanoleuca</option>
+                    <option value="Anolis carolinensis">Anolis carolinensis</option>
+                    <option value="Bos taurus">Bos taurus</option>
+                    <option value="Caenorhabditis elegans">Caenorhabditis elegans</option>
+                    <option value="Callithrix jacchus">Callithrix jacchus</option>
+                    <option value="Canis familiaris">Canis familiaris</option>
+                    <option value="Cavia porcellus">Cavia porcellus</option>
+                    <option value="Choloepus hoffmanni">Choloepus hoffmanni</option>
+                    <option value="Ciona intestinalis">Ciona intestinalis</option>
+                    <option value="Ciona savignyi">Ciona savignyi</option>
+                    <option value="Danio rerio">Danio rerio</option>
+                    <option value="Dasypus novemcinctus">Dasypus novemcinctus</option>
+                    <option value="Dipodomys ordii">Dipodomys ordii</option>
+                    <option value="Drosophila melanogaster">Drosophila melanogaster</option>
+                    <option value="Echinops telfairi">Echinops telfairi</option>
+                    <option value="Equus caballus">Equus caballus</option>
+                    <option value="Erinaceus europaeus">Erinaceus europaeus</option>
+                    <option value="Felis catus">Felis catus</option>
+                    <option value="Gallus gallus">Gallus gallus</option>
+                    <option value="Gasterosteus aculeatus">Gasterosteus aculeatus</option>
+                    <option value="Gorilla gorilla">Gorilla gorilla</option>
+                    <option value="Homo sapiens">Homo sapiens</option>
+                    <option value="Ictidomys tridecemlineatus">Ictidomys tridecemlineatus</option>
+                    <option value="Latimeria chalumnae">Latimeria chalumnae</option>
+                    <option value="Loxodonta africana">Loxodonta africana</option>
+                    <option value="Macaca mulatta">Macaca mulatta</option>
+                    <option value="Macropus eugenii">Macropus eugenii</option>
+                    <option value="Meleagris gallopavo">Meleagris gallopavo</option>
+                    <option value="Microcebus murinus">Microcebus murinus</option>
+                    <option value="Monodelphis domestica">Monodelphis domestica</option>
+                    <option value="Mus musculus">Mus musculus</option>
+                    <option value="Mustela putorius furo">Mustela putorius furo</option>
+                    <option value="Myotis lucifugus">Myotis lucifugus</option>
+                    <option value="Nomascus leucogenys">Nomascus leucogenys</option>
+                    <option value="Ochotona princeps">Ochotona princeps</option>
+                    <option value="Oreochromis niloticus">Oreochromis niloticus</option>
+                    <option value="Ornithorhynchus anatinus">Ornithorhynchus anatinus</option>
+                    <option value="Oryctolagus cuniculus">Oryctolagus cuniculus</option>
+                    <option value="Oryzias latipes">Oryzias latipes</option>
+                    <option value="Otolemur garnettii">Otolemur garnettii</option>
+                    <option value="Pan troglodytes">Pan troglodytes</option>
+                    <option value="Petromyzon marinus">Petromyzon marinus</option>
+                    <option value="Pelodiscus sinensis">Pelodiscus sinensis</option>
+                    <option value="Pongo abelii">Pongo abelii</option>
+                    <option value="Procavia capensis">Procavia capensis</option>
+                    <option value="Pteropus vampyrus">Pteropus vampyrus</option>
+                    <option value="Rattus norvegicus">Rattus norvegicus</option>
+                    <option value="Saccharomyces cerevisiae">Saccharomyces cerevisiae</option>
+                    <option value="Sarcophilus harrisii">Sarcophilus harrisii</option>
+                    <option value="Sorex araneus">Sorex araneus</option>
+                    <option value="Sus scrofa">Sus scrofa</option>
+                    <option value="Taeniopygia guttata">Taeniopygia guttata</option>
+                    <option value="Takifugu rubripes">Takifugu rubripes</option>
+                    <option value="Tarsius syrichta">Tarsius syrichta</option>
+                    <option value="Tetraodon nigroviridis">Tetraodon nigroviridis</option>
+                    <option value="Tupaia belangeri">Tupaia belangeri</option>
+                    <option value="Tursiops truncatus">Tursiops truncatus</option>
+                    <option value="Vicugna pacos">Vicugna pacos</option>
+                    <option value="Xenopus tropicalis">Xenopus tropicalis</option>
+                    <option value="Xiphophorus maculatus">Xiphophorus maculatus</option>
+                </param>
+            </when>
+        </conditional>
+
+        <param name="missed_cleavages" type="integer" value="2" label="Maximum Missed Cleavages"
+            help="Allow peptides to contain up to this many missed enzyme cleavage sites."/>
+        <param name="fixed_modifications" type="select" label="Fixed Modifications" multiple="true"
+            help="Occurs in known places on peptide sequence. Hold the appropriate key while clicking to select multiple items">
+            <options from_file="searchgui_mods.loc">
+                <column name="name" index="0" />
+                <column name="value" index="0" />
+            </options>
+        </param>
+        <param name="variable_modifications" type="select" label="Variable Modifications" multiple="true" 
+            help="Can occur anywhere on the peptide sequence; adds additional error to search score. Hold the appropriate key while clicking to select multiple items">
+            <options from_file="searchgui_mods.loc">
+                <column name="name" index="0" />
+                <column name="value" index="0" />
+            </options>
+        </param>
+        <param name="min_charge" label="Minimum Charge" value="2" type="integer" help="Lowest searched charge value for fragment ions"/>
+        <param name="max_charge" label="Maximum Charge" value="4" type="integer" help="Highest searched charge value for fragment ions"/>
+        <param name="forward_ion" label="Forward Ion" type="select" help="Searched fragment ion type. Select a, b or c based on collisions induced in experiment">
+            <option value="a">a</option>
+            <option value="b" selected="true">b</option>
+            <option value="c">c</option>
+        </param>
+        <param name="reverse_ion" label="Reverse Ion" type="select" help="Searched fragment ion type. Select x, y, or z based on collisions induced in experiment">
+            <option value="x">x</option>
+            <option value="y" selected="true">y</option>
+            <option value="z">z</option>
+        </param>
+        <conditional name="advanced">
+            <param name="advanced_type_selector" type="select" label="Basic or Advanced Search options">
+                <option value="basic" selected="True">Basic</option>
+                <option value="advanced">Advanced</option>
+            </param>
+            <when value="basic" />
+            <when value="advanced">
+                <conditional name="xtandem">
+                    <param name="xtandem_selector" type="select" label="Run X!Tandem search">
+                        <option value="yes" selected="True">Search with X!Tandem</option>
+                        <option value="no">No X!Tandem search</option>
+                    </param>
+                    <when value="no" />
+                    <when value="yes">
+                        <param name="xtandem_npeaks" label="X!Tandem: Total Peaks" type="integer" value="50" help="Maximum number of peaks to be used from a spectrum"/>
+                        <param name="xtandem_min_peaks" label="X!Tandem: Min Peaks" type="integer" value="15" help="Minimum number of peaks required for a spectrum to be considered"/>
+                        <param name="xtandem_min_frag_mz" label="X!Tandem: Min Frag m/z" type="integer" value="200" help="Fragment mass peaks with m/z less than this value will be discarded"/>
+                        <param name="xtandem_min_prec_mass" label="X!Tandem: Min Precursor Mass" type="integer" value="200" help="Minimum mass of 1+ mass of parent ion to be considered"/>
+                        <param name="xtandem_noise_suppr" label="X!Tandem: Noise Suppression" type="boolean" checked="true" truevalue="1" falsevalue="0" help="Use noise suppression"/>
+
+                        <conditional name="xtandem_refine"><!-- -xtandem_refine -->
+                            <param name="xtandem_refine_selector" type="select" label="X!Tandem peptide model refinement">
+                                <option value="no" selected="True">Don't refine</option>
+                                <option value="yes" >Use refinement</option>
+                            </param>
+                            <when value="no"/>
+                            <when value="yes">
+                                <param name="xtandem_refine_unc" label="X!Tandem: Unanticipated cleavage, refinement" type="boolean" truevalue="1" falsevalue="0" help="Allow for unanticipated cleavage during refinement"/>
+                                <param name="xtandem_refine_semi" label="X!Tandem: Cleavage semi, refinement" type="boolean" truevalue="1" falsevalue="0" help="Search for semi-tryptic peptides during refinement"/>
+                                <param name="xtandem_refine_p_mut" label="X!Tandem: Point mutations, refinement" type="boolean" truevalue="1" falsevalue="0" help="Allow for point mutations during refinement"/>
+                                <param name="xtandem_refine_snaps" label="X!Tandem: snAPs, refinement" type="boolean" truevalue="1" falsevalue="0" help="Search for known single amino acid polymorphisms during refinement"/>
+                                <param name="xtandem_refine_spec_synt" label="X!Tandem: Spectrum synthesis, refinement" type="boolean" truevalue="1" falsevalue="0" help="Use spectrum synthesis scoring"/>
+                            </when>
+                        </conditional>
+                    </when>
+                </conditional>
+
+                <conditional name="omssa">
+                    <param name="omssa_selector" type="select" label="Run OMSSA search">
+                        <option value="yes" selected="True">Search with OMSSA</option>
+                        <option value="no">No OMSSA search</option>
+                    </param>
+                    <when value="no" />
+                    <when value="yes">
+                        <param name="hitlist_length" label="OMSSA: Hit List Length" type="integer" value="25" />
+                        <param name="remove_precursor" label="OMSSA: Remove Precurosr" type="boolean" truevalue="1" falsevalue="0" checked="true"/>
+                        <param name="scale_precursor" label="OMSSA: Scale Precursor Mass" type="boolean" truevalue="1" falsevalue="0" checked="false"/>
+                        <param name="estimate_charge" label="OMSSA: Estimate Charge" type="boolean" truevalue="1" falsevalue="0" checked="true" />
+                    </when>
+                </conditional>
+
+                <conditional name="msgf">
+                    <param name="msgf_selector" type="select" label="Run MSGF search">
+                        <option value="yes" selected="True">Search with MSGF</option>
+                        <option value="no">No MSGF search</option>
+                    </param>
+                    <when value="no" />
+                    <when value="yes">
+                        <param name="msgf_decoy" label="Search Decoys" type="boolean" truevalue="1" falsevalue="0" help="If yes then a decoy database will be generated and searched. Assumed input database contains no decoys"/>
+                        <param name="msgf_min_pep_length" label="Minimum Peptide Length" type="integer" value="6" help="Minimum length for a peptide to be considered"/>
+                        <param name="msgf_max_pep_length" label="Maximum Peptide Length" type="integer" value="30" help="Maximum length for a peptide to be considered"/>
+                        <param name="msgf_termini" label="Number of tolerable termini" type="select" format="text" help="Searches will take much longer if selecting a value other than 2">
+                            <option value="0">0 (ie non-specific cleavage)</option>
+                            <option value="1">1 (ie semi-tryptic cleavage)</option>
+                            <option value="2" selected="true">2 (ie fully-tryptic cleavage)</option>
+                        </param>
+                        <param name="msgf_num_ptms" label="Max PTMs per peptide" type="integer" value="2"/>
+                    </when>
+                </conditional>
+
+                <conditional name="ms_amanda">
+                    <param name="ms_amanda_selector" type="select" label="Run MS Amanda search">
+                        <option value="yes">Search with MS Amanda</option>
+                        <option value="no" selected="True">No MS Amanda search</option>
+                    </param>
+                    <when value="no" />
+                    <when value="yes">
+                    </when>
+                </conditional>
+            </when>
+        </conditional>
+        <conditional name="processing_options">
+            <param name="processing_options_selector" type="select" label="Specify Advanced PeptideShaker Processing Options">
+                <option value="no" selected="True">Default Processing Options</option>
+                <option value="yes">Advanced Processing Options</option>
+            </param>
+            <when value="no" />
+            <when value="yes">
+                <param name="protein_fdr" label="FDR at the protein level" help="In percent (default 1% FDR: '1')" value="1" type="float" />
+                <param name="peptide_fdr" label="FDR at the peptide level" help="In percent (default 1% FDR: '1')" value="1" type="float" />
+                <param name="psm_fdr" label="FDR at the PSM level" help="In percent (default 1% FDR: '1')" value="1" type="float" />
+                <param name="protein_fraction_mw_confidence" label="Minimum confidence required for a protein in the fraction MW plot" value="" type="float"
+                    help="default 95%: '95.0'" />
+                <conditional name="ptm_score">
+                    <param name="ptm_score_selector" type="select" label="The PTM probabilistic score to use for PTM localization">
+                        <option value="0" selected="True">A-score</option>
+                        <option value="1">PhosphoRS</option>
+                    </param>
+                    <when value="0" />
+                    <when value="1">
+                        <param name="score_neutral_losses" label="Include Neutral Losses in A Score" type="boolean" truevalue="1" falsevalue="0" />
+                        <param name="ptm_threshold" label="The threshold to use for the PTM scores" value="" type="float"
+                            help="Automatic mode will be used if not set" />
+                    </when>
+                </conditional>
+                <!-- SKIPPING -protein_fraction_mw_confidence ${processing_options.protein_fraction_mw_confidence} -->
+            </when>
+        </conditional>
+        <conditional name="filtering_options">
+            <param name="filtering_options_selector" type="select" label="Specify Advanced Filtering Options"
+                help="Filter based on peptide lengths, precursor mass error, E value errors from X! Tandem and OMSSA, and include/exclude unknown PTM’s">
+                <option value="no" selected="True">Default Filtering Options</option>
+                <option value="yes">Advanced Processing Options</option>
+            </param>
+            <when value="no" />
+            <when value="yes">
+                <param name="min_peptide_length" label="Minimum Peptide Length" value="6" type="integer" />
+                <param name="max_peptide_length" label="Maximum Peptide Length" value="30" type="integer" />
+                <param name="max_precursor_error" label="Maximum Precursor Error" value="10" type="float" help="Next option specifies units (Da or ppm)" />
+                <param name="max_precursor_error_type" label="Maximum Precursor Error Type" type="select">
+                    <option value="0">ppm</option>
+                    <option value="1">Daltons</option>
+                </param>
+                <param name="max_xtandem_e" label="Maximum X! Tandem e-value" value="100" type="float" help="" />
+                <param name="max_omssa_e" label="Maximum OMSSA e-value" value="100" type="float" help="" />
+                <param name="max_mascot_e" label="Maximum Mascot e-value filter" value="100" type="float" help="" />
+                <param name="exclude_unknown_ptms" label="Exclude Unknown PTMs" type="boolean" truevalue="1" falsevalue="0" checked="true" />
+            </when>
+        </conditional>
+
+        <param name="outputs" type="select" display="checkboxes" multiple="True" label="Output options">
+            <option value="mzidentML" selected="True">mzidentML File</option>
+            <option value="3" selected="True">Peptide Report</option>
+            <option value="4" selected="True">Protein Report</option>
+            <option value="2">PSM Report</option>
+            <option value="0">Certificate of Analysis</option>
+            <option value="1">Hierarchical Report</option>
+            <option value="cps">CPS file</option>
+            <validator type="no_options" message="Please select at least one output file" />
+        </param>
+    </inputs>
+    <outputs>
+        <data format="mzid" name="mzidentML" from_work_dir="output.mzid" label="${tool.name} on ${on_string}: mzidentML file">
+            <filter>'mzidentML' in outputs</filter>
+        </data>
+        <data format="cps" name="output" from_work_dir="peptide_shaker_output.cps" label="${tool.name} on ${on_string}: CPS file">
+            <filter>'cps' in outputs</filter>
+        </data>
+        <data format="txt" name="output_certificate" from_work_dir="certificate.txt" label="${tool.name} on ${on_string}: Parameters">
+            <filter>'0' in outputs</filter>
+        </data>
+        <data format="tabular" name="output_psm" from_work_dir="psm.txt" label="${tool.name} on ${on_string}: PSM Report">
+            <filter>'2' in outputs</filter>
+        </data>
+        <data format="tabular" name="output_peptides" from_work_dir="peptides.txt" label="${tool.name} on ${on_string}: Peptide Report">
+            <filter>'3' in outputs</filter>
+        </data>
+        <data format="tabular" name="output_proteins" from_work_dir="proteins.txt" label="${tool.name} on ${on_string}: Protein Report">
+            <filter>'4' in outputs</filter>
+        </data>
+        <data format="tabular" name="output_hierarchical" from_work_dir="hierarchical.txt" label="${tool.name} on ${on_string}: Hierarchical Report">
+            <filter>'1' in outputs</filter>
+        </data>
+    </outputs>
+    <tests>
+        <test>
+            <param name="input_database" value="tinydb.fasta"/>
+            <param name="peak_lists" value="tinyspectra.mgf"/>
+            <param name="precursor_ion_tol" value="100"/>
+            <param name="fixed_modifications" value="carbamidomethyl c"/>
+            <param name="variable_modifications" value="oxidation of m"/>
+            <param name="min_charge" value="1"/>
+            <param name="max_charge" value="3"/>
+            <param name="advanced_type_selector" value="advanced"/>
+            <param name="species_type_selector" value="no_species_type"/>
+            <param name="processing_options_selector" value="no"/>
+            <param name="filtering_options_selector" value="no"/>
+            <!--param name="xtandem_selector" value="no"/>-->
+            <param name="xtandem_selector" value="yes"/>
+            <param name="xtandem_selector.xtandem_refine_selector" value="yes"/>
+
+            <param name="omssa_selector" value="no"/>
+            <param name="msgf_selector" value="yes"/>
+            <param name="ms_amanda_selector" value="no"/>
+            
+            <output name="output" file="tinyoutput.cps" compare="sim_size" delta="600" /> 
+        </test>
+    </tests>
+    <help>
+**What it does**
+
+Runs multiple search engines (X! Tandem, OMSSA and MS-GF+) on any number of MGF peak lists using the SearchGUI application and combines the results.
+
+https://code.google.com/p/peptide-shaker/
+
+https://code.google.com/p/searchgui/
+
+----
+
+Reports
+=======
+
+
+PSM Report
+----------
+
+* Protein(s):                Protein(s) to which the peptide can be attached
+* Sequence:	                Sequence of the peptide
+* Variable Modifications:	The variable modifications
+* D-score:	                D-score for variable PTM localization
+* probabilistic PTM score:	The probabilistic score (e.g. A-score or PhosphoRS) used for variable PTM localization.
+* Localization Confidence:	The confidence in variable PTM localization.
+* Fixed Modifications:	    The fixed modifications.
+* Spectrum File:	The spectrum file.
+* Spectrum Title:	The title of the spectrum.
+* Spectrum Scan Number:	The spectrum scan number.
+* RT:	Retention time
+* m/z:	Measured m/z
+* Measured Charge:	The charge as given in the spectrum file.
+* Identification Charge:	The charge as inferred by the search engine.
+* Theoretical Mass:	The theoretical mass of the peptide.
+* Isotope Number:	The isotope number targetted by the instrument.
+* Precursor m/z Error:	The precursor m/z matching error.
+* Score:	Score of the retained peptide as a combination of the algorithm scores (used to rank PSMs).
+* Confidence:	Confidence in percent associated to the retained PSM.
+* Decoy:	Indicates whether the peptide is a decoy (1: yes, 0: no).
+* Validation: Indicates the validation level of the protein group.
+
+
+Protein Report
+--------------
+
+* Main Accession:	Main accession of the protein group.
+* Description:	Description of the protein designed by the main accession.
+* Gene Name:	The gene names of the Ensembl gene ID associated to the main accession.
+* Chromosome:	The chromosome of the Ensembl gene ID associated to the main accession.
+* PI:	Protein Inference status of the protein group.
+* Secondary Accessions:	Other accessions in the protein group (alphabetical order).
+* Protein Group:	The complete protein group (alphabetical order).
+* #Peptides:	Total number of peptides.
+* #Validated Peptides:	Number of validated peptides.
+* #Unique:	Total number of peptides unique to this protein group.
+* #PSMs:	Number of PSMs
+* #Validated PSMs:	Number of validated PSMs
+* Coverage (%):	Sequence coverage in percent of the protein designed by the main accession.
+* Possible Coverage (%):	Possible sequence coverage in percent of the protein designed by the main accession according to the search settings.
+* MW (kDa):	Molecular Weight.
+* Spectrum Counting NSAF: 	Normalized Spectrum Abundance Factor (NSAF)
+* Spectrum Counting emPAI:	exponentially modified Protein Abundance Index (emPAI)
+* Confident Modification Sites: Number of Confident Modification Sites	List of the sites where a variable modification was confidently localized.
+* Other Modification Sites: Number of other Modification Sites	List of the non*confident sites where a variable modification was localized.
+* Score:	Score of the protein group.
+* Confidence:	Confidence in percent associated to the protein group.
+* Decoy:	Indicates whether the protein group is a decoy (1: yes, 0: no).
+* Validation:	Indicates the validation level of the protein group.
+
+
+Peptide Report
+--------------
+
+
+* Protein(s):	Protein(s) to which this peptide can be attached.
+* AAs Before:	The amino-acids before the sequence.
+* Sequence:	Sequence of the peptide.
+* AAs After:	The amino-acids after the sequence.
+* Modified Sequence:	The peptide sequence annotated with variable modifications.
+* Variable Modifications:	The variable modifications.
+* Localization Confidence:	The confidence in PTMs localization.
+* Fixed Modifications:	The fixed modifications.
+* #Validated PSMs:	Number of validated PSMs.
+* #PSMs:	Number of PSMs.
+* Score:	Score of the peptide.
+* Confidence:	Confidence in percent associated to the peptide.
+* Decoy:	Indicates whether the peptide is a decoy (1: yes, 0: no).
+* Validation:	Indicates the validation level of the protein group.
+
+
+Hierachical Report
+------------------
+
+* Main Accession:	Main accession of the protein group.
+* Description:	Description of the protein designed by the main accession.
+* PI:	Protein Inference status of the protein group.
+* Secondary Accessions:	Other accessions in the protein group (alphabetical order).
+* Protein Group:	The complete protein group (alphabetical order).
+* #Peptides:	Total number of peptides.
+* #Validated Peptides:	Number of validated peptides.
+* #Unique:	Total number of peptides unique to this protein group.
+* #PSMs:	Number of PSMs
+* #Validated PSMs:	Number of validated PSMs
+* Coverage (%):	Sequence coverage in percent of the protein designed by the main accession.
+* Possible Coverage (%):	Possible sequence coverage in percent of the protein designed by the main accession according to the search settings.
+* MW (kDa):	Molecular Weight.
+* Spectrum Counting NSAF: 	Normalized Spectrum Abundance Factor (NSAF)
+* Spectrum Counting emPAI:	exponentially modified Protein Abundance Index (emPAI)
+* Confident Modification Sites: # Confident Modification Sites	List of the sites where a variable modification was confidently localized.
+* Other Modification Sites: # Other Modification Sites	List of the non-confident sites where a variable modification was localized.
+* Score:	Score of the protein group.
+* Confidence:	Confidence in percent associated to the protein group.
+* Decoy:	Indicates whether the protein group is a decoy (1: yes, 0: no).
+* Validation:	Indicates the validation level of the protein group.
+* Protein(s):	Protein(s) to which this peptide can be attached.
+* AAs Before:	The amino-acids before the sequence.
+* Sequence:	Sequence of the peptide.
+* AAs After:	The amino-acids after the sequence.
+* Variable Modifications:	The variable modifications.
+* Localization Confidence:	The confidence in PTMs localization.
+* Fixed Modifications:	The fixed modifications.
+* #Validated PSMs:	Number of validated PSMs.
+* #PSMs:	Number of PSMs.
+* Score:	Score of the peptide.
+* Confidence:	Confidence in percent associated to the peptide.
+* Decoy:	Indicates whether the peptide is a decoy (1: yes, 0: no).
+* Validation:	Indicates the validation level of the protein group.
+* Protein(s):	Protein(s) to which the peptide can be attached.
+* Sequence:	Sequence of the peptide.
+* Modified Sequence:	The peptide sequence annotated with variable modifications.
+* Variable Modifications:	The variable modifications.
+* D-score:	D-score for variable PTM localization.
+* probabilistic PTM score:	The probabilistic score (e.g. A-score or PhosphoRS) used for variable PTM localization.
+* Localization Confidence:	The confidence in variable PTM localization.
+* Fixed Modifications:	The fixed modifications.
+* Spectrum File:	The spectrum file.
+* Spectrum Title:	The title of the spectrum.
+* Spectrum Scan Number:	The spectrum scan number.
+* RT:	Retention time
+* m/z:	Measured m/z
+* Measured Charge:	The charge as given in the spectrum file.
+* Identification Charge:	The charge as inferred by the search engine.
+* Theoretical Mass:	The theoretical mass of the peptide.
+* Isotope Number:	The isotope number targetted by the instrument.
+* Precursor m/z Error:	The precursor m/z matching error.
+* Score:	Score of the retained peptide as a combination of the algorithm scores (used to rank PSMs).
+* Confidence:	Confidence in percent associated to the retained PSM.
+* Decoy:	Indicates whether the peptide is a decoy (1: yes, 0: no).
+* Validation:	Indicates the validation level of the protein group.
+
+
+
+
+------
+
+**Citation**
+
+To cite the underlying tools (PeptideShaker and SearchGUI) please refer to the list of papers at http://peptide-shaker.googlecode.com  
+
+If you use this tool in Galaxy, please cite Chilton J, Ira Cooke, Bjoern Gruening et al. https://bitbucket.org/galaxyp/peptideshaker
+    </help>
+</tool>