changeset 8:0aa9d080713e

Update for ProteinPilot version 5.0
author Jim Johnson <jj@umn.edu>
date Thu, 05 Nov 2015 13:15:48 -0600
parents ffbfff887a03
children 8935cf27e8fd
files README.md convert_windows_newlines.xml proteinpilot.xml proteinpilot_group_extractor.xml proteinpilot_tabular.xml proteinpilot_xml.xml
diffstat 6 files changed, 394 insertions(+), 211 deletions(-) [+]
line wrap: on
line diff
--- a/README.md	Mon Oct 20 15:54:33 2014 -0500
+++ b/README.md	Thu Nov 05 13:15:48 2015 -0600
@@ -1,7 +1,7 @@
 GalaxyP - ProteinPilot
 ======================
 
-* Home: <https://bitbucket.org/galaxyp/proteinpilot>
+* Home: <https://github.com/galaxyproteomics/tools-galaxyp/>
 * Galaxy Tool Shed: <http://toolshed.g2.bx.psu.edu/view/galaxyp/proteinpilot>
 * Tool ID: `proteinpilot`
 
@@ -19,9 +19,9 @@
 GalaxyP Community
 -----------------
 
-Current governing community policies for [GalaxyP](https://bitbucket.org/galaxyp/) and other information can be found at:
+Current governing community policies for [GalaxyP](https://github.com/galaxyproteomics/) and other information can be found at:
 
-<https://bitbucket.org/galaxyp/galaxyp>
+<https://github.com/galaxyproteomics>
 
 
 License
@@ -39,7 +39,7 @@
 Contributing
 ------------
 
-Contributions to this repository are reviewed through pull requests. If you would like your work acknowledged, please also add yourself to the Authors section. If your pull request is accepted, you will also be acknowledged in <https://bitbucket.org/galaxyp/galaxyp/CONTRIBUTORS.md> unless you opt-out.
+Contributions to this repository are reviewed through pull requests. If you would like your work acknowledged, please also add yourself to the Authors section. If your pull request is accepted, you will also be acknowledged in <https://github.com/galaxyproteomics/tools-galaxyp/>
 
 
 Authors
@@ -49,4 +49,5 @@
 
 * Cody Wang
 * John Chilton <jmchilton@gmail.com>
+* James Johnson <jj@umn.edu>
 * Minnesota Supercomputing Institute, Univeristy of Minnesota
--- a/convert_windows_newlines.xml	Mon Oct 20 15:54:33 2014 -0500
+++ b/convert_windows_newlines.xml	Thu Nov 05 13:15:48 2015 -0600
@@ -1,15 +1,17 @@
 <tool id="convert_windows_newlines" version="0.1" name="ProteinPilot - Convert Windows Line Breaks">
-  <description></description>
-  <command>
-     tr -d '\r' &lt; $input1  &gt; $output
-  </command>
-  <inputs>
-    <param format="txt" name="input1" type="data" label="Tabular Input File" help=""/>
-  </inputs>
-  <outputs>
-    <data name="output" format="input" metadata_source="input1"/>
-  </outputs>
-  <help>
-    Standardize the output of Windows tools like "Convert ProteinPilot Group to Tabular" for use in Galaxy.
-  </help>
+    <description></description>
+    <command>
+<![CDATA[
+     tr -d '\r' < $input1 > $output
+]]>
+    </command>
+    <inputs>
+        <param format="txt" name="input1" type="data" label="Tabular Input File" help=""/>
+    </inputs>
+    <outputs>
+        <data name="output" format_source="input" metadata_source="input1"/>
+    </outputs>
+    <help>
+        Standardize the output of Windows tools like "Convert ProteinPilot Group to Tabular" for use in Galaxy.
+    </help>
 </tool>
--- a/proteinpilot.xml	Mon Oct 20 15:54:33 2014 -0500
+++ b/proteinpilot.xml	Thu Nov 05 13:15:48 2015 -0600
@@ -1,199 +1,205 @@
-<tool id="proteinpilot" version="0.2.1" name="ProteinPilot">
-  <description></description>
-  <!-- ESCAPE input and database name -->
-  <configfiles>
-    <configfile name="input_config">## Describe input groups
+<tool id="proteinpilot" name="ProteinPilot" version="5.0.0">
+    <description></description>
+    <!-- ESCAPE input and database name -->
+    <command interpreter="python">
+<![CDATA[
+        proteinpilot_wrapper.py
+            --input_config="$input_config"
+            --database="${database}"
+            --database_name="${database.display_name}"
+            --output=$output
+            --output_methods=$output_methods
+            --sample_type="$sample_type"
+            --quantitative=$quantitative
+            --bias_correction=$bias_correction
+            --background_correction=$background_correction
+            --cys_alkylation="$cys_alkylation"
+            --digestion="$digestion"
+            --instrument="$instrument"
+            --search_effort=$search_effort
+            --pspep=$pspep
+            #if $pspep
+                --output_pspep_report=$output_pspep_report
+            #end if
+                --min_unused_protscore=$min_unused_protscore
+            #if $factors.factors_use
+                --special_factors="$factors.special_factors"
+            #else
+                --special_factors=""
+            #end if
+            --search_foci="$search_foci"
+]]>
+    </command>
+    <configfiles>
+        <configfile name="input_config">## Describe input groups
 group:DEFAULT_GROUP
 #for $input in $inputs:
 name:${input.display_name}
 path:${input}
 #end for
-</configfile>
-  </configfiles>  
-  <command interpreter="python">proteinpilot_wrapper.py 
-    --input_config="$input_config"
-    --database="${database}"
-    --database_name="${database.display_name}"
-    --output=$output
-    --output_methods=$output_methods
-    --sample_type="$sample_type"
-    --quantitative=$quantitative
-    --bias_correction=$bias_correction
-    --background_correction=$background_correction
-    --cys_alkylation="$cys_alkylation"
-    --digestion="$digestion"
-    --instrument="$instrument"
-    --search_effort=$search_effort
-    --pspep=$pspep
-    #if $pspep
-    --output_pspep_report=$output_pspep_report
-    #end if
-    --min_unused_protscore=$min_unused_protscore
-    #if $factors.factors_use
-    --special_factors="$factors.special_factors"
-    #else
-    --special_factors=""
-    #end if 
-    --search_foci="$search_foci"
-  </command>
-  <inputs>
-    <param format="mgf" multiple="true" name="inputs" type="data" label="Peaklist (MGF)" help="" />
-    <param type="select" name="sample_type" label="Sample Type">
-      <option value="Identification">Identification</option>
-      <option value="iTRAQ 4plex (Peptide Labeled)">iTRAQ 4plex (Peptide Labeled)</option>
-      <option value="iTRAQ 4plex (Protein Labeled)">iTRAQ 4plex (Protein Labeled)</option>
-      <option value="iTRAQ 8plex (Peptide Labeled)">iTRAQ 8plex (Peptide Labeled)</option>
-      <option value="iTRAQ 8plex (Protein Labeled)">iTRAQ 8plex (Protein Labeled)</option>
-      <option value="TMT6plex ID-only (Peptide Labeled)">TMT6plex ID-only (Peptide Labeled)</option>
-      <option value="TMT6plex ID-only (Protein Labeled)">TMT6plex ID-only (Protein Labeled)</option>
-      <option value="TMT2plex ID-only (Peptide Labeled)">TMT2plex ID-only (Peptide Labeled)</option>
-      <option value="TMT ID-only (Peptide Labeled)">TMT ID-only (Peptide Labeled)</option>
-      <option value="mTRAQ (Peptide Labeled - M00, M04)">mTRAQ (Peptide Labeled - M00, M04)</option>
-      <option value="mTRAQ (Peptide Labeled - M00, M08)">mTRAQ (Peptide Labeled - M00, M08)</option>
-      <option value="mTRAQ (Peptide Labeled - M04, M08)">mTRAQ (Peptide Labeled - M04, M08)</option>
-      <option value="mTRAQ (Peptide Labeled - M00, M04, M08)">mTRAQ (Peptide Labeled - M00, M04, M08)</option>
-      <option value="SILAC (Lys+6, Arg+6)">SILAC (Lys+6, Arg+6)</option>
-      <option value="SILAC (Lys+4, Arg+10)">SILAC (Lys+4, Arg+10)</option>
-      <option value="SILAC (Lys+6, Arg+10)">SILAC (Lys+6, Arg+10)</option>
-      <option value="SILAC (Lys+8, Arg+10)">SILAC (Lys+8, Arg+10)</option>
-      <option value="SILAC (Lys+8, Arg+10, Glu+6, Asp+5)">SILAC (Lys+8, Arg+10, Glu+6, Asp+5)</option>
-      <!-- TODO: Add remaining SILAC options. -->
-      <option value="RABA +0,+6 (Peptide Labeled)">RABA +0,+6 (Peptide Labeled)</option>
-      <option value="Dimethyl +0,+4 (Peptide Labeled)">Dimethyl +0,+4 (Peptide Labeled)</option>
-      <option value="Dimethyl +0,+6 (Peptide Labeled)">Dimethyl +0,+6 (Peptide Labeled)</option>
-      <option value="Dimethyl +0,+8 (Peptide Labeled)">Dimethyl +0,+8 (Peptide Labeled)</option>
-      <option value="Dimethyl +0,+4,+8 (Peptide Labeled)">Dimethyl +0,+4,+8 (Peptide Labeled)</option>
-      <option value="Proteolytic O-18 labeling">Proteolytic O-18 labeling</option>
-      <option value="Cleavable ICAT">Cleavable ICAT</option>
-      <option value="ICPL Light, Heavy (Peptide Labeled)">ICPL Light, Heavy (Peptide Labeled)</option>
-      <option value="ICPL Light, Heavy (Protein Labeled)">ICPL Light, Heavy (Protein Labeled)</option>
-      <!-- TODO: Handle additional mTRAQ and iTRAQ options. 
-      handle TMT (doesn't seem like UI lets quantatate these)
-      <UI_SAMPLE_TYPE>TMT6plex ID-only (Peptide Labeled)</UI_SAMPLE_TYPE>
-      <UI_QUANT_TYPE></UI_QUANT_TYPE>
-      
-      <UI_SAMPLE_TYPE></UI_SAMPLE_TYPE>
-      <UI_QUANT_TYPE></UI_QUANT_TYPE>
+        </configfile>
+    </configfiles>
+    <inputs>
+        <param format="mgf" multiple="true" name="inputs" type="data" label="Peaklist (MGF)" help="" />
+        <param type="select" name="sample_type" label="Sample Type">
+            <option value="Identification">Identification</option>
+            <option value="iTRAQ 4plex (Peptide Labeled)">iTRAQ 4plex (Peptide Labeled)</option>
+            <option value="iTRAQ 4plex (Protein Labeled)">iTRAQ 4plex (Protein Labeled)</option>
+            <option value="iTRAQ 8plex (Peptide Labeled)">iTRAQ 8plex (Peptide Labeled)</option>
+            <option value="iTRAQ 8plex (Protein Labeled)">iTRAQ 8plex (Protein Labeled)</option>
+            <option value="TMT6plex ID-only (Peptide Labeled)">TMT6plex ID-only (Peptide Labeled)</option>
+            <option value="TMT6plex ID-only (Protein Labeled)">TMT6plex ID-only (Protein Labeled)</option>
+            <option value="TMT2plex ID-only (Peptide Labeled)">TMT2plex ID-only (Peptide Labeled)</option>
+            <option value="TMT ID-only (Peptide Labeled)">TMT ID-only (Peptide Labeled)</option>
+            <option value="mTRAQ (Peptide Labeled - M00, M04)">mTRAQ (Peptide Labeled - M00, M04)</option>
+            <option value="mTRAQ (Peptide Labeled - M00, M08)">mTRAQ (Peptide Labeled - M00, M08)</option>
+            <option value="mTRAQ (Peptide Labeled - M04, M08)">mTRAQ (Peptide Labeled - M04, M08)</option>
+            <option value="mTRAQ (Peptide Labeled - M00, M04, M08)">mTRAQ (Peptide Labeled - M00, M04, M08)</option>
+            <option value="SILAC (Lys+6, Arg+6)">SILAC (Lys+6, Arg+6)</option>
+            <option value="SILAC (Lys+4, Arg+10)">SILAC (Lys+4, Arg+10)</option>
+            <option value="SILAC (Lys+6, Arg+10)">SILAC (Lys+6, Arg+10)</option>
+            <option value="SILAC (Lys+8, Arg+10)">SILAC (Lys+8, Arg+10)</option>
+            <option value="SILAC (Lys+8, Arg+10, Glu+6, Asp+5)">SILAC (Lys+8, Arg+10, Glu+6, Asp+5)</option>
+            <!-- TODO: Add remaining SILAC options. -->
+            <option value="RABA +0,+6 (Peptide Labeled)">RABA +0,+6 (Peptide Labeled)</option>
+            <option value="Dimethyl +0,+4 (Peptide Labeled)">Dimethyl +0,+4 (Peptide Labeled)</option>
+            <option value="Dimethyl +0,+6 (Peptide Labeled)">Dimethyl +0,+6 (Peptide Labeled)</option>
+            <option value="Dimethyl +0,+8 (Peptide Labeled)">Dimethyl +0,+8 (Peptide Labeled)</option>
+            <option value="Dimethyl +0,+4,+8 (Peptide Labeled)">Dimethyl +0,+4,+8 (Peptide Labeled)</option>
+            <option value="Proteolytic O-18 labeling">Proteolytic O-18 labeling</option>
+            <option value="Cleavable ICAT">Cleavable ICAT</option>
+            <option value="ICPL Light, Heavy (Peptide Labeled)">ICPL Light, Heavy (Peptide Labeled)</option>
+            <option value="ICPL Light, Heavy (Protein Labeled)">ICPL Light, Heavy (Protein Labeled)</option>
+            <!-- TODO: Handle additional mTRAQ and iTRAQ options. 
+                handle TMT (doesn't seem like UI lets quantatate these)
+            <UI_SAMPLE_TYPE>TMT6plex ID-only (Peptide Labeled)</UI_SAMPLE_TYPE>
+            <UI_QUANT_TYPE></UI_QUANT_TYPE>
+          
+            <UI_SAMPLE_TYPE></UI_SAMPLE_TYPE>
+            <UI_QUANT_TYPE></UI_QUANT_TYPE>
 
-      <UI_SAMPLE_TYPE>TMT2plex ID-only (Peptide Labeled)</UI_SAMPLE_TYPE>
-      <UI_QUANT_TYPE></UI_QUANT_TYPE>
+            <UI_SAMPLE_TYPE>TMT2plex ID-only (Peptide Labeled)</UI_SAMPLE_TYPE>
+            <UI_QUANT_TYPE></UI_QUANT_TYPE>
 
-      <UI_SAMPLE_TYPE>TMT ID-only (Peptide Labeled)</UI_SAMPLE_TYPE>
-      <UI_QUANT_TYPE></UI_QUANT_TYPE>
-    -->
-      <option value="SILAC unlabeled, N-15 labeled">SILAC unlabeled, N-15 labeled</option>
-    </param>
-    <param type="select" name="cys_alkylation" label="Cys Alkylation">
-      <option value="None">None</option>
-      <option value="Iodoacetamide">Iodoacetamide</option>      
-      <option value="MMTS">MMTS</option>
-      <option value="Acrylamide">Acrylamide</option>
-      <option value="Iodoacetic acid">Iodoacetic acid</option>
-      <option value="Iodoethanol">Iodoethanol</option>
-      <option value="Vinylpyridine">Vinylpyridine</option>
-      <option value="N-Ethylmaleimide">N-Ethylmaleimide</option>
-      <option value="N-Methylmaleimide">N-Methylmaleimide</option>
-      <option value="Iodoacetyl-PEO-Biotin">Iodoacetyl-PEO-Biotin</option>
-      <option value="Iodoacetamide with Iodoacetyl-PEO-Biotin chase">Iodoacetamide with Iodoacetyl-PEO-Biotin chase</option>
-      <option value="Iodoacetamide w other Cys mods possible">Iodoacetamide w other Cys mods possible</option>
-      <option value="MMTS w other Cys mods possible">MMTS w other Cys mods possible</option>
-      <option value="Unknown">Unknown</option>
-    </param>
-    <param type="select" name="digestion" label="Digestion">
-      <option value="Trypsin">Trypsin</option>
-      <option value="Glu C">Glu C</option>
-      <option value="Chymotrypsin">Chymotrypsin</option>
-      <option value="CNBr">CNBr</option>
-      <option value="Lys C">Lys C</option>
-      <option value="Acid Cleavage">Acid Cleavage</option>
-      <option value="Arg C">Arg C</option>
-      <option value="Asp N">Asp N</option>
-      <option value="Lys N">Lys N</option>
-      <option value="Thermolysin">Thermolysin</option>
-      <option value="Trypsin + Chymotrypsin">Trypsin + Chymotrypsin</option>
-      <option value="Trypsin + Glu C">Trypsin + Glu C</option>
-      <option value="Trypsin + Asp N">Trypsin + Asp N</option>
-      <option value="Lys C + Chymotrypsin">Lys C + Chymotrypsin</option>
-      <option value="Lys C + Glu C">Lys C + Glu C</option>
-      <option value="Glu C + Asp N">Glu C + Asp N</option>
-      <option value="Trypsin using MSIPI database">Trypsin using MSIPI database</option>
-      <option value="None">None</option>
-    </param>
-    <param type="select" name="instrument" label="Instrument">
-      <option value="TripleTOF 5600">TripleTOF 5600</option>
-      <option value="TripleTOF 4600">TripleTOF 4600</option>
-      <option value="5800">5800</option>
-      <option value="4800">4800</option>
-      <option value="4700">4700</option>
-      <option value="QSTAR Elite ESI">QSTAR Elite ESI</option>
-      <option value="QSTAR Elite">QSTAR Elite</option>
-      <option value="QSTAR oMALDI">QSTAR oMALDI</option>
-      <option value="6500 QTRAP ESI">6500 QTRAP ESI</option>
-      <option value="4500 QTRAP ESI">4500 QTRAP ESI</option>
-      <option value="5500 QTRAP ESI">5500 QTRAP ESI</option>
-      <option value="4000 QTRAP ESI">4000 QTRAP ESI</option>
-      <option value="QTRAP ESI">QTRAP ESI</option>
-      <option value="4000 QTRAP AP-MALDI">4000 QTRAP AP-MALDI</option>
-      <option value="3200 QTRAP AP-MALDI">3200 QTRAP AP-MALDI</option>
-      <option value="LTQ">LTQ</option>
-      <option value="Orbi/FT MS (1-3ppm), LTQ MS/MS">Orbi/FT MS (1-3ppm), LTQ MS/MS</option>      
-      <option value="Orbi/FT MS (sub-ppm), LTQ MS/MS">Orbi/FT MS (sub-ppm), LTQ MS/MS</option>
-      <option value="Orbi MS, Orbi MS/MS">Orbi MS, Orbi MS/MS</option>
-      <option value="Orbi MS (sub-ppm), Orbi MS/MS">Orbi MS (sub-ppm), Orbi MS/MS</option>
-    </param>
-    <conditional name="factors">
-      <param name="factors_use" type="boolean" label="Specify Special Factors?" help="" truevalue="true" falsevalue="false" />
-      <when value="false" />
-      <when value="true">
-        <param type="select" name="special_factors" label="Special Factors" display="checkboxes" multiple="true" help="">
-          <option value="Phosphorylation emphasis">Phosphorylation emphasis</option>
-          <option value="Methyl esterification">Methyl esterification</option>
-          <option value="Phos-Tyr affinity column">Phos-Tyr affinity column</option>
-          <option value="Gel-based ID">Gel-based ID</option>
-          <option value="Urea denaturation">Urea denaturation</option>
-          <option value="Acetylation emphasis">Acetylation emphasis</option>
-          <option value="Ubiquitin/SUMO enrichment">Ubiquitin/SUMO enrichment</option>
-          <option value="BONCAT workflow">BONCAT workflow</option>
-          <option value="PNGase F in O-18 water">PNGase F in O-18 water</option>
-          <option value="Pronota">Pronota</option>
-          <option value="O-methylisourea treatment">O-methylisourea treatment</option>
-          <option value="Purified Histones">Purified Histones</option>
-          <option value="Propionylation pre-digestion">Propionylation pre-digestion</option>
-          <option value="Propionylation post-digestion">Propionylation post-digestion</option>
-          <option value="Deuteroacetylation pre-digestion">Deuteroacetylation pre-digestion</option>
-          <option value="Deuteroacetylation post-digestion">Deuteroacetylation post-digestion</option>
-          <option value="Iodo and Thyroxine mods enrichment">Iodo and Thyroxine mods enrichment</option>
+            <UI_SAMPLE_TYPE>TMT ID-only (Peptide Labeled)</UI_SAMPLE_TYPE>
+            <UI_QUANT_TYPE></UI_QUANT_TYPE>
+            -->
+            <option value="SILAC unlabeled, N-15 labeled">SILAC unlabeled, N-15 labeled</option>
+        </param>
+        <param type="select" name="cys_alkylation" label="Cys Alkylation">
+            <option value="None">None</option>
+            <option value="Iodoacetamide">Iodoacetamide</option>
+            <option value="MMTS">MMTS</option>
+            <option value="Acrylamide">Acrylamide</option>
+            <option value="Iodoacetic acid">Iodoacetic acid</option>
+            <option value="Iodoethanol">Iodoethanol</option>
+            <option value="Vinylpyridine">Vinylpyridine</option>
+            <option value="N-Ethylmaleimide">N-Ethylmaleimide</option>
+            <option value="N-Methylmaleimide">N-Methylmaleimide</option>
+            <option value="Iodoacetyl-PEO-Biotin">Iodoacetyl-PEO-Biotin</option>
+            <option value="Iodoacetamide with Iodoacetyl-PEO-Biotin chase">Iodoacetamide with Iodoacetyl-PEO-Biotin chase</option>
+            <option value="Iodoacetamide w other Cys mods possible">Iodoacetamide w other Cys mods possible</option>
+            <option value="MMTS w other Cys mods possible">MMTS w other Cys mods possible</option>
+            <option value="Unknown">Unknown</option>
+        </param>
+        <param type="select" name="digestion" label="Digestion">
+            <option value="Trypsin">Trypsin</option>
+            <option value="Glu C">Glu C</option>
+            <option value="Chymotrypsin">Chymotrypsin</option>
+            <option value="CNBr">CNBr</option>
+            <option value="Lys C">Lys C</option>
+            <option value="Acid Cleavage">Acid Cleavage</option>
+            <option value="Arg C">Arg C</option>
+            <option value="Asp N">Asp N</option>
+            <option value="Lys N">Lys N</option>
+            <option value="Thermolysin">Thermolysin</option>
+            <option value="Trypsin + Chymotrypsin">Trypsin + Chymotrypsin</option>
+            <option value="Trypsin + Glu C">Trypsin + Glu C</option>
+            <option value="Trypsin + Asp N">Trypsin + Asp N</option>
+            <option value="Lys C + Chymotrypsin">Lys C + Chymotrypsin</option>
+            <option value="Lys C + Glu C">Lys C + Glu C</option>
+            <option value="Glu C + Asp N">Glu C + Asp N</option>
+            <option value="Trypsin using MSIPI database">Trypsin using MSIPI database</option>
+            <option value="None">None</option>
         </param>
-      </when>
-    </conditional>
-    <param format="fasta" name="database" type="data" label="Database" />
-    <param name="quantitative" type="boolean" truevalue="True" falsevalue="False" label="Run Quantitation (if applicable)" checked="False" help="" />    
-    <param name="background_correction" type="boolean" truevalue="True" falsevalue="False" label="Use Background Correction (if applicable)" checked="False" help="" />
-    <param name="bias_correction" type="boolean" truevalue="True" falsevalue="False" label="Use Bias Correction (if applicable)" checked="False" help="" />
-    <param type="select" name="search_foci" label="Search Focus" display="checkboxes" multiple="true" help="">
-      <option value="Biological modifications">Biological modifications</option>
-      <option value="Amino acid substitutions">Amino acid substitutions</option>
-    </param>
-    <param name="search_effort" type="boolean" truevalue="Thorough" falsevalue="Rapid" label="Thorough Search" checked="True" help="" />
-    <param name="pspep" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Use PSPEP" checked="True" help="" />
-    <param type="select" name="min_unused_protscore" label="Detected Protein Threshold [Unused ProtScore (Conf)]">
-      <option value="3.0">3.0 (99.9)</option>
-      <option value="2.0">2.0 (99.0%)</option>
-      <option value="1.3">1.3 (95.0%)</option>
-      <option value="1.0">1.0 (90.0%)</option>
-      <option value="0.70">0.70 (80.0%)</option>
-      <option value="0.47">0.47 (66.0%)</option>
-      <option value="0.10">0.10 (20.0%)</option>
-      <option value="0.05" selected="true">0.05 (10.0%)</option>
-    </param>
-  </inputs>
-  <outputs>
-    <data format="group" name="output" label="ProteinPilot results for ${on_string}"/>
-    <data format="xml" name="output_methods" label="ProteinPilot methods xml for ${on_string}" />
-    <data format="xlsx" name="output_pspep_report" label="ProteinPilot PSPEP Report for ${on_string}">
-      <filter>pspep</filter>
-    </data>
-  </outputs>
-  <help>
-  </help>
+        <param type="select" name="instrument" label="Instrument">
+            <option value="TripleTOF 5600">TripleTOF 5600</option>
+            <option value="TripleTOF 4600">TripleTOF 4600</option>
+            <option value="5800">5800</option>
+            <option value="4800">4800</option>
+            <option value="4700">4700</option>
+            <option value="QSTAR Elite ESI">QSTAR Elite ESI</option>
+            <option value="QSTAR Elite">QSTAR Elite</option>
+            <option value="QSTAR oMALDI">QSTAR oMALDI</option>
+            <option value="6500 QTRAP ESI">6500 QTRAP ESI</option>
+            <option value="4500 QTRAP ESI">4500 QTRAP ESI</option>
+            <option value="5500 QTRAP ESI">5500 QTRAP ESI</option>
+            <option value="4000 QTRAP ESI">4000 QTRAP ESI</option>
+            <option value="QTRAP ESI">QTRAP ESI</option>
+            <option value="4000 QTRAP AP-MALDI">4000 QTRAP AP-MALDI</option>
+            <option value="3200 QTRAP AP-MALDI">3200 QTRAP AP-MALDI</option>
+            <option value="LTQ">LTQ</option>
+            <option value="Orbi/FT MS (1-3ppm), LTQ MS/MS">Orbi/FT MS (1-3ppm), LTQ MS/MS</option>            
+            <option value="Orbi/FT MS (sub-ppm), LTQ MS/MS">Orbi/FT MS (sub-ppm), LTQ MS/MS</option>
+            <option value="Orbi MS, Orbi MS/MS">Orbi MS, Orbi MS/MS</option>
+            <option value="Orbi MS (sub-ppm), Orbi MS/MS">Orbi MS (sub-ppm), Orbi MS/MS</option>
+        </param>
+        <conditional name="factors">
+            <param name="factors_use" type="boolean" label="Specify Special Factors?" help="" truevalue="true" falsevalue="false" />
+            <when value="false" />
+            <when value="true">
+                <param type="select" name="special_factors" label="Special Factors" display="checkboxes" multiple="true" help="">
+                    <option value="Phosphorylation emphasis">Phosphorylation emphasis</option>
+                    <option value="Methyl esterification">Methyl esterification</option>
+                    <option value="Phos-Tyr affinity column">Phos-Tyr affinity column</option>
+                    <option value="Gel-based ID">Gel-based ID</option>
+                    <option value="Urea denaturation">Urea denaturation</option>
+                    <option value="Acetylation emphasis">Acetylation emphasis</option>
+                    <option value="Ubiquitin/SUMO enrichment">Ubiquitin/SUMO enrichment</option>
+                    <option value="BONCAT workflow">BONCAT workflow</option>
+                    <option value="PNGase F in O-18 water">PNGase F in O-18 water</option>
+                    <option value="Pronota">Pronota</option>
+                    <option value="O-methylisourea treatment">O-methylisourea treatment</option>
+                    <option value="Purified Histones">Purified Histones</option>
+                    <option value="Propionylation pre-digestion">Propionylation pre-digestion</option>
+                    <option value="Propionylation post-digestion">Propionylation post-digestion</option>
+                    <option value="Deuteroacetylation pre-digestion">Deuteroacetylation pre-digestion</option>
+                    <option value="Deuteroacetylation post-digestion">Deuteroacetylation post-digestion</option>
+                    <option value="Iodo and Thyroxine mods enrichment">Iodo and Thyroxine mods enrichment</option>
+                </param>
+            </when>
+        </conditional>
+        <param format="fasta" name="database" type="data" label="Database" />
+        <param name="quantitative" type="boolean" truevalue="True" falsevalue="False" label="Run Quantitation (if applicable)" checked="False" help="" />    
+        <param name="background_correction" type="boolean" truevalue="True" falsevalue="False" label="Use Background Correction (if applicable)" checked="False" help="" />
+        <param name="bias_correction" type="boolean" truevalue="True" falsevalue="False" label="Use Bias Correction (if applicable)" checked="False" help="" />
+        <param type="select" name="search_foci" label="Search Focus" display="checkboxes" multiple="true" help="">
+            <option value="Biological modifications">Biological modifications</option>
+            <option value="Amino acid substitutions">Amino acid substitutions</option>
+        </param>
+        <param name="search_effort" type="boolean" truevalue="Thorough" falsevalue="Rapid" label="Thorough Search" checked="True" help="" />
+        <param name="pspep" type="boolean" truevalue="TRUE" falsevalue="FALSE" label="Use PSPEP" checked="True" help="" />
+        <param type="select" name="min_unused_protscore" label="Detected Protein Threshold [Unused ProtScore (Conf)]">
+            <option value="3.0">3.0 (99.9)</option>
+            <option value="2.0">2.0 (99.0%)</option>
+            <option value="1.3">1.3 (95.0%)</option>
+            <option value="1.0">1.0 (90.0%)</option>
+            <option value="0.70">0.70 (80.0%)</option>
+            <option value="0.47">0.47 (66.0%)</option>
+            <option value="0.10">0.10 (20.0%)</option>
+            <option value="0.05" selected="true">0.05 (10.0%)</option>
+        </param>
+    </inputs>
+    <outputs>
+        <data format="group" name="output" label="ProteinPilot results for ${on_string}"/>
+        <data format="xml" name="output_methods" label="ProteinPilot methods xml for ${on_string}" />
+        <data format="xlsx" name="output_pspep_report" label="ProteinPilot PSPEP Report for ${on_string}">
+            <filter>pspep</filter>
+        </data>
+    </outputs>
+    <help>
+<![CDATA[
+
+]]>
+    </help>
 </tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/proteinpilot_group_extractor.xml	Thu Nov 05 13:15:48 2015 -0600
@@ -0,0 +1,174 @@
+<tool id="proteinpilot_group_extractor" name="ProteinPilot - GroupFileExtractor" version="5.0.0">
+  <description>convert group file to tabular reports, mzIndentML, and MGF</description>
+  <command>
+<![CDATA[
+    #if $quant.use
+    #set $denom = $quant.dtype
+    #else
+    #set $denom = ""
+    #end if
+    #set $ptypes = str($ptype).split(',')
+    #set $cmd = []
+    #if 'PROTEIN' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe PROTEIN ' + str($input) + ' protein_report.txt ' + $denom]
+    #end if
+    #if 'PEPTIDE' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe PEPTIDE ' + str($input) + ' peptide_report.txt ' + $denom]
+    #end if
+    #if 'DISTINCT_PEPTIDE' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe DISTINCT_PEPTIDE ' + str($input) + ' distinct_peptide_report.txt ' + $denom]
+    #end if
+    #if 'SPECTRUM' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe SPECTRUM ' + str($input) + ' spectrum_report.txt ' + $denom]
+    #end if
+    #if 'FEATURES' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe FEATURES ' + str($input) + ' features_report.txt ' + $denom]
+    #end if
+    #if 'MZIDENTML' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe MZIDENTML ' + str($input) + ' mzidentml.mzid ' + $denom]
+    #end if
+    #if 'MGF' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe MGF ' + str($input) + ' output.mgf ' + $denom]
+    #end if
+    #if 'XML' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe XML ' + str($input) + ' results.xml ' + $denom]
+    #end if
+    #if 'METADATAXML' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe METADATAXML ' + str($input) + ' metadata.xml ' + $denom]
+    #end if
+    #if 'METADATACSV' in $ptypes:
+    #set $cmd = $cmd + ['GroupFileExtractor.exe METADATACSV ' + str($input) + ' metadata.csv ' + $denom]
+    #end if
+    #echo ' && '.join($cmd)
+]]>
+  </command>
+  <inputs>
+    <param format="group" name="input" type="data" label="ProteinPilot Group Data" help=""/>
+    <param name="ptype" type="select" multiple="true" label="Summary Type">
+      <option value="PROTEIN">PROTEIN</option>
+      <option value="PEPTIDE">PEPTIDE</option>
+      <option value="DISTINCT_PEPTIDE">DISTINCT_PEPTIDE</option>
+      <option value="SPECTRUM">SPECTRUM</option>
+      <option value="FEATURES">FEATURES</option>
+      <option value="MZIDENTML">MZIDENTML</option>
+      <option value="MGF">MGF</option>
+      <option value="XML">XML</option>
+      <option value="METADATAXML">METADATAXML</option>
+      <option value="METADATACSV">METADATACSV</option>
+    </param>
+    <conditional name="quant">
+      <param name="use" type="boolean" label="Include quantation results" truevalue="true" falsevalue="false" />
+      <when value="true">
+        <param name="dtype" type="select" label="Denominator">
+          <option value="IT113">113</option>
+          <option value="IT114" selected="true">114</option>
+          <option value="IT115">115</option>
+          <option value="IT116">116</option>
+          <option value="IT117">117</option>
+          <option value="IT118">118</option>
+          <option value="IT119">119</option>
+          <option value="IT121">121</option>
+          <option value="Light">Light</option>
+          <option value="Heavy">Heavy</option>
+          <option value="Medium">Medium</option>
+        </param>
+      </when>
+      <when value="false"/>
+    </conditional>
+  </inputs>
+  <outputs>
+    <data format="tabular" name="protein_report" label="PROTEIN report for ${on_string}" from_work_dir="protein_report.txt">
+        <filter>'PROTEIN' in ptype</filter>
+    </data>
+    <data format="tabular" name="peptide_report" label="PEPTIDE report for ${on_string}" from_work_dir="peptide_report.txt">
+        <filter>'PEPTIDE' in ptype</filter>
+    </data>
+    <data format="tabular" name="distinct_peptide_report" label="DISTINCT_PEPTIDE report for ${on_string}" from_work_dir="distinct_peptide_report.txt">
+        <filter>'DISTINCT_PEPTIDE' in ptype</filter>
+    </data>
+    <data format="tabular" name="spectrum_report" label="SPECTRUM report for ${on_string}" from_work_dir="spectrum_report.txt">
+        <filter>'SPECTRUM' in ptype</filter>
+    </data>
+    <data format="tabular" name="features_report" label="FEATURES report for ${on_string}" from_work_dir="features_report.txt">
+        <filter>'FEATURES' in ptype</filter>
+    </data>
+    <data format="mzid" name="mzidentml" label="mzIdentML for ${on_string}" from_work_dir="mzidentml.mzid">
+        <filter>'MZIDENTML' in ptype</filter>
+    </data>
+    <data format="mgf" name="mgf" label="mgf for ${on_string}" from_work_dir="output.mgf">
+        <filter>'MGF' in ptype</filter>
+    </data>
+    <data format="xml" name="results_xml" label="Results.xml for ${on_string}" from_work_dir="results.xml">
+        <filter>'XML' in ptype</filter>
+    </data>
+    <data format="xml" name="metadata_xml" label="Metadata.xml for ${on_string}" from_work_dir="metadata.xml">
+        <filter>'METADATAXML' in ptype</filter>
+    </data>
+    <data format="csv" name="metadata_csv" label="Metadata.csv for ${on_string}" from_work_dir="metadata.csv">
+        <filter>'METADATACSV' in ptype</filter>
+    </data>
+  </outputs>
+  <help>
+<![CDATA[
+**ProteinPilot GroupFileExtractor**
+
+  Requires ProteinPilot version 5
+
+
+**INPUT** 
+
+  A ProteinPilot .group file
+
+**OUTPUTS**
+
+  Data can now be exported in the following formats:
+
+    (1) **Protein Summary**
+  
+      A tabular report of detected proteins.
+  
+    (2) **Peptide Summary**
+  
+      A tabular report of detected proteins.
+  
+    (3) **Distinct Peptide Summary**
+  
+      The Distinct Peptide Summary export provides a summary of all peptide groups for each group that has at least one hypotheses with at least 15% confidence. The purpose is to report a list of all distinct physical peptides that have been detected. Each physical peptide can have multiple precursor charge states observed as detected, separate LCMS map features. To attempt to identify the peptide, each of these LCMS features can have MS/MS spectra triggered.
+  
+      The process of identification does not always result in a clear single answer, so ambiguity in identification can occur. The purpose of the peptide group is to group all competitive hypotheses for a given physical peptide arising from the following three levels:
+  
+        - multiple precursor charge states,
+        - multiple MS/MS spectra of a given charge state, and
+        - multiple answers for a given MS/MS spectrum.
+  
+      The Distinct Peptide Summary export is unlike the previous Peptide Summary export, which exported information only about the peptides claimed by reported proteins. The Distinct Peptide Summary export shows all hypotheses that are within the margin of error of being the right answer, regardless of whether they are attached to reported proteins, making this export useful for peptide-centric workflows.
+  
+    (4) **Spectrum Summary**
+  
+      The spectrum export includes all of the top hits to each spectrum, making it spectrum- centric, rather than protein-peptide ID-centric. This gives the user a way to access all of the information, rather than just the protein-filtered information as is done with the existing Peptide Summary export.
+  
+    (5) **mzIDentML**
+  
+      The ProteinPilot software now exports search results in mzIDentML version 1.2 candidate format.* This is a standardized format developed by the Human Proteome Organizations (HUPO) Proteomics Standards Initiative (PSI) for reporting parameters and results from mass spectrometric database search engines. Users can most easily export to mzIDentML format from the export options available in the software, but exports can also be done programmatically.
+  
+      http://onlinelibrary.wiley.com/doi/10.1002/pmic.201400080/abstract Seymour, Sean et al. "A standardized framing for reporting protein identifications in mzIdentML 1.2." Proteomics. doi: 10.1002/pmic.201400080.
+  
+    (6) **MGF Peak list**
+  
+      Recalibrated MGF (Mascot Generic File) peak lists can now be exported programmatically. 
+  
+    (7) **Metadata**
+  
+      This is a new export option that provides metadata based on search criteria (for example, search date, time, other search parameters). Metadata can be exported in .txt or .xml file format.
+  
+    (8) **Features**
+  
+      The Features export contains all of the detected protein features (for example, post-translational modifications and sequence variants).
+      Confidence Interval (CI) columns added to Proteins Detected table
+      The ProteinPilot software now reports a confidence interval for SILAC and other MS- based quantitation workflows, such as SCIEX mTRAQ. Four new column options are hidden by default but can be shown on the Protein Quant tab in the Proteins Detected table: Upper CI M:L, Lower CI M:L, Upper CI H:L, and Lower CI H:L. Upper and Lower CI column headings reflect whether the user selected a Heavy (H) or Light (L) denominator.
+      N-15 universal labeling SILAC support
+      Quantitation of universally N-15 labeled SILAC duplex samples was introduced in ProteinPilot software 4.2 Beta but required some special configuration. This feature is now available by default and no longer requires any additional steps to perform this type of quantitation analysis.
+
+]]>
+  </help>
+</tool>
--- a/proteinpilot_tabular.xml	Mon Oct 20 15:54:33 2014 -0500
+++ b/proteinpilot_tabular.xml	Thu Nov 05 13:15:48 2015 -0600
@@ -1,4 +1,4 @@
-<tool id="proteinpilot_tabular" version="0.1" name="ProteinPilot - Convert Group to Tabular">
+<tool id="proteinpilot_tabular" name="ProteinPilot - Convert Group to Tabular" version="5.0.0">
   <description></description>
   <!-- TOOD: Implement wrapper allowing Windows newlines to be replaced. -->
   <command>
@@ -7,7 +7,7 @@
     #else
     #set $denom = ""
     #end if
-    group2xml.exe ${ptype} $input $output $denom
+    GroupFileExtractor.exe ${ptype} $input $output $denom
   </command>
   <inputs>
     <param format="group" name="input" type="data" label="ProteinPilot Group Data" help=""/>
--- a/proteinpilot_xml.xml	Mon Oct 20 15:54:33 2014 -0500
+++ b/proteinpilot_xml.xml	Thu Nov 05 13:15:48 2015 -0600
@@ -1,7 +1,7 @@
-<tool id="proteinpilot_xml" version="0.1" name="ProteinPilot - Convert Group to XML">
+<tool id="proteinpilot_xml" name="ProteinPilot - Convert Group to XML" version="5.0.0">
   <description></description>
   <command>
-    group2xml.exe XML $input $output
+    GroupFileExtractor.exe XML $input $output
   </command>
   <inputs>
     <param format="group" name="input" type="data" label="ProteinPilot Group Data" help=""/>