# HG changeset patch # User galaxyp # Date 1368221465 14400 # Node ID cf0d72c7b48225d666a86b1fe829c1e08477c868 # Parent 5c65f8116244a1395acbb214d7273805732b20d2 Update. diff -r 5c65f8116244 -r cf0d72c7b482 README.md --- a/README.md Wed Dec 19 00:33:53 2012 -0500 +++ b/README.md Fri May 10 17:31:05 2013 -0400 @@ -1,4 +1,25 @@ -TODO: Document this tool repository. +# OpenMS + +If there is a tool that is part of OpenMS but not available here, let +John Chilton (jmchilton@gmail.com) and he will try to add it. + +These tools require Galaxy to be equipped with common proteomic +datatypes. These can be obtained by installing Ira Cooke's ProtK via +the tool shed or merging the changesets from the following repository +into your Galaxy instance: + + https://bitbucket.org/galaxyp/galaxy-dist-proteomics + +# Installing + +These tools all require OpenMS (at least version 1.10) and may require +other dependencies (such as PepNovo for instance). + +For Galaxy-P we are installing this tool via CloudBioLinux +(https://github.com/jmchilton/cloudbiolinux/blob/proteomics/cloudbio/custom/bio_proteomics.py). While +this fabric script may not be exactly appropriate for your environment +it may serve as a template for how to install this software. + # Obtaining Tools Repositories for all Galaxy-P tools can be found at diff -r 5c65f8116244 -r cf0d72c7b482 README_REPO.md --- a/README_REPO.md Wed Dec 19 00:33:53 2012 -0500 +++ b/README_REPO.md Fri May 10 17:31:05 2013 -0400 @@ -1,9 +1,7 @@ # OpenMS -This repository is in an early alpha state and many OpenMS tools are -not yet available or are largely untested. If there is a tool that is -part of OpenMS but not available here, let John Chilton -(jmchilton@gmail.com) and he will try to add it. +If there is a tool that is part of OpenMS but not available here, let +John Chilton (jmchilton@gmail.com) and he will try to add it. These tools require Galaxy to be equipped with common proteomic datatypes. These can be obtained by installing Ira Cooke's ProtK via @@ -14,12 +12,11 @@ # Installing -These tools all require OpenMS and may require other dependencies -(such as PepNovo for instance). +These tools all require OpenMS (at least version 1.10) and may require +other dependencies (such as PepNovo for instance). For Galaxy-P we are installing this tool via CloudBioLinux -(https://github.com/jmchilton/cloudbiolinux/blob/proteomics/cloudbio/custom/bio\ -_proteomics.py). While +(https://github.com/jmchilton/cloudbiolinux/blob/proteomics/cloudbio/custom/bio_proteomics.py). While this fabric script may not be exactly appropriate for your environment it may serve as a template for how to install this software. diff -r 5c65f8116244 -r cf0d72c7b482 baseline_filter.xml --- a/baseline_filter.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/baseline_filter.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ Executes the top-hat filter to remove the baseline of an MS experiment. - - openms - + + macros.xml + + + openms_wrapper.py --executable 'BaselineFilter' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 build_mods_loc.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/build_mods_loc.py Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +import xml.etree.ElementTree as ET + +tree = ET.parse('unimod.xml') +ns = '{http://www.unimod.org/xmlns/schema/unimod_2}' +modifications_el = tree.getroot().find('%smodifications' % ns) + + +def to_label(title, site): + return "%s (%s)" % (title, site) + + +labels = [] +for mod in modifications_el.findall('%smod' % ns): + for specificity in mod.findall('%sspecificity' % ns): + title = mod.get('title') + site = specificity.get('site') + labels.append(to_label(title, site)) + +with open("openms_mods.loc", "w") as output: + for mod in sorted(labels, key=str.lower): + output.write("%s\n" % mod) diff -r 5c65f8116244 -r cf0d72c7b482 compnovo.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compnovo.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,69 @@ + + + Performs a de novo peptide identification using the CompNovo engine. + + + macros.xml + + + + + #if str($mode) == "cid" + #set $executable = "CompNovoCID" + #else + #set $executable = "CompNovo" + #end if + openms_wrapper.py --executable '$executable' --config $config + + + [simple_options] +in=${input1} +out=${out} +#set $fixed_mods_str=",".join([str($fixed_mod.fixed_mod) for $fixed_mod in $fixed_mods]) +#if $fixed_mods_str +algorithm!fixed_modifications=$fixed_mods_str +#end if +#set $variable_mods_str=",".join([str($variable_mod.fixed_mod) for $variable_mod in $variable_mods]) +#if $variable_mods_str +algorithm!variable_modifications=$variable_mods_str +#end if + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +De novo peptide sequencing of mass spectrometry data. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` and ``Bertsch A, Leinenbach A, Pervukhin A, Lubeck M, Hartmer R, Baessmann C, et al.: De novo peptide sequencing by tandem MS using complementary CID and electron transfer dissociation. Electrophoresis 2009, 30:3736-3747.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 consensus_extract_features.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/consensus_extract_features.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,37 @@ + + + Extracts one map of features from a consensus file. + + + macros.xml + + + + + openms_wrapper.py --executable 'FileFilter' --config $config + + + [simple_options] +in=$input1 +in_type=consensusXML +out=$output +out_type=featureXML + + + + + + + + + + +**What it does** + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 consensus_filter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/consensus_filter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,36 @@ + + + Filters consensus results by different criteria. + + + macros.xml + + + + + openms_wrapper.py --executable 'FileFilter' --config $config + + + [simple_options] +in=$input1 +in_type=consensusXML +out=$output +out_type=consensusXML + + + + + + + + + +**What it does** + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 consensus_id.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/consensus_id.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,42 @@ + + + Computes a consensus identification from peptide identification engines. + + + macros.xml + + + + + openms_wrapper.py --executable 'ConsensusID' --config $config + + + [simple_options] +in=${input1} +out=${out} + + + + + + + + + + +**What it does** + +This implementation (for PEPMatrix and PEPIons) is described in + +Nahnsen S, Bertsch A, Rahnenfuehrer J, Nordheim A, Kohlbacher O +Probabilistic Consensus Scoring Improves Tandem Mass Spectrometry Peptide Identification +Journal of Proteome Research (2011), DOI: 10.1021/pr2002879 +The input file can contain several searches, e.g., from several identification engines. In order to use the PEPMatrix or the PEPIons algorithm, posterior error probabilities (PEPs) need to be calculated using the IDPosteriorErrorProbability tool for all individual search engines. After PEP calculation, the different search engine results have to be combined using IDMerger. Identification runs can be mapped to featureXML and consensusXML with the IDMapper tool. The merged file can now be fed into into the ConsensusID tool. For the statistical assessment of the results it is recommended to use target-decoy databases for peptide identifications. The false discovery rates (FDRs) can be calculated using the FalseDiscoveryRate tool. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 decoy_database.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/decoy_database.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,53 @@ + + + Create decoy protein/peptide databases from normal ones. + + + macros.xml + + + + + openms_wrapper.py --executable 'DecoyDatabase' --config $config + + + [simple_options] +in=${in} +out=${out} +decoy_string=${decoy_string} +decoy_string_position=${decoy_string_position} +append=${append} +shuffle=${shuffle} + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +Create decoy protein/peptide databases from normal ones. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 false_discovery_rate.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/false_discovery_rate.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,73 @@ + + + Tool to estimate the false discovery rate on peptide and protein level. + + + macros.xml + + + + + openms_wrapper.py --executable 'FalseDiscoveryRate' --config $config + + + [simple_options] +#if $input.type == "combined" +in=$input1 +algorithm!decoy_string=$input.decoy_string +#else +fwd_in=$input.forward_input +rev_in=$input.forward_input +#end if +out=$output +algorithm!q_value=$q_value +algorithm!use_all_hits=$use_all_hits +algorithm!split_charge_variants=$split_charge_variants +algorithm!add_decoy_peptides=$add_decoy_peptides + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +This TOPP tool can calculate the false discovery rate (FDR) given a forward and backward search (or one run on a combined database). Most useful is this on protein level, however, it also can be applied to peptides. + +The false discovery rate is defined as the number of false discoveries (the hits in the reversed search) over the number of false and correct discoveries (the hits in both databases) with a score better than a given threshold. + +Prerequisites: + +When using a combined database of forward and reverse hits (thus only using one search run per ID engine), then use PeptideIndexer to index an idXML file generated by a search engine adapter, e.g. MascotAdapter. This will allow us to discern which peptides are from the target vs. decoy database. +When no decoy hits were found you will get a warning saying something like: +"FalseDiscoveryRate: #decoy sequences is zero! Setting all target sequences to q-value/FDR 0!" +This should be a serious concern, since the target/decoy annotation in a previous step has probably a misconfigured database (see PeptideIndexer). + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_filter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_filter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,39 @@ + + + Filters feature results by different criteria. + + + macros.xml + + + + + openms_wrapper.py --executable 'FileFilter' --config $config + + + [simple_options] +in=$input1 +in_type=featureXML +out=$output +out_type=featureXML +feature!q=${min_quality or ''}:${max_quality or ''} + + + + + + + + + + + +**What it does** + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_finder_centroided.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_finder_centroided.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,83 @@ + + + The feature detection application for quantitation (centroided). + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureFinderCentroided' --config $config + + + [simple_options] +in=$input1 +out=$output +algorithm!intensity!bins=$bins +algorithm!mass_trace!mz_tolerance=$trace_mz_tolerance +algorithm!mass_trace!min_spectra=$min_spectra +algorithm!mass_trace!max_missing=$max_missing +algorithm!seed!min_score=$seed_min_score +algorithm!feature!min_score=$feature_min_score +algorithm!feature!reported_mz=$reported_mz +algorithm!isotopic_pattern!mz_tolerance=$isotopic_mz_tolerance +algorithm!isotopic_pattern!charge_low=$charge_low +algorithm!isotopic_pattern!charge_high=$charge_high +#if $advanced_isotopic_pattern.specify +algorithm!isotopic_pattern!abundance_12C=$abundance_12C +algorithm!isotopic_pattern!abundance_14N=$abundance_14N +#end if + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +The mapping is based on retention times and mass-to-charge values. Roughly, a peptide identification is assigned to a (consensus) feature if its position lies within the boundaries of the feature or close enough to the feature centroid. Peptide identifications that don't match anywhere are still recorded in the resulting map, as "unassigned peptides". Protein identifications are annotated to the whole map, i.e. not to any particular (consensus) feature. + +In all cases, tolerance in RT and m/z dimension is applied according to the parameters rt_tolerance and mz_tolerance. Tolerance is understood as "plus or minus x", so the matching range is actually increased by twice the tolerance value. + +If several features or consensus features overlap the position of a peptide identification (taking the allowed tolerances into account), the identification is annotated to all of them. + +Annotation of feature maps (featureXML input): +If all features have at least one convex hull, peptide positions are matched against the bounding boxes of the convex hulls (of individual mass traces, if available) by default. If not, the positions of the feature centroids are used. The respective coordinates of the centroids are also used for matching (in place of the corresponding ranges from the bounding boxes) if feature:use_centroid_rt or feature:use_centroid_mz are true. + +Annotation of consensus maps (consensusXML input): +Peptide positions are always matched against centroid positions. By default, the consensus centroids are used. However, if consensusfeature:use_subelements is set, the centroids of sub-features are considered instead. In this case, a peptide identification is mapped to a consensus feature if any of its sub-features matches. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_finder_isotope_wavelet.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_finder_isotope_wavelet.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,41 @@ + + + The feature detection application for quantitation. + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureFinderIsotopeWavelet' --config $config + + + [simple_options] +in=$input1 +out=$output + + + + + + + + + +**What it does** + +This module identifies "features" in a LC/MS map. By feature, we understand a peptide in a MS sample that reveals a characteristic isotope distribution. The algorithm computes positions in rt and m/z dimension and a charge estimate of each peptide. + +The algorithm identifies pronounced regions of the data around so-called seeds. In the next step, we iteratively fit a model of the isotope profile and the retention time to these data points. Data points with a low probability under this model are removed from the feature region. The intensity of the feature is then given by the sum of the data points included in its regions. + +Note: +that the wavelet transform is very slow on high-resolution spectra (i.e. FT, Orbitrap). We recommend to use a noise or intensity filter to remove spurious points first and to speed-up the feature detection process. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_finder_metabo.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_finder_metabo.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,36 @@ + + + Assembles metabolite features from singleton mass traces. + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureFinderMetabo' --config $config + + + [simple_options] +in=$input1 +out=$output + + + + + + + + + +**What it does** + +Mass traces alone would allow for further analyzes such as metabolite ID or statistical evaluation. However, in general, monoisotopic mass traces are accompanied with satellite C13 peaks and thus may render the analysis more difficult. FeatureFinderMetabo fulfills a further data reduction step by assembling compatible mass traces to metabolite features (that is, mass traces all stemming from one metabolite). To this end, multiple metabolite hypotheses are formulated and scored according to how well differences in RT and m/z or intensity ratios match to those of theoretical isotope patterns. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_finder_mrm.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_finder_mrm.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,36 @@ + + + The feature detection application for quantitation. + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureFinderMRM' --config $config + + + [simple_options] +in=$input1 +out=$output + + + + + + + + + +**What it does** + +This module identifies "features" in a LC/MS map. By feature, we understand a peptide in a MS sample that reveals a characteristic isotope distribution. The algorithm computes positions in rt and m/z dimension and a charge estimate of each peptide. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_finder_raw.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_finder_raw.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,44 @@ + + + Identifies peptide features in raw (i.e. profile) LC-MS data. + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureFinderRaw' --config $config + + + [simple_options] +in=$input1 +out=$output +sample!charge=${min_charge}:${max_charge} +sample!peaks_per_peptide=${min_peaks_per_peptide}:${max_peaks_per_peptide} +algorithm!rt_threshold=$rt_threshold +algorithm!rt_min=$rt_min +algorithm!intensity_cutoff=$intensity_cutoff +algorithm!intensity_correlation=$intensity_correlation +algorithm!model_deviation=$model_deviation + + + + + + + + + + +**What it does** + +FeatureFinderRaw is a tool for the identification of peptide features in profile LC-MS data. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_linker_labeled.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_linker_labeled.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,38 @@ + + + Groups corresponding isotope-labeled features in a feature map. + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureLinkedLabeled' --config $config + + + [simple_options] +in=$input1 +out=$output + + + + + + + + + +**What it does** + +This tool provides an algorithm for grouping corresponding features in isotope-labeled experiments. For more details and algorithm-specific parameters (set in the ini file) see "Detailed Description" in the algorithm documentation. + +FeatureLinkerLabeled takes one feature map (featureXML file) and stores the corresponding features in a consensus map (consensusXML file). Feature maps can be created from MS experiments (peak data) using one of the FeatureFinder TOPP tools. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 feature_linker_unlabeled.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/feature_linker_unlabeled.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,51 @@ + + + Groups corresponding features from multiple maps. + + + macros.xml + + + + + openms_wrapper.py --executable 'FeatureLinkedUnlabeled' --config $config + + + [simple_options] +in=$input1 +out=$output + + + + + + + + + + + + + + + + + + + + +**What it does** + +This tool provides an algorithm for grouping corresponding features in multiple runs of label-free experiments. For more details and algorithm-specific parameters (set in the INI file) see "Detailed Description" in the algorithm documentation or the INI file table below. + +FeatureLinkerUnlabeled takes several feature maps (featureXML files) and stores the corresponding features in a consensus map (consensusXML file). Feature maps can be created from MS experiments (peak data) using one of the FeatureFinder TOPP tools. + +Advanced users can convert the consensusXML generated by this tool to EDTA using FileConverter and plot the distribution of distances in RT (or m/z) between different input files (can be done in Excel). The distribution should be Gaussian-like with very few points beyond the tails. Points far away from the Gaussian indicate a too wide tolerance. A Gaussian with its left/right tail trimmed indicates a too narrow tolerance. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 file_info.xml --- a/file_info.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/file_info.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ Shows basic information about the file, such as data ranges and file type. - - openms - + + macros.xml + + + openms_wrapper.py --executable 'FileInfo' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 high_res_precursosr_mass_corrector.xml --- a/high_res_precursosr_mass_corrector.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/high_res_precursosr_mass_corrector.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ precursor m/z correction on picked (centroided) high resolution data. - - openms - + + macros.xml + + + [simple_options] in=${input} diff -r 5c65f8116244 -r cf0d72c7b482 id_file_converter.xml --- a/id_file_converter.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/id_file_converter.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ Converts identification engine file formats. - - openms - + + macros.xml + + + openms_wrapper.py --executable 'IDFileConverter' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 id_filter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/id_filter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,48 @@ + + + Filters protein identification engine results by different criteria. + + + macros.xml + + + + + openms_wrapper.py --executable 'IDFilter' --config $config + + + [simple_options] +in=$input1 +out=$output +score!pep=$peptide_score +score!prot=$protein_score +thresh!pep=$peptide_threshold +thresh!prot=$protein_threshold +best!n_peptide_hits=$n_peptide_hits +best!n_protein_hits=$n_protein_hits + + + + + + + + + + + + + + + +**What it does** + +This tool is used to filter the identifications found by a peptide/protein identification tool like Mascot. Different filters can be applied. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 id_mapper.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/id_mapper.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,90 @@ + + + Assigns protein/peptide identifications to features or consensus features. + + + macros.xml + + + + + openms_wrapper.py --executable 'IDMapper' --config $config + + + [simple_options] +id=$id_input +in=$type.map_input +#set $input_type = str($type.input_type) +#if $input_type == "consensusxml" +consensusfeature!use_subelements=$type.use_subelements +#end if +#if $input_type == "featurexml" +feature!use_centroid_rt=$type.use_centroid_rt +feature!use_centroid_mz=$type.use_centroid_mz +#end if +out=$map_output +rt_tolerance=$rt_tolerance +mz_tolerance=$mz_tolerance +mz_measure=$mz_measure +mz_reference=$mz_reference +ignore_charge=$ignore_charge + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +The mapping is based on retention times and mass-to-charge values. Roughly, a peptide identification is assigned to a (consensus) feature if its position lies within the boundaries of the feature or close enough to the feature centroid. Peptide identifications that don't match anywhere are still recorded in the resulting map, as "unassigned peptides". Protein identifications are annotated to the whole map, i.e. not to any particular (consensus) feature. + +In all cases, tolerance in RT and m/z dimension is applied according to the parameters rt_tolerance and mz_tolerance. Tolerance is understood as "plus or minus x", so the matching range is actually increased by twice the tolerance value. + +If several features or consensus features overlap the position of a peptide identification (taking the allowed tolerances into account), the identification is annotated to all of them. + +Annotation of feature maps (featureXML input): +If all features have at least one convex hull, peptide positions are matched against the bounding boxes of the convex hulls (of individual mass traces, if available) by default. If not, the positions of the feature centroids are used. The respective coordinates of the centroids are also used for matching (in place of the corresponding ranges from the bounding boxes) if feature:use_centroid_rt or feature:use_centroid_mz are true. + +Annotation of consensus maps (consensusXML input): +Peptide positions are always matched against centroid positions. By default, the consensus centroids are used. However, if consensusfeature:use_subelements is set, the centroids of sub-features are considered instead. In this case, a peptide identification is mapped to a consensus feature if any of its sub-features matches. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 id_merger.xml --- a/id_merger.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/id_merger.xml Fri May 10 17:31:05 2013 -0400 @@ -2,27 +2,23 @@ Merges several idXML files into one idXML file. - - openms - + + macros.xml + + + openms_wrapper.py --executable 'IDMerger' --config $config [simple_options] -#set $in_str = "" -#for $input in $inputs -#set $in_str = $input.input + " " $in_str -#end for -in="${in_str}" +in=${",".join(map(str, $inputs))} out=${out} annotate_file_origin=${annotate_file_origin} - - - + diff -r 5c65f8116244 -r cf0d72c7b482 id_posterior_error_probability.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/id_posterior_error_probability.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,45 @@ + + + Tool to estimate the probability of peptide hits to be incorrectly assigned. + + + macros.xml + + + + + openms_wrapper.py --executable 'IDPosteriorErrorProbability' --config $config + + + [simple_options] +in=${input1} +out=${out} +split_charge=${split_charge} +top_hits_only=${top_hits_only} + + + + + + + + + + + + +**What it does** + +By default an estimation is performed using the (inverse) Gumbel distribution for incorrectly assigned sequences and a Gaussian distribution for correctly assigned sequences. The probabilities are calculated by using Bayes' law, similar to PeptideProphet. Alternatively, a second Gaussian distribution can be used for incorrectly assigned sequences. At the moment, IDPosteriorErrorProbability is able to handle X!Tandem, Mascot, MyriMatch and OMSSA scores. + +No target/decoy information needs to be provided, since the model fits are done on the mixed distribution. + +In order to validate the computed probabilities one can adjust the fit_algorithm subsection. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 idxml_exporter.py --- a/idxml_exporter.py Wed Dec 19 00:33:53 2012 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,68 +0,0 @@ -from xml.sax import make_parser, ContentHandler -from optparse import OptionParser - - -def main(): - (options, _) = _parse_args() - with open(options.output, "w") as out: - parser = make_parser() - handler = _get_handler(options, out) - parser.setContentHandler(handler) - parser.parse(open(options.input, "r")) - - -def _get_handler(option, out): - return PeptideHandler(out) - - -class PeptideHandler(ContentHandler): - record_values = { - "IdentificationRun": ["search_engine"], - "PeptideIdentification": ["score_type", "significance_threshold", "MZ", "RT"], - "PeptideHit": ["score", "sequence", "charge"], - } - - def __init__(self, output): - self.output = output - - def __record_values(self, keys, attrs): - for key in keys: - setattr(self, key, attrs.get(key, None)) - - def startElement(self, name, attrs): - self._set_attributes(name, attrs) - - def endElement(self, name): - if name == "PeptideHit": - self._write_peptide() - # reset values for element - self._set_attributes(name, {}) - - def _write_peptide(self): - col_keys = ["score", "peptide", "score_type", "charge", "MZ", "RT"] - row_values = self._get_values(col_keys) - row = "\t".join(row_values) - self._write_line(row) - - def _write_line(self, line): - self.output.write(line) - self.output.write("\n") - - def _get_values(self, keys): - return [getattr(self, key, "") for key in keys] - - def _set_attributes(self, name, attrs): - for element_name, element_attributes in self.record_values.iteritems(): - if name == element_name: - self.__record_values(element_attributes, attrs) - - -def _parse_args(): - parser = OptionParser() - parser.add_option("--input", dest="input") - parser.add_option("--output", dest="output") - parser.add_option("--type", dest="type", choices=["peptide"]) - return parser.parse_args() - -if __name__ == "__main__": - main() diff -r 5c65f8116244 -r cf0d72c7b482 idxml_to_peptides.xml --- a/idxml_to_peptides.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/idxml_to_peptides.xml Fri May 10 17:31:05 2013 -0400 @@ -1,11 +1,13 @@ - - openms - + + macros.xml + + + - idxml_exporter.py --type peptide --in ${in} --out ${out} + openms_exporter.py --type peptide --in ${in} --out ${out} diff -r 5c65f8116244 -r cf0d72c7b482 idxml_to_tabular.xml --- a/idxml_to_tabular.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/idxml_to_tabular.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ Converts identification engine file formats. - - openms - + + macros.xml + + + openms_wrapper.py --executable 'TextExporter' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 isobaric_analyzer.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/isobaric_analyzer.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,112 @@ + + + Extracts and normalizes iTRAQ/TMT information from an MS experiment. + + + macros.xml + + + + + #set $label_type = str($type.label_type) + #if $label_type == "tmt-6plex" + #set $program = "TMTAnalyzer" + #else + #set $program = "ITRAQAnalyzer" + #end if + openms_wrapper.py + --executable '$program' --config $config + + + [simple_options] +in=$input1 +out=$out +Extraction!reporter_mass_shift=$reporter_mass_shift +Extraction!select_activation=$select_activation +Quantification!isotope_correction=$isotope_correction +Quantification!do_normalization=$do_normalization +Quantification!channel_reference=$type.channel_reference + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +Extract the iTRAQ reporter ion intensities (4plex or 8plex) from raw MS2 data, does isotope corrections and stores the resulting quantitation as consensusXML, where each consensus centroid corresponds to one iTRAQ MS2 scan (e.g., HCD). The position of the centroid is the precursor position, its sub-elements are the channels (thus having m/z's of 113-121). + +Isotope correction is done using non-negative least squares (NNLS), i.e., + +Minimize ||Ax - b||, subject to x >= 0, where b is the vector of observed reporter intensities (with 'contaminating' isotope species), A is a correction matrix (as supplied by the manufacturer AB Sciex) and x is the desired vector of corrected (real) reporter intensities. Other software solves this problem using an inverse matrix multiplication, but this can yield entries in x which are negative. In a real sample, this solution cannot possibly be true, so usually negative values (= negative reporter intensities) are set to 0. However, a negative result usually means, that noise was not accounted for thus we use NNLS to get a non-negative solution, without the need to truncate negative values. In (the usual) case that inverse matrix multiplication yields only positive values, our NNLS will give the exact same optimal solution. + +The correction matrices can be found (and changed) in the INI file. However, these matrices for both 4plex and 8plex are now stable, and every kit delivered should have the same isotope correction values. Thus, there should be no need to change them, but feel free to compare the values in the INI file with your kit's Certificate. + +After this quantitation step, you might want to annotate the consensus elements with the respective identifications, obtained from an identification pipeline. Note that quantification is solely on peptide level at this stage. In order to obtain protein quantifications, you can try TextExporter to obtain a simple text format which you can feed to other software tools (e.g., R), or you can try ProteinQuantifier. + + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` and ``PepNovo: De Novo Peptide Sequencing via Probabilistic Network Modeling. Frank, A. and Pevzner, P. Analytical Chemistry 77:964-973, 2005.``. + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 macros.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/macros.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,83 @@ + + + + + + + + + openms + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r 5c65f8116244 -r cf0d72c7b482 myrimatch_adapter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/myrimatch_adapter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,86 @@ + + + + + macros.xml + + + + myrimatch + + + openms_wrapper.py + --executable '__SHELL__' --config $setup + --executable 'MyriMatchAdapter' --config $config + + + + ln -s $input1 'input.mzML'; ln -s $database 'db.fasta' + + [simple_options] +in=input.mzML +database=db.fasta +out=$out +myrimatch_executable=@WHICH(myrimatch)@ +threads=4 +variable_modifications=${variable_modifications or ''} +fixed_modifications=${fixed_modifications or ''} +precursor_mass_tolerance=$precursor_mass_tolerance +precursor_mass_tolerance_unit=$precursor_mass_tolerance_unit +fragment_mass_tolerance=$fragment_mass_tolerance +fragment_mass_tolerance_unit=$fragment_mass_tolerance_unit +min_precursor_charge=$min_precursor_charge +max_precursor_charge=$max_precursor_charge +MaxDynamicMods=$max_dynamic_mods +TicCutoffPercentage=$tic_cutoff_percentage +NumChargeStates=$num_charge_states +CleavageRules=$cleavage_rules +MinTerminiCleavages=$min_termini_cleavages +MaxMissedCleavages=$max_missed_cleavages + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` and ``PepNovo: De Novo Peptide Sequencing via Probabilistic Network Modeling. Frank, A. and Pevzner, P. Analytical Chemistry 77:964-973, 2005.``. + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 noise_filter.xml --- a/noise_filter.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/noise_filter.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ Utilize a filter to reduce the noise in an MS experiment. - - openms - + + macros.xml + + + #if $filter.type == "gaussian" #set $filter_exec = "NoiseFilterGaussian" diff -r 5c65f8116244 -r cf0d72c7b482 omssa_adapter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/omssa_adapter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,92 @@ + + + + + macros.xml + + + + omssa + + + + openms_wrapper.py + --executable '__SHELL__' --config $setup + --executable 'OMSSAAdapter' --config $config + + + + ln -s $database db.fasta; makeblastdb -dbtype prot -parse_seqids -in 'db.fasta' + + [simple_options] +in=$input1 +out=$out +database=db.fasta.psq +omssa_executable=@WHICH(omssacl)@ +variable_modifications=${variable_modifications or ''} +fixed_modifications=${fixed_modifications or ''} +precursor_mass_tolerance=$precursor_mass_tolerance +#if $precursor_mass_tolerance_unit == "ppm" +precursor_mass_tolerance_unit_ppm=true +#end if +fragment_mass_tolerance=$fragment_mass_tolerance +min_precursor_charge=$min_precursor_charge +max_precursor_charge=$max_precursor_charge +v=$v +e=$e +hl=$hl +he=$he +threads=4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` and ``PepNovo: De Novo Peptide Sequencing via Probabilistic Network Modeling. Frank, A. and Pevzner, P. Analytical Chemistry 77:964-973, 2005.``. + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 openms_exporter.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/openms_exporter.py Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,104 @@ +from xml.sax import make_parser, ContentHandler +from optparse import OptionParser + + +def main(): + (options, _) = _parse_args() + with open(options.output, "w") as out: + parser = make_parser() + handler = _get_handler(options)(out) + parser.setContentHandler(handler) + parser.parse(open(options.input, "r")) + + +def _get_handler(options): + return handlers[options.type] + + +class OpenMsContentHandler(ContentHandler): + + def __record_values(self, keys, attrs): + for key in keys: + setattr(self, key, attrs.get(key, None)) + + def _get_values(self, keys): + return [getattr(self, key, "") for key in keys] + + def _set_attributes(self, name, attrs): + for element_name, element_attributes in self.record_values.iteritems(): + if name == element_name: + self.__record_values(element_attributes, attrs) + + def _write_line(self, line): + self.output.write(line) + self.output.write("\n") + + def startElement(self, name, attrs): + self._set_attributes(name, attrs) + + def _handleElement(self, name): + pass + + def endElement(self, name): + self._handleElement(name) + self._set_attributes(name, {}) + + def _write_row(self, col_keys): + row_values = self._get_values(col_keys) + row = "\t".join(row_values) + self._write_line(row) + + +class FeatureHullHandler(OpenMsContentHandler): + record_values = { + "feature": ["id"], + "convexhull": ["nr"], + "pt": ["x", "y"] + } + + def __init__(self, output): + self.output = output + + def _handleElement(self, name): + if name == "pt": + self._write_point() + + def _write_point(self): + col_keys = ["id", "nr", "x", "y"] + self._write_row(col_keys) + + +class PeptideHandler(OpenMsContentHandler): + record_values = { + "IdentificationRun": ["search_engine"], + "PeptideIdentification": ["score_type", "significance_threshold", "MZ", "RT"], + "PeptideHit": ["score", "sequence", "charge"], + } + + def __init__(self, output): + self.output = output + + def _handleElement(self, name): + if name == "PeptideHit": + self._write_peptide() + + def _write_peptide(self): + col_keys = ["score", "sequence", "score_type", "charge", "MZ", "RT"] + self._write_row(col_keys) + + +handlers = { + "peptide": PeptideHandler, + "feature_hull": FeatureHullHandler, +} + + +def _parse_args(): + parser = OptionParser() + parser.add_option("--input", dest="input") + parser.add_option("--output", dest="output") + parser.add_option("--type", dest="type", choices=["peptide", "feature_hull"]) + return parser.parse_args() + +if __name__ == "__main__": + main() diff -r 5c65f8116244 -r cf0d72c7b482 openms_mods.loc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/openms_mods.loc Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,928 @@ +15dB-biotin (C) +2HPG (R) +3sulfo (N-term) +4-ONE (C) +4-ONE (H) +4-ONE (K) +4-ONE+Delta:H(-2)O(-1) (C) +4-ONE+Delta:H(-2)O(-1) (H) +4-ONE+Delta:H(-2)O(-1) (K) +a-type-ion (C-term) +AccQTag (K) +AccQTag (N-term) +Acetyl (C) +Acetyl (H) +Acetyl (K) +Acetyl (N-term) +Acetyl (N-term) +Acetyl (S) +Acetyl (T) +Acetyl (Y) +Acetyl:2H(3) (K) +Acetyl:2H(3) (N-term) +ADP-Ribosyl (C) +ADP-Ribosyl (E) +ADP-Ribosyl (N) +ADP-Ribosyl (R) +ADP-Ribosyl (S) +AEBS (H) +AEBS (K) +AEBS (N-term) +AEBS (S) +AEBS (Y) +AEC-MAEC (S) +AEC-MAEC (T) +AEC-MAEC:2H(4) (S) +AEC-MAEC:2H(4) (T) +Ala->Asp (A) +Ala->Glu (A) +Ala->Gly (A) +Ala->Pro (A) +Ala->Ser (A) +Ala->Thr (A) +Ala->Val (A) +Amidated (C-term) +Amidated (C-term) +Amidine (K) +Amidine (N-term) +Amidino (C) +Amino (Y) +Ammonia-loss (C) +Ammonia-loss (N) +Ammonia-loss (S) +Ammonia-loss (T) +Archaeol (C) +Arg->Cys (R) +Arg->Gln (R) +Arg->GluSA (R) +Arg->Gly (R) +Arg->His (R) +Arg->Ile (R) +Arg->Lys (R) +Arg->Met (R) +Arg->Npo (R) +Arg->Orn (R) +Arg->Pro (R) +Arg->Ser (R) +Arg->Thr (R) +Arg->Trp (R) +Arg2PG (R) +Argbiotinhydrazide (R) +Asn->Asp (N) +Asn->His (N) +Asn->Ile (N) +Asn->Lys (N) +Asn->Ser (N) +Asn->Thr (N) +Asn->Tyr (N) +Asp->Ala (D) +Asp->Asn (D) +Asp->Glu (D) +Asp->Gly (D) +Asp->His (D) +Asp->Tyr (D) +Asp->Val (D) +BADGE (C) +BDMAPP (H) +BDMAPP (K) +BDMAPP (N-term) +BDMAPP (W) +BDMAPP (Y) +Benzoyl (K) +Benzoyl (N-term) +BHT (C) +BHT (H) +BHT (K) +BHTOH (C) +BHTOH (H) +BHTOH (K) +Biotin (K) +Biotin (N-term) +Biotin-HPDP (C) +Biotin-PEO-Amine (C-term) +Biotin-PEO-Amine (D) +Biotin-PEO-Amine (E) +Biotin-PEO4-hydrazide (C-term) +Biotin-phenacyl (C) +Biotin-phenacyl (H) +Biotin-phenacyl (S) +BisANS (K) +BMOE (C) +Bodipy (C) +Bromo (F) +Bromo (H) +Bromo (W) +Bromobimane (C) +C8-QAT (K) +C8-QAT (N-term) +CAF (N-term) +CAMthiopropanoyl (K) +CAMthiopropanoyl (N-term) +Can-FP-biotin (S) +Can-FP-biotin (T) +Can-FP-biotin (Y) +Carbamidomethyl (C) +Carbamidomethyl (D) +Carbamidomethyl (E) +Carbamidomethyl (H) +Carbamidomethyl (K) +Carbamidomethyl (N-term) +Carbamyl (C) +Carbamyl (K) +Carbamyl (M) +Carbamyl (N-term) +Carbamyl (R) +Carboxy (D) +Carboxy (E) +Carboxy (K) +Carboxy (M) +Carboxy (W) +Carboxy->Thiocarboxy (G) +Carboxyethyl (K) +Carboxymethyl (C) +Carboxymethyl (K) +Carboxymethyl (N-term) +Carboxymethyl (W) +Carboxymethyl:13C(2) (C) +Cation:Cu[I] (C-term) +Cation:Cu[I] (D) +Cation:Cu[I] (E) +Cation:K (C-term) +Cation:K (D) +Cation:K (E) +Cation:Na (C-term) +Cation:Na (D) +Cation:Na (E) +cGMP (C) +cGMP+RMP-loss (C) +CHDH (D) +Cholesterol (C-term) +CLIP_TRAQ_1 (K) +CLIP_TRAQ_1 (N-term) +CLIP_TRAQ_1 (Y) +CLIP_TRAQ_2 (K) +CLIP_TRAQ_2 (N-term) +CLIP_TRAQ_2 (Y) +CLIP_TRAQ_3 (K) +CLIP_TRAQ_3 (N-term) +CLIP_TRAQ_3 (Y) +CLIP_TRAQ_4 (K) +CLIP_TRAQ_4 (N-term) +CLIP_TRAQ_4 (Y) +CoenzymeA (C) +Crotonaldehyde (C) +Crotonaldehyde (H) +Crotonaldehyde (K) +CuSMo (C) +Cy3b-maleimide (C) +Cyano (C) +CyDye-Cy3 (C) +CyDye-Cy5 (C) +Cys->Arg (C) +Cys->Dha (C) +Cys->Gly (C) +Cys->Oxoalanine (C) +Cys->Phe (C) +Cys->PyruvicAcid (C) +Cys->Ser (C) +Cys->Trp (C) +Cys->Tyr (C) +Cysteinyl (C) +Cytopiloyne (C) +Cytopiloyne (K) +Cytopiloyne (N-term) +Cytopiloyne (P) +Cytopiloyne (R) +Cytopiloyne (S) +Cytopiloyne (Y) +Cytopiloyne+water (C) +Cytopiloyne+water (K) +Cytopiloyne+water (N-term) +Cytopiloyne+water (R) +Cytopiloyne+water (S) +Cytopiloyne+water (T) +Cytopiloyne+water (Y) +DAET (S) +DAET (T) +Dansyl (K) +Dansyl (N-term) +Deamidated (F) +Deamidated (N) +Deamidated (Q) +Deamidated (R) +Deamidated:18O(1) (N) +Deamidated:18O(1) (Q) +Decanoyl (S) +Decanoyl (T) +Dehydrated (C) +Dehydrated (D) +Dehydrated (N) +Dehydrated (Q) +Dehydrated (S) +Dehydrated (T) +Dehydrated (Y) +Dehydro (C) +Delta:H(1)O(-1)18O(1) (N) +Delta:H(2)C(2) (H) +Delta:H(2)C(2) (K) +Delta:H(2)C(3) (K) +Delta:H(2)C(3)O(1) (K) +Delta:H(2)C(3)O(1) (R) +Delta:H(2)C(5) (K) +Delta:H(4)C(2) (H) +Delta:H(4)C(2) (K) +Delta:H(4)C(2)O(-1)S(1) (S) +Delta:H(4)C(3) (H) +Delta:H(4)C(3) (K) +Delta:H(4)C(3)O(1) (C) +Delta:H(4)C(3)O(1) (H) +Delta:H(4)C(3)O(1) (K) +Delta:H(4)C(6) (K) +Delta:H(5)C(2) (P) +Delta:H(6)C(6)O(1) (K) +Delta:H(8)C(6)O(2) (K) +Delta:Hg(1) (C) +Delta:S(-1)Se(1) (C) +Delta:S(-1)Se(1) (M) +Delta:Se(1) (C) +Deoxy (D) +Deoxy (S) +Deoxy (T) +DeStreak (C) +Dethiomethyl (M) +DFDNB (K) +DFDNB (N) +DFDNB (Q) +DFDNB (R) +dHex (S) +dHex (T) +dHex(1)Hex(3)HexNAc(4) (N) +dHex(1)Hex(4)HexNAc(4) (N) +dHex(1)Hex(5)HexNAc(4) (N) +DHP (C) +Diacylglycerol (C) +Dibromo (Y) +Didehydro (K) +Didehydro (S) +Didehydro (T) +Didehydro (Y) +Didehydroretinylidene (K) +Diethyl (K) +Diethyl (N-term) +Dihydroxyimidazolidine (R) +Diiodo (Y) +Diironsubcluster (C) +Diisopropylphosphate (S) +Diisopropylphosphate (T) +Diisopropylphosphate (Y) +Dimethyl (K) +Dimethyl (N) +Dimethyl (N-term) +Dimethyl (P) +Dimethyl (R) +Dimethyl:2H(4) (K) +Dimethyl:2H(4) (N-term) +Dimethyl:2H(4) (N-term) +Dimethyl:2H(4)13C(2) (K) +Dimethyl:2H(4)13C(2) (N-term) +Dimethyl:2H(6)13C(2) (R) +DimethylpyrroleAdduct (K) +Dioxidation (C) +Dioxidation (F) +Dioxidation (K) +Dioxidation (M) +Dioxidation (P) +Dioxidation (R) +Dioxidation (W) +Dioxidation (Y) +Diphthamide (H) +Dipyrrolylmethanemethyl (C) +dNIC (N-term) +DTBP (K) +DTBP (N) +DTBP (N-term) +DTBP (Q) +DTBP (R) +DTT_C (C) +DTT_C:2H(6) (C) +DTT_ST (S) +DTT_ST (T) +DTT_ST:2H(6) (S) +DTT_ST:2H(6) (T) +EDT-iodoacetyl-PEO-biotin (S) +EDT-iodoacetyl-PEO-biotin (T) +EDT-maleimide-PEO-biotin (S) +EDT-maleimide-PEO-biotin (T) +EQAT (C) +EQAT:2H(5) (C) +EQIGG (K) +ESP (K) +ESP (N-term) +ESP:2H(10) (K) +ESP:2H(10) (N-term) +Ethanedithiol (S) +Ethanedithiol (T) +Ethanolamine (C-term) +Ethanolamine (D) +Ethanolamine (E) +Ethanolyl (C) +Ethyl (E) +Ethyl (K) +Ethyl (N-term) +Ethyl (N-term) +ExacTagAmine (K) +ExacTagThiol (C) +FAD (C) +FAD (H) +FAD (Y) +Farnesyl (C) +Fluorescein (C) +Fluoro (F) +Fluoro (W) +Fluoro (Y) +FMN (S) +FMN (T) +FMNC (C) +FMNH (C) +FMNH (H) +FNEM (C) +Formyl (K) +Formyl (N-term) +Formyl (N-term) +Formyl (S) +Formyl (T) +FormylMet (N-term) +FP-Biotin (S) +FP-Biotin (T) +FP-Biotin (Y) +FTC (C) +FTC (K) +FTC (P) +FTC (R) +FTC (S) +G-H1 (R) +GeranylGeranyl (C) +GIST-Quat (K) +GIST-Quat (N-term) +GIST-Quat:2H(3) (K) +GIST-Quat:2H(3) (N-term) +GIST-Quat:2H(6) (K) +GIST-Quat:2H(6) (N-term) +GIST-Quat:2H(9) (K) +GIST-Quat:2H(9) (N-term) +Gln->Arg (Q) +Gln->Glu (Q) +Gln->His (Q) +Gln->Leu (Q) +Gln->Lys (Q) +Gln->Pro (Q) +Gln->pyro-Glu (Q) +Glu (C-term) +Glu (E) +Glu->Ala (E) +Glu->Asp (E) +Glu->Gln (E) +Glu->Gly (E) +Glu->Lys (E) +Glu->pyro-Glu (E) +Glu->Val (E) +Glucosylgalactosyl (K) +Glucuronyl (N-term) +Glucuronyl (S) +GluGlu (C-term) +GluGlu (E) +GluGluGlu (C-term) +GluGluGlu (E) +GluGluGluGlu (C-term) +GluGluGluGlu (E) +Glutathione (C) +Gly->Ala (G) +Gly->Arg (G) +Gly->Asp (G) +Gly->Cys (G) +Gly->Glu (G) +Gly->Ser (G) +Gly->Trp (G) +Gly->Val (G) +Gly-loss+Amide (G) +Glycerophospho (S) +GlycerylPE (E) +Glycosyl (P) +GlyGly (C) +GlyGly (K) +GlyGly (S) +GlyGly (T) +GPIanchor (C-term) +Guanidinyl (K) +Heme (C) +Heme (H) +Hep (K) +Hep (N) +Hep (Q) +Hep (R) +Hep (S) +Hep (T) +Hex (C) +Hex (K) +Hex (N) +Hex (N-term) +Hex (R) +Hex (T) +Hex (W) +Hex (Y) +Hex(1)HexNAc(1)dHex(1) (N) +Hex(1)HexNAc(1)NeuAc(1) (N) +Hex(1)HexNAc(1)NeuAc(1) (S) +Hex(1)HexNAc(1)NeuAc(1) (T) +Hex(1)HexNAc(1)NeuAc(2) (N) +Hex(1)HexNAc(1)NeuAc(2) (S) +Hex(1)HexNAc(1)NeuAc(2) (T) +Hex(1)HexNAc(2) (N) +Hex(1)HexNAc(2)dHex(1) (N) +Hex(1)HexNAc(2)dHex(1)Pent(1) (N) +Hex(1)HexNAc(2)dHex(2) (N) +Hex(1)HexNAc(2)Pent(1) (N) +Hex(2) (K) +Hex(2) (R) +Hex(2)HexNAc(2) (N) +Hex(2)HexNAc(2)dHex(1) (N) +Hex(2)HexNAc(2)Pent(1) (N) +Hex(3) (N) +Hex(3)HexNAc(1)Pent(1) (N) +Hex(3)HexNAc(2) (N) +Hex(3)HexNAc(2)P(1) (N) +Hex(3)HexNAc(4) (N) +Hex(4)HexNAc(4) (N) +Hex(5)HexNAc(2) (N) +Hex(5)HexNAc(4) (N) +Hex1HexNAc1 (S) +Hex1HexNAc1 (T) +HexN (K) +HexN (N) +HexN (T) +HexN (W) +HexNAc (N) +HexNAc (S) +HexNAc (T) +HexNAc(1)dHex(1) (N) +HexNAc(1)dHex(2) (N) +HexNAc(2) (N) +HexNAc(2)dHex(1) (N) +HexNAc(2)dHex(2) (N) +His->Arg (H) +His->Asn (H) +His->Asp (H) +His->Gln (H) +His->Leu (H) +His->Pro (H) +His->Tyr (H) +HMVK (C) +HNE (C) +HNE (H) +HNE (K) +HNE+Delta:H(2) (C) +HNE+Delta:H(2) (H) +HNE+Delta:H(2) (K) +HNE-Delta:H(2)O (C) +HNE-Delta:H(2)O (H) +HNE-Delta:H(2)O (K) +HPG (R) +Hydroxycinnamyl (C) +Hydroxyfarnesyl (C) +Hydroxyheme (E) +Hydroxymethyl (N) +Hydroxytrimethyl (K) +Hypusine (K) +IBTP (C) +ICAT-C (C) +ICAT-C:13C(9) (C) +ICAT-D (C) +ICAT-D:2H(8) (C) +ICAT-G (C) +ICAT-G:2H(8) (C) +ICAT-H (C) +ICAT-H:13C(6) (C) +ICPL (K) +ICPL (N-term) +ICPL (N-term) +ICPL:13C(6) (K) +ICPL:13C(6) (N-term) +ICPL:13C(6) (N-term) +ICPL:13C(6)2H(4) (K) +ICPL:13C(6)2H(4) (N-term) +ICPL:13C(6)2H(4) (N-term) +ICPL:2H(4) (K) +ICPL:2H(4) (N-term) +ICPL:2H(4) (N-term) +IDEnT (C) +IED-Biotin (C) +IGBP (C) +IGBP:13C(2) (C) +Ile->Arg (I) +Ile->Asn (I) +Ile->Lys (I) +Ile->Met (I) +Ile->Phe (I) +Ile->Ser (I) +Ile->Thr (I) +Ile->Val (I) +IMID (K) +IMID:2H(4) (K) +Iminobiotin (K) +Iminobiotin (N-term) +Iodo (H) +Iodo (Y) +IodoU-AMP (F) +IodoU-AMP (W) +IodoU-AMP (Y) +Isopropylphospho (S) +Isopropylphospho (T) +Isopropylphospho (Y) +iTRAQ4plex (K) +iTRAQ4plex (N-term) +iTRAQ4plex (Y) +iTRAQ4plex114 (K) +iTRAQ4plex114 (N-term) +iTRAQ4plex114 (Y) +iTRAQ4plex115 (K) +iTRAQ4plex115 (N-term) +iTRAQ4plex115 (Y) +iTRAQ8plex (K) +iTRAQ8plex (N-term) +iTRAQ8plex (Y) +iTRAQ8plex:13C(6)15N(2) (K) +iTRAQ8plex:13C(6)15N(2) (N-term) +iTRAQ8plex:13C(6)15N(2) (Y) +Label:13C(1)2H(3) (M) +Label:13C(5) (P) +Label:13C(5)15N(1) (V) +Label:13C(6) (I) +Label:13C(6) (K) +Label:13C(6) (L) +Label:13C(6) (R) +Label:13C(6)+Acetyl (K) +Label:13C(6)+GlyGly (K) +Label:13C(6)15N(1) (I) +Label:13C(6)15N(1) (L) +Label:13C(6)15N(2) (K) +Label:13C(6)15N(2)+Acetyl (K) +Label:13C(6)15N(2)+GlyGly (K) +Label:13C(6)15N(4) (R) +Label:13C(8)15N(2) (R) +Label:13C(9) (F) +Label:13C(9) (Y) +Label:13C(9)+Phospho (Y) +Label:13C(9)15N(1) (F) +Label:18O(1) (C-term) +Label:18O(1) (S) +Label:18O(1) (T) +Label:18O(1) (Y) +Label:18O(2) (C-term) +Label:2H(3) (L) +Label:2H(4) (K) +Label:2H(4)+Acetyl (K) +Label:2H(4)+GlyGly (K) +Label:2H(9)13C(6)15N(2) (K) +lapachenole (C) +Leu->Arg (L) +Leu->Gln (L) +Leu->His (L) +Leu->Met (L) +Leu->Phe (L) +Leu->Pro (L) +Leu->Ser (L) +Leu->Trp (L) +Leu->Val (L) +LeuArgGlyGly (K) +LG-Hlactam-K (K) +LG-Hlactam-K (N-term) +LG-Hlactam-R (R) +LG-lactam-K (K) +LG-lactam-K (N-term) +LG-lactam-R (R) +Lipoyl (K) +Lys->Allysine (K) +Lys->AminoadipicAcid (K) +Lys->Arg (K) +Lys->Asn (K) +Lys->Gln (K) +Lys->Glu (K) +Lys->Ile (K) +Lys->Met (K) +Lys->Thr (K) +Lys-loss (K) +Lysbiotinhydrazide (K) +maleimide (C) +maleimide (K) +Maleimide-PEO2-Biotin (C) +Malonyl (C) +Malonyl (S) +Menadione (C) +Menadione (K) +Menadione-HQ (C) +Menadione-HQ (K) +Met->Arg (M) +Met->Hse (M) +Met->Hsl (M) +Met->Ile (M) +Met->Leu (M) +Met->Lys (M) +Met->Thr (M) +Met->Val (M) +Met-loss (M) +Met-loss+Acetyl (M) +Methyl (C) +Methyl (C-term) +Methyl (D) +Methyl (E) +Methyl (H) +Methyl (I) +Methyl (K) +Methyl (L) +Methyl (N) +Methyl (N-term) +Methyl (N-term) +Methyl (Q) +Methyl (R) +Methyl (S) +Methyl (T) +Methyl+Acetyl:2H(3) (K) +Methyl+Deamidated (N) +Methyl+Deamidated (Q) +Methyl:2H(2) (K) +Methyl:2H(3) (C-term) +Methyl:2H(3) (D) +Methyl:2H(3) (E) +Methyl:2H(3)13C(1) (R) +Methylamine (S) +Methylamine (T) +Methylphosphonate (S) +Methylphosphonate (T) +Methylphosphonate (Y) +Methylpyrroline (K) +Methylthio (C) +Methylthio (D) +Methylthio (N) +MG-H1 (R) +Microcin (C-term) +MicrocinC7 (C-term) +Molybdopterin (C) +MolybdopterinGD (C) +MolybdopterinGD (D) +MolybdopterinGD+Delta:S(-1)Se(1) (C) +Myristoleyl (G) +Myristoyl (C) +Myristoyl (G) +Myristoyl (K) +Myristoyl+Delta:H(-4) (G) +NA-LNO2 (C) +NA-LNO2 (H) +NA-OA-NO2 (C) +NA-OA-NO2 (H) +NBS (W) +NBS:13C(6) (W) +NDA (K) +NDA (N-term) +NEIAA (C) +NEIAA (Y) +NEIAA:2H(5) (C) +NEIAA:2H(5) (Y) +NEM:2H(5) (C) +Nethylmaleimide (C) +Nethylmaleimide+water (C) +Nethylmaleimide+water (K) +NHS-LC-Biotin (K) +NHS-LC-Biotin (N-term) +NIC (N-term) +NIPCAM (C) +Nitro (W) +Nitro (Y) +Nitrosyl (C) +Nmethylmaleimide (C) +Nmethylmaleimide (K) +Nmethylmaleimide+water (C) +NO_SMX_SEMD (C) +NO_SMX_SIMD (C) +NO_SMX_SMCT (C) +O-Diethylphosphate (S) +O-Diethylphosphate (T) +O-Diethylphosphate (Y) +O-Dimethylphosphate (S) +O-Dimethylphosphate (T) +O-Dimethylphosphate (Y) +O-Ethylphosphate (S) +O-Ethylphosphate (T) +O-Ethylphosphate (Y) +O-Isopropylmethylphosphonate (S) +O-Isopropylmethylphosphonate (T) +O-Isopropylmethylphosphonate (Y) +O-Methylphosphate (S) +O-Methylphosphate (T) +O-Methylphosphate (Y) +O-pinacolylmethylphosphonate (S) +O-pinacolylmethylphosphonate (T) +O-pinacolylmethylphosphonate (Y) +Octanoyl (S) +Octanoyl (T) +OxArgBiotin (R) +OxArgBiotinRed (R) +Oxidation (C) +Oxidation (D) +Oxidation (F) +Oxidation (G) +Oxidation (H) +Oxidation (K) +Oxidation (M) +Oxidation (N) +Oxidation (P) +Oxidation (R) +Oxidation (W) +Oxidation (Y) +OxLysBiotin (K) +OxLysBiotinRed (K) +OxProBiotin (P) +OxProBiotinRed (P) +Palmitoleyl (C) +Palmitoyl (C) +Palmitoyl (K) +Palmitoyl (N-term) +Palmitoyl (S) +Palmitoyl (T) +Pentylamine (Q) +PentylamineBiotin (Q) +PEO-Iodoacetyl-LC-Biotin (C) +PET (S) +PET (T) +PGA1-biotin (C) +Phe->Cys (F) +Phe->Ile (F) +Phe->Ser (F) +Phe->Tyr (F) +Phe->Val (F) +Phenylisocyanate (N-term) +Phenylisocyanate:2H(5) (N-term) +Phospho (C) +Phospho (D) +Phospho (H) +Phospho (R) +Phospho (S) +Phospho (T) +Phospho (Y) +Phosphoadenosine (H) +Phosphoadenosine (K) +Phosphoadenosine (T) +Phosphoadenosine (Y) +Phosphoguanosine (H) +Phosphoguanosine (K) +PhosphoHex (S) +PhosphoHexNAc (S) +Phosphopantetheine (S) +PhosphoribosyldephosphoCoA (S) +PhosphoUridine (H) +PhosphoUridine (Y) +Phycocyanobilin (C) +Phycoerythrobilin (C) +Phytochromobilin (C) +Piperidine (K) +Piperidine (N-term) +Pro->Ala (P) +Pro->Arg (P) +Pro->Gln (P) +Pro->His (P) +Pro->Leu (P) +Pro->pyro-Glu (P) +Pro->Pyrrolidinone (P) +Pro->Pyrrolidone (P) +Pro->Ser (P) +Pro->Thr (P) +probiotinhydrazide (P) +Propionamide (C) +Propionamide:2H(3) (C) +Propionyl (K) +Propionyl (N-term) +Propionyl:13C(3) (K) +Propionyl:13C(3) (N-term) +PropylNAGthiazoline (C) +PyMIC (N-term) +PyridoxalPhosphate (K) +Pyridylacetyl (K) +Pyridylacetyl (N-term) +Pyridylethyl (C) +Pyro-carbamidomethyl (C) +PyruvicAcidIminyl (C) +PyruvicAcidIminyl (K) +PyruvicAcidIminyl (V) +QAT (C) +QAT:2H(3) (C) +QEQTGG (K) +QQQTGG (K) +Quinone (W) +Quinone (Y) +Retinylidene (K) +Ser->Ala (S) +Ser->Arg (S) +Ser->Asn (S) +Ser->Cys (S) +Ser->Gly (S) +Ser->Ile (S) +Ser->LacticAcid (S) +Ser->Phe (S) +Ser->Pro (S) +Ser->Thr (S) +Ser->Trp (S) +Ser->Tyr (S) +SMA (K) +SMA (N-term) +SPITC (K) +SPITC (N-term) +SPITC:13C(6) (K) +SPITC:13C(6) (N-term) +Succinyl (K) +Succinyl (N-term) +Succinyl (N-term) +Succinyl:13C(4) (K) +Succinyl:13C(4) (N-term) +Succinyl:2H(4) (K) +Succinyl:2H(4) (N-term) +SulfanilicAcid (C-term) +SulfanilicAcid (D) +SulfanilicAcid (E) +SulfanilicAcid:13C(6) (C-term) +SulfanilicAcid:13C(6) (D) +SulfanilicAcid:13C(6) (E) +Sulfide (C) +Sulfo (C) +Sulfo (S) +Sulfo (T) +Sulfo (Y) +Sulfo-NHS-LC-LC-Biotin (K) +Sulfo-NHS-LC-LC-Biotin (N-term) +Thioacyl (K) +Thioacyl (N-term) +Thiophos-S-S-biotin (S) +Thiophos-S-S-biotin (T) +Thiophos-S-S-biotin (Y) +Thiophospho (S) +Thiophospho (T) +Thiophospho (Y) +Thr->Ala (T) +Thr->Arg (T) +Thr->Asn (T) +Thr->Ile (T) +Thr->Lys (T) +Thr->Met (T) +Thr->Pro (T) +Thr->Ser (T) +Thrbiotinhydrazide (T) +Thyroxine (Y) +TMAB (K) +TMAB (N-term) +TMAB:2H(9) (K) +TMAB:2H(9) (N-term) +TMPP-Ac (N-term) +TMT (K) +TMT (N-term) +TMT2plex (K) +TMT2plex (N-term) +TMT6plex (K) +TMT6plex (N-term) +TNBS (K) +TNBS (N-term) +trifluoro (L) +Triiodo (Y) +Triiodothyronine (Y) +Trimethyl (A) +Trimethyl (K) +Trimethyl (R) +Trioxidation (C) +Tripalmitate (C) +Trp->Arg (W) +Trp->Cys (W) +Trp->Gly (W) +Trp->Hydroxykynurenin (W) +Trp->Kynurenin (W) +Trp->Leu (W) +Trp->Oxolactone (W) +Trp->Ser (W) +Tyr->Asn (Y) +Tyr->Asp (Y) +Tyr->Cys (Y) +Tyr->Dha (Y) +Tyr->His (Y) +Tyr->Phe (Y) +Tyr->Ser (Y) +Val->Ala (V) +Val->Asp (V) +Val->Glu (V) +Val->Gly (V) +Val->Ile (V) +Val->Met (V) +Val->Phe (V) +Xlink:B10621 (C) +Xlink:DMP (K) +Xlink:DMP (N-term) +Xlink:DMP-s (K) +Xlink:DMP-s (N-term) +Xlink:SSD (K) +ZGB (K) +ZGB (N-term) diff -r 5c65f8116244 -r cf0d72c7b482 openms_wrapper.py --- a/openms_wrapper.py Wed Dec 19 00:33:53 2012 -0500 +++ b/openms_wrapper.py Fri May 10 17:31:05 2013 -0400 @@ -4,6 +4,7 @@ from ConfigParser import SafeConfigParser from xml.etree import ElementTree import subprocess +from re import compile DEBUG = False @@ -11,7 +12,15 @@ def main(): (options, args) = _parse_args() for executable, config_path in zip(options.executables, options.configs): - _run_openms(executable, config_path) + command_handler = COMMAND_HANDLERS.get(executable, _run_openms) + command_handler(executable, config_path) + + +def _run_shell(executable, config_path): + command = open(config_path, "r").read().strip() + if DEBUG: + print "Running shell command %s" % command + _exec(command) def _run_openms(executable, config_path): @@ -24,18 +33,31 @@ print 'With openms.ini as:\n%s\n, calling: %s -ini openms.ini' % (open("openms.ini", "r").read(), executable) _exec("%s -ini openms.ini" % executable) +COMMAND_HANDLERS = { + "__SHELL__": _run_shell, +} + + +def _fail(message, return_code=1): + print message + sys.exit(return_code) + def _exec(command): proc = subprocess.Popen(args=command, shell=True) return_code = proc.wait() if return_code != 0: - sys.exit(return_code) + _fail("Error executing command [%s], return code is %d" % (command, return_code), return_code) def _set_options(tree, executable, options): executable_node = tree.find("./NODE[@name='%s']" % executable) + if executable_node is None: + _fail("Could not find options for executable %s" % executable) options_node = executable_node.find("./NODE[@name='1']") for key, raw_value in options.items("simple_options"): + if raw_value is None: + _fail("No value found key %s" % key) value = _parse_value(raw_value) _set_option(options_node, key.split("!"), value) _set_option(options_node, ["no_progress"], "true", required=False) @@ -44,26 +66,53 @@ def _set_option(node, key_parts, value, required=True): key = key_parts[0] if len(key_parts) == 1: - item = node.find("./ITEM[@name='%s']" % key) - if item is not None: - item.set("value", value) - elif required: - raise Exception("Failed to find specific OpenMS option [%s] in node [%s]" % (key, node)) + if not _set_item_value(node, key, value) and \ + not _set_list_item_value(node, key, value) and \ + required: + _fail("Failed to find specific OpenMS option [%s] in node [%s]" % (key, node)) else: + if not node: + _fail("Failed to find specific OpenMS option [%s] in node [%s]" % (key, node)) sub_node = node.find("./NODE[@name='%s']" % key) + if not sub_node: + _fail("Failed to find node for key %s" % key) _set_option(sub_node, key_parts[1:], value, required) +def _set_item_value(node, key, value): + item = node.find("./ITEM[@name='%s']" % key) + if item is not None: + item.set("value", value) + return item is not None + + +def _set_list_item_value(node, key, values): + item = node.find("./ITEMLIST[@name='%s']" % key) + if item is not None: + for value in values.split(","): + ElementTree.SubElement(item, "LISTITEM", {"value": value}) + return item is not None + + def _parse_value(raw_value): value = raw_value - if raw_value in VALUE_FUNCTIONS: - value = VALUE_FUNCTIONS[raw_value](raw_value) + for pattern, function in VALUE_FUNCTIONS.iteritems(): + try: + match = pattern.match(value) + except TypeError: + print "Invalid value found config file %s" % value + sys.exit(1) + if match: + value = function(*match.groups()) + if value is None: + print "Failed to properly parse raw value %s" % raw_value + sys.exit(1) return value ## Special value parser for various OpenMS components -def _get_pepnovo_models_path(_): - pepnovo_path = _get_pepnovo_executable_path(None) +def _get_pepnovo_models_path(): + pepnovo_path = _which('PepNovo') pepnovo_dir = os.path.split(pepnovo_path)[0] guesses = [os.path.join(pepnovo_dir, 'Models'), os.path.join(pepnovo_dir, '..', 'Models'), @@ -76,13 +125,6 @@ return models_dir -def _get_pepnovo_executable_path(_): - return _which("PepNovo") - -VALUE_FUNCTIONS = {"@PEPNOVO_MODELS_PATH@": _get_pepnovo_models_path, - "@PEPNOVO_EXECUTABLE_PATH@": _get_pepnovo_executable_path} - - # http://stackoverflow.com/questions/377017/test-if-executable-exists-in-python def _which(program): @@ -96,12 +138,18 @@ else: for path in os.environ["PATH"].split(os.pathsep): exe_file = os.path.join(path, program) + print path if is_exe(exe_file): return exe_file return None +VALUE_FUNCTIONS = {compile(r"\@WHICH\((.*)\)\@"): _which, + compile(r"\@PEPNOVO_MODELS_PATH\@"): _get_pepnovo_models_path, + } + + def _parse_args(): parser = OptionParser() parser.add_option("-e", "--executable", dest="executables", default=[], action="append") @@ -111,6 +159,7 @@ def _load_options(config_path): config_parser = SafeConfigParser() + config_parser.optionxform = str config_parser.read(config_path) return config_parser diff -r 5c65f8116244 -r cf0d72c7b482 peak_file_converter.xml --- a/peak_file_converter.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/peak_file_converter.xml Fri May 10 17:31:05 2013 -0400 @@ -19,16 +19,16 @@ - - - - + + + + - + diff -r 5c65f8116244 -r cf0d72c7b482 peak_file_filter.xml --- a/peak_file_filter.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/peak_file_filter.xml Fri May 10 17:31:05 2013 -0400 @@ -2,9 +2,11 @@ Extract portions of peak lists. - - openms - + + macros.xml + + + openms_wrapper.py --executable 'FileFilter' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 peak_list_preprocessor.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/peak_list_preprocessor.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,211 @@ + + + Wizard to apply multiple OpenMS signal preprocessing tools for peak lists. + + + macros.xml + + + + + cp '$input' 'output.mzML' + mv 'output.mzML' 'input.mzML' + mv 'output.mzML' '$output' + [simple_options] +#if $resample.do +in=input.mzML +out=output.mzML +sampling_rate=$resample.sampling_rate +#end if + + [simple_options] +#set $noise_filter_type = str($noise.type) +in=input.mzML +out=output.mzML +#if $noise_filter_type == 'NoiseFilterGaussian' + +#end if +#if $noise_filter_type == 'NoiseFilterSGolay' + +#end if + + [simple_options] +in=input.mzML +out=output.mzML +#if $baseline.do + +#end if + + [simple_options] +#set $peak_picker_type = str($peak_picker.type) +in=input.mzML +out=output.mzML +#if $peak_picker_type == 'PeakPickerHiRes' +algorithm!signal_to_noise=$peak_picker.signal_to_noise +algorithm!ms1_only=$peak_picker.ms1_only +#end if +#if $peak_picker_type == 'PeakPickerWavelet' +algorithm!signal_to_noise=$peak_picker.signal_to_noise +#if $peak_picker.peak_width.estimate +algorithm!estimate_peak_width=true +#else +algorithm!estimate_peak_width=false +algorithm!peak_width=$peak_picker.peak_width.peak_width +#end if +#end if + + [simple_options] +in=input.mzML +out=output.mzML + + [simple_options] +in=input.mzML +out=output.mzML +#set $spectra_filter_type = str($spectra_filter.type) + + + + openms_wrapper.py + --executable '__SHELL__' --config $setup_input + #if $resample.do + --executable '__SHELL__' --config $rename + --executable 'Resampler' --config $resampler_config + #end if + #set $noise_filter_type = str($noise.type) + #if $noise_filter_type != "none" + --executable '__SHELL__' --config $rename + --executable '$noise_filter_type' --config $noise_filter_config + #end if + #if $baseline.do + --executable '__SHELL__' --config $rename + --executable 'BaselineFilter' --config $baseline_config + #end if + #set $peak_picker_type = str($peak_picker.type) + #if $peak_picker_type != "none" + --executable '__SHELL__' --config $rename + --executable '$peak_picker_type' --config $peak_picker_config + #if $peak_picker_type == "PeakPickerHiRes" + #if $peak_picker.use_high_res_mass_corrector + --executable '__SHELL__' --config $rename + --executable 'HighResPrecursorMassCorrector' --config $mass_corrector_config + #end if + #end if + #end if + #set $spectra_filter_type = str($spectra_filter.type) + #if $spectra_filter_type != "none" + --executable '__SHELL__' --config $rename + --executable '$spectra_filter_type' --config $spectra_filter_config + #end if + --executable '__SHELL__' --config $copy_output + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 peak_picker_hi_res.xml --- a/peak_picker_hi_res.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/peak_picker_hi_res.xml Fri May 10 17:31:05 2013 -0400 @@ -1,9 +1,11 @@ - - openms - + + macros.xml + + + openms_wrapper.py --executable 'PeakPickerHiRes' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 pepnovo_adapter.xml --- a/pepnovo_adapter.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/pepnovo_adapter.xml Fri May 10 17:31:05 2013 -0400 @@ -1,11 +1,13 @@ - - - openms + + macros.xml + + + pepnovo - + openms_wrapper.py #if $input_block.do_clean @@ -22,17 +24,18 @@ #end if out=${out} model_directory=@PEPNOVO_MODELS_PATH@ -pepnovo_executable=@PEPNOVO_EXECUTABLE_PATH@ +pepnovo_executable=@WHICH(PepNovo)@ temp_data_directory=. model=${model} digest=${digest} -#if $corrections != "none" +num_solutions=${num_solutions} +#if str($corrections) != "none" correct_pm=true #end if -#if $corrections == "mass" +#if str($corrections) == "mass" use_spectrum_charge=true #end if -#if $corrections == "mz" +#if str($corrections) == "mz" use_spectrum_mz=true #end if $quality_filter @@ -42,6 +45,14 @@ #if $override_fragment.do_override fragment_tolerance=${override_fragment.fragment_tolerance} #end if +#set $fixed_mods_str=",".join([str($fixed_mod.fixed_mod) for $fixed_mod in $fixed_mods]) +#if $fixed_mods_str +fixed_modifications=$fixed_mods_str +#end if +#set $variable_mods_str=",".join([str($variable_mod.variable_mod) for $variable_mod in $variable_mods]) +#if $variable_mods_str +variable_modifications=$variable_mods_str +#end if [simple_options] in=${input_block.input1} @@ -52,7 +63,7 @@ - + @@ -76,6 +87,22 @@ + + + + + + + + + + + + + + + + @@ -97,6 +124,9 @@ + + + diff -r 5c65f8116244 -r cf0d72c7b482 peptide_indexer.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/peptide_indexer.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,70 @@ + + + Refreshes the protein references for all peptide hits from a idXML file. + + + macros.xml + + + + + openms_wrapper.py --executable 'PeptideIndexer' --config $config + + + [simple_options] +in=$input1 +fasta=$database +out=$output +decoy_string=$decoy_string +#if $decoy_string_position == "prefix" +prefix=true +#end if +$extact_search +$write_protein_sequence +$keep_unreferenced_proteins +aaa_max=$aaa_max + + + + + + + + + + + + + + + + + + + +**What it does** + +Each peptide hit is annotated by a target_decoy string, indicating if the peptide sequence is found in a 'target', a 'decoy' or in both 'target+decoy' protein. This information is crucial for the FalseDiscoveryRate IDPosteriorErrorProbability tools. + +Note: +Make sure that your protein names in the database contain a correctly formatted decoy string. This can be ensured by using DecoyDatabase. If the decoy identifier is not recognized successfully all proteins will be assumed to stem from the target-part of the query. +E.g., "sw|P33354_REV|YEHR_ECOLI Uncharacterized lipop..." is invalid, since the tool has no knowledge of how SwissProt entries are build up. A correct identifier could be "rev_sw|P33354|YEHR_ECOLI Uncharacterized li ..." or "sw|P33354|YEHR_ECOLI_rev Uncharacterized li", depending on if you are using prefix annotation or not. +This tool will also give you some target/decoy statistics when its done. Look carefully! + +By default the tool will fail, if an unmatched peptide occurs, i.e. the database does not contain the corresponding protein. You can force the tool to return successfully in this case by using the flag 'allow_unmatched'. + +Some search engines (such as Mascot) will replace ambiguous AA's in the protein database with unambiguous AA' in the reported peptides, e.g., exchange 'X' with 'H'. This will cause this peptide not to be found by exactly matching its sequence. However, we can recover these cases by using tolerant search in these cases (done automatically). In all cases we require ambiguous AA's in peptide sequence to match exactly in the protein DB (i.e., 'X' in peptide only matches 'X'). + +Two search modes are available: + +exact: Peptide sequences require exact match in protein database. If no protein for this peptide can be found, tolerant matching is automatically used for this peptide. Thus, the results for these peptides are identical for both search modes. +tolerant: Allow ambiguous AA's in protein sequence, e.g., 'M' in peptide will match 'X' in protein. This mode might yield more protein hits for some peptides (even though they have exact matches as well). +The exact mode is much faster (about x10) and consumes less memory (about x2.5), but might fail to report a few proteins with ambiguous AAs for some peptides. Usually these proteins are putative, however. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 pepxml_protxml_merger.xml --- a/pepxml_protxml_merger.xml Wed Dec 19 00:33:53 2012 -0500 +++ b/pepxml_protxml_merger.xml Fri May 10 17:31:05 2013 -0400 @@ -1,9 +1,11 @@ - - openms - + + macros.xml + + + openms_wrapper.py --executable 'IDMerger' --config $config diff -r 5c65f8116244 -r cf0d72c7b482 protein_inference.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/protein_inference.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,42 @@ + + + Computes a protein identification based on the number of identified peptides. + + + macros.xml + + + + + openms_wrapper.py --executable 'PeptideIndexer' --config $config + + + [simple_options] +in=$input1 +out=$output +min_peptides_per_protein=${min_peptides_per_protein} +treat_charge_variants_separately=${treat_charge_variants_separately} +treat_modification_variants_separately=${treat_modification_variants_separately} + + + + + + + + + + + + +**What it does** + +This tool counts the peptide sequences that match a protein accession. From this count for all protein hits in the respective id run, only those proteins are accepted that have at least a given number of peptides sequences identified. The peptide identifications should be prefiltered with respect to false discovery rate and the score in general to remove bad identifications. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 protein_quantifier.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/protein_quantifier.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,62 @@ + + + Compute peptide and protein abundances from annotated feature/consensus maps. + + + macros.xml + + + + + openms_wrapper.py --executable 'ProteinQuantifier' --config $config + + + [simple_options] +in=$map_input +#if $protein_prophet.use +protxml=$protxml +#end if +out=$protein_output +peptide_out=$peptide_output +top=$top +format!quoting=none + + + + + + + + + + + + + + + + + + + +**What it does** + +Quantification is based on the intensity values of the features in the input. Feature intensities are first accumulated to peptide abundances, according to the peptide identifications annotated to the features/feature groups. Then, abundances of the peptides of a protein are averaged to compute the protein abundance. + +The peptide-to-protein step uses the (e.g. 3) most abundant proteotypic peptides per protein to compute the protein abundances. This is a general version of the "top 3 approach" (but only for relative quantification) described in: +Silva et al.: Absolute quantification of proteins by LCMSE: a virtue of parallel MS acquisition (Mol. Cell. Proteomics, 2006, PMID: 16219938). + +Only features/feature groups with unambiguous peptide annotation are used for peptide quantification, and generally only proteotypic peptides (i.e. those matching to exactly one protein) are used for protein quantification. As an exception to this rule, if ProteinProphet results for the whole sample set are provided with the protxml option, or are already included in a featureXML input, also groups of indistinguishable proteins will be quantified. The reported quantity then refers to the total for the whole group. + +Peptide/protein IDs from multiple identification runs can be handled, but will not be differentiated (i.e. protein accessions for a peptide will be accumulated over all identification runs). + +Peptides with the same sequence, but with different modifications are quantified separately on the peptide level, but treated as one peptide for the protein quantification (i.e. the contributions of differently-modified variants of the same peptide are accumulated). + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` +and ``Weisser et al.: An automated pipeline for high-throughput label-free quantitative proteomics (J. Proteome Res., 2013, PMID: 23391308). doi:10.1021/pr300992u`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 silac_analyzer.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/silac_analyzer.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,74 @@ + + + + + macros.xml + + + + + openms_wrapper.py + --executable 'SILACAnalyzer' --config $config + + + [simple_options] +in=$input1 +out=$out +sample!labels=[${labels}] +sample!missed_cleavages=${missed_cleavages} +sample!charge=${min_charge}:${max_charge} +sample!peaks_per_peptide=${min_peaks_per_peptide}:${max_peaks_per_peptide} +algorithm!rt_threshold=$rt_threshold +algorithm!rt_min=$rt_min +algorithm!intensity_cutoff=$intensity_cutoff +algorithm!intensity_correlation=$intensity_correlation +algorithm!model_deviation=$model_deviation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` and ``PepNovo: De Novo Peptide Sequencing via Probabilistic Network Modeling. Frank, A. and Pevzner, P. Analytical Chemistry 77:964-973, 2005.``. + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 text_exporter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/text_exporter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,125 @@ + + + + + macros.xml + + + + + openms_wrapper.py \ + --executable '__SHELL__' --config $link \ + --executable 'TextExporter' --config $config + + + ln -s '${type.input}' 'input.${type.input.ext}' + [simple_options] +in=input.${type.input.ext} +out=${out} +#set $input_type = str($type.input_type) +#if $input_type == "featurexml" +feature!minimal=${type.minimal} +#end if +no_ids=${no_ids} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + +The goal of this tool is to create output in a table format that is easily readable in Excel or OpenOffice. Lines in the output correspond to rows in the table. + +utput files begin with comment lines, starting with the special character "#". The last such line(s) will be a header with column names, but this may be preceded by more general comments. + +Because the OpenMS XML formats contain different kinds of data in a hierarchical structure, TextExporter produces somewhat unusual TSV/CSV files for many inputs: Different lines in the output may belong to different types of data, and the number of columns and the meanings of the individual fields depend on the type. In such cases, the first column always contains an indicator (in capital letters) for the data type of the current line. In addition, some lines have to be understood relative to a previous line, if there is a hierarchical relationship in the data. (See below for details and examples.) + +Missing values are represented by "-1" or "nan" in numeric fields and by blanks in character/text fields. + +Depending on the input and the parameters, the output contains the following columns: + +featureXML input: + +first column: RUN / PROTEIN / UNASSIGNEDPEPTIDE / FEATURE / PEPTIDE (indicator for the type of data in the current row) +a RUN line contains information about a protein identification run; further columns: run_id, score_type, score_direction, data_time, search_engine_version, parameters +a PROTEIN line contains data of a protein identified in the previously listed run; further columns: score, rank, accession, coverage, sequence +an UNASSIGNEDPEPTIDE line contains data of peptide hit that was not assigned to any feature; further columns: rt, mz, score, rank, sequence, charge, aa_before, aa_after, score_type, search_identifier, accessions +a FEATURE line contains data of a single feature; further columns: rt, mz, intensity, charge, width, quality, rt_quality, mz_quality, rt_start, rt_end +a PEPTIDE line contains data of a peptide hit annotated to the previous feature; further columns: same as for UNASSIGNEDPEPTIDE +With the no_ids flag, only FEATURE lines (without the FEATURE indicator) are written. + +With the feature:minimal flag, only the rt, mz, and intensity columns of FEATURE lines are written. + +consensusXML input: + +Output format produced for the out parameter: + +first column: MAP / RUN / PROTEIN / UNASSIGNEDPEPTIDE / CONSENSUS / PEPTIDE (indicator for the type of data in the current row) +a MAP line contains information about a sub-map; further columns: id, filename, label, size (potentially followed by further columns containing meta data, depending on the input) +a CONSENSUS line contains data of a single consensus feature; further columns: rt_cf, mz_cf, intensity_cf, charge_cf, width_cf, quality_cf, rt_X0, mz_X0, ..., rt_X1, mz_X1, ... +"..._cf" columns refer to the consensus feature itself, "..._Xi" columns refer to a sub-feature from the map with ID "Xi" (no quality column in this case); missing sub-features are indicated by "nan" values +see above for the formats of RUN, PROTEIN, UNASSIGNEDPEPTIDE, PEPTIDE lines +With the no_ids flag, only MAP and CONSENSUS lines are written. + +Output format produced for the consensus_centroids parameter: + +one line per consensus centroid +columns: rt, mz, intensity, charge, width, quality +Output format produced for the consensus_elements parameter: + +one line per sub-feature (element) of a consensus feature +first column: H / L (indicator for new/repeated element) +H indicates a new element, L indicates the replication of the first element of the current consensus feature (for plotting) +further columns: rt, mz, intensity, charge, width, rt_cf, mz_cf, intensity_cf, charge_cf, width_cf, quality_cf +"..._cf" columns refer to the consensus feature, the other columns refer to the sub-feature +Output format produced for the consensus_features parameter: + +one line per consensus feature (suitable for processing with e.g. R) +columns: same as for a CONSENSUS line above, followed by additional columns for identification data +additional columns: peptide_N0, n_diff_peptides_N0, protein_N0, n_diff_proteins_N0, peptide_N1, ... +"..._Ni" columns refer to the identification run with index "Ni", n_diff_... stands for "number of different ..."; different peptides/proteins in one column are separated by "/" +With the no_ids flag, the additional columns are not included. + +idXML input: + +first column: RUN / PROTEIN / PEPTIDE (indicator for the type of data in the current row) +see above for the formats of RUN, PROTEIN, PEPTIDE lines +additional column for PEPTIDE lines: predicted_rt +With the id:proteins_only flag, only RUN and PROTEIN lines are written. + +With the id:peptides_only flag, only PEPTIDE lines (without the PEPTIDE indicator) are written. + +With the id:first_dim_rt flag, the additional columns rt_first_dim and predicted_rt_first_dim are included for PEPTIDE lines. + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + + diff -r 5c65f8116244 -r cf0d72c7b482 unimod.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/unimod.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,15140 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + N-(4-trimethylammoniumbutanoxy)-NHS + + Comparative proteomics based on stable isotope labeling and affinity selection. Regnier, Fred E.; Riggs, Larry; Zhang, Roujian; Xiong, Li; Liu, Peiran; Chakraborty, Asish; Seeley, Erin; Sioma, Cathy; Thompson, Robert A. Department of Chemistry, Pu + Journal + + + + 11857757 + PubMed PMID + + + + + + + + + + + + + + + Comparative proteomics based on stable isotope labeling and affinity selection. Regnier, Fred E.; Riggs, Larry; Zhang, Roujian; Xiong, Li; Liu, Peiran; Chakraborty, Asish; Seeley, Erin; Sioma, Cathy; Thompson, Robert A. Department of Chemistry, Pu + Journal + + + + 11857757 + PubMed PMID + + + + + + + + + + + + + + + Comparative proteomics based on stable isotope labeling and affinity selection. Regnier, Fred E.; Riggs, Larry; Zhang, Roujian; Xiong, Li; Liu, Peiran; Chakraborty, Asish; Seeley, Erin; Sioma, Cathy; Thompson, Robert A. Department of Chemistry, Pu + Journal + + + + 11857757 + PubMed PMID + + + + + + + + + + + + + + + Comparative proteomics based on stable isotope labeling and affinity selection. Regnier, Fred E.; Riggs, Larry; Zhang, Roujian; Xiong, Li; Liu, Peiran; Chakraborty, Asish; Seeley, Erin; Sioma, Cathy; Thompson, Robert A. Department of Chemistry, Pu + Journal + + + + 11857757 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + + Berlett, Barbara S.; Stadtman, Earl R. Journal of Biological Chemistry (1997), 272(33), 20313-20316. + Journal + + + + 9252331 + PubMed PMID + + + + + + + + + + + + + Berlett, Barbara S.; Stadtman, Earl R. Journal of Biological Chemistry (1997), 272(33), 20313-20316. + Journal + + + + 9252331 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AA0021 + RESID + + + + 10825024 + PubMed PMID + + + + 8758896 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AA0211 + RESID + + + + 15799070 + PubMed PMID + + + + AA0021 + RESID + + + + FORM + FindMod + + + + AA0384 + RESID + + + + AA0057 + RESID + + + + AA0384 + RESID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Decarboxylation of C-terminus as reaction inside the mass spectrometer + + 14588022 + PubMed PMID + + + + D. Suckau, A. Resemann, Anal. Chem., 75(21):5817-24 (2003) + Journal + + + MS/MS experiments of mass spectrometric a-ions (MS^3) can be used for protein identification by library searching. T3-sequencing is such a technique (see reference). Search engines must recognize this \'virtual modification\' for this purpose. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Butylated Hydroxytoluene + + 9448752 + PubMed PMID + + + BHT metabolism has been studied in rats and mice in relation to tumor promotion. + + + + + + + + + + + + + + + + + + + + heavy phosphotyrosine + + 12716131 + PubMed PMID + + + + Ong, S-E, I. Kratchmarova, and M. Mann (2003). J Proteome Research 2: 173-181 + Journal + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + + + + + + + + + + + Ong, S-E, I. Kratchmarova, and M. Mann (2003). J Proteome Research 2: 173-181 + Journal + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12716131 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + H2 18O Alkaline Phosphatase + + 11467524 + PubMed PMID + + + + + + + + + + + + heavy lysine + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12716131 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12716131 + PubMed PMID + + + + + + + + + + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12771378 + PubMed PMID + + + + + + + + + + Trideuteration + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + + + + + + + + + + 12771378 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + Anal Biochem. 2004 Oct 1;333(1):174-81 + Journal + + + + 15351294 + PubMed PMID + + + A simplified procedure for the reduction and alkylation of cysteine residues in proteins prior to proteolytic digestion and mass spectral analysis. Hale JE, Butler JP, Gelfanova V, You JS, Knierman MD. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Introduction to Protein Labeling + Misc. URL + http://www.piercenet.com/Proteomics/browse.cfm?fldID=84EBE112-F871-4CA5-807F-47327153CFCB + + EDC crosslinker is used to couple biotin PEO-amine to carboxyl groups or 5\' phosphate groups + + + + + + + + + + + + + + + + + + + UV induced cross-link product of Iodo-U-amp with WFY + + 6540775 + PubMed PMID + + + + 11112526 + PubMed PMID + + + + 11567090 + PubMed PMID + + + One note about this chemistry is that for W you have to take care of O2 big time (and extract the I-uracil monophosphate with organics to get rid of residual iodide). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MDA54 + + Uchida K, Sakai K, Itakura K, Osawa T, Toyokuni S. 1977. Protein modification by lipid peroxidation products: formation of malondialdehyde-derived N(epsilon)-(2-propenol)lysine in proteins. Arch Biochem Biophys. 346(1):45-52 + Journal + + + + + + + + + + + + + + + + + + + + + + + + + + Thiophos-biotin disulfide + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AA0153 + RESID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Dimethyl pimelimidate + + Imidoester Cross-linkers + Misc. URL + http://www.piercenet.com/files/0668ss5.pdf + + + Hand, E.S., and Jencks, W.P. (1962). Mechanism of the reaction of imidoesters with amines. J. Am. Chem. Soc. 84, 3505-3514. + Journal + + + + Packman, L.C. and Perhan, R.N. (1982). Quaternary Structures the Pyruvate Dehydrogenase Multienzyme Complex of Bacillus StearothermophilusStudies by a New Reversible Crosslinking Procedure with Bis(imidoesters). Biochem. 21, 5171-5175. + Journal + + + + + + + + + + + + + + + + + + + J. Mass Spectrom. 2005; 40: 238-249 + Journal + + + + + + + + + + + + + + J. Mass Spectrom. 2005; 40: 238-249 + Journal + + + + + + + + + + + + + + + + beta-methylaminoethylcysteine + + Z. A. Knight et al, Nature Biotech., 21(9) 1047-1054 (2003) + Journal + + + Modification procedure used for phosphopeptide mapping + + + + + + + + + + Berger U, Oehme M, Girardin L., Fresenius J Anal Chem. 2001 Jan 2;369(2):115-23. + Journal + + + Found in canned food products + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + lac + + ANALYTICAL BIOCHEMISTRY 259, 152-161 (1998) + Journal + + + + BIOCHIMECAL AND BIOPHYSICAL RESEARCH COMMUNICATIONS 236, 413-417 (1997) + Journal + + + Lactosylation of bovine Beta-Lactoglobulin + + + + + + + + + + + + + + + + + + + + + + fluorescein-NEM + + 9325338 + PubMed PMID + + + + 11665566 + PubMed PMID + + + + Thiol-Reactive Probes + Misc. URL + http://probes.invitrogen.com/media/pis/mp00003.pdf + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + heavy D9 lysine + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + CDNLM-6810 + Misc. URL + http://www.isotope.com/cil/products/displayproduct.cfm?prod_id=8635 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + threo-1,4-dimercaptobutane-2,3-diol + Cleland's reagent + + Methods Enzymol. 2006;415:113-33. Links rnIdentification of O-GlcNAc sites on proteins.Whelan SA, Hart GW. + PubMed PMID + 17116471 + + + Mol Cell Proteomics. 2002 Oct;1(10):791-804. rnMapping sites of O-GlcNAc modification using affinity tags for serine and threonine post-translational modifications.Wells L, Vosseller K, Cole RN, Cronshaw JM, Matunis MJ, Hart GW. + PubMed PMID + 12438562 + + + Proteomics. 2005 Feb;5(2):388-98. Links rnQuantitative analysis of both protein expression and serine / threonine post-translational modifications through stable isotope labeling with dithiothreitol.Vosseller K, Hansen KC, Chalkley RJ, Trinidad JC, Wells L, Hart GW, Burlingame AL. + PubMed PMID + 15648052 + + Beta-elimination and Michael addition of dithiothreitol (DTT) to serine and threonine adds a weight of approximately 136.2. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Biochemistry 2005 vol 44 pp 1833-1845 + Journal + http://dx.doi.org/10.1021/bi048228c + + + + + + + + + + Ong, S-E, I. Kratchmarova, and M. Mann (2003). J Proteome Research 2: 173-181 + Journal + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12716131 + PubMed PMID + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Acetyl_K4 + For SILAC experiments, + PTM + + + + + + + + + + + + + + + + + + + + + + + + + + + + Pierce product page + Misc. URL + http://www.piercenet.com/products/browse.cfm?fldID=C4FE82D4-DD06-493C-8EC4-9C1D7F83211B + + + + + + + + + + + + Ong, S-E, I. Kratchmarova, and M. Mann (2003). J Proteome Research 2: 173-181 + Journal + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12716131 + PubMed PMID + + + + + + + + + + + + + + Acetyl_heavy lysine + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + 12716131 + PubMed PMID + + + + + + + + + + + + + + + + + + PMID 11698400rnLigand-selective modulation of the permeability transition pore by arginine modification. Opposing effects of p-hydroxyphenylglyoxal and phenylglyoxal. + PubMed PMID + http://www.ncbi.nlm.nih.gov/pubmed/11698400?ordinalpos=39&itool=EntrezSystem2.PEntrez.Pubmed.Pubmed_ResultsPanel.Pubmed_RVDocSum + + + PMID 5723461rnThe reaction of phenylglyoxal with arginine residues in proteins. + PubMed PMID + http://www.ncbi.nlm.nih.gov/pubmed/5723461?ordinalpos=517&itool=EntrezSystem2.PEntrez.Pubmed.Pubmed_ResultsPanel.Pubmed_RVDocSum + + + PMID 11945751rnReaction of arginine residues in basic pancreatic trypsin inhibitor with phenylglyoxal. + PubMed PMID + http://www.ncbi.nlm.nih.gov/pubmed/11945751?ordinalpos=514&itool=EntrezSystem2.PEntrez.Pubmed.Pubmed_ResultsPanel.Pubmed_RVDocSum + + + + + + + + + + + + + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + + + + + + + + + + + + + + + + heavy glygly lysine + + 12716131 + PubMed PMID + + + + Silac introduction + Misc. URL + http://www.pil.sdu.dk/silac_intro.htm + + + + + + + + + + + + + + GlnGlnGlnThrGlyGly + + + + + + + + + + GlnGluGlnThrGlyGly + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r 5c65f8116244 -r cf0d72c7b482 xtandem_adapter.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/xtandem_adapter.xml Fri May 10 17:31:05 2013 -0400 @@ -0,0 +1,94 @@ + + + + + macros.xml + + + + tandem + + + openms_wrapper.py + --executable 'XTandemAdapter' --config $config + + + [simple_options] +in=$input1 +out=$out +database=$database +xtandem_executable=@WHICH(tandem)@ +variable_modifications=${variable_modifications or ''} +fixed_modifications=${fixed_modifications or ''} +precursor_mass_tolerance=$precursor_mass_tolerance +precursor_error_units=$precursor_mass_tolerance_unit +fragment_mass_tolerance=$fragment_mass_tolerance +fragment_error_units=$fragment_mass_tolerance_unit +min_precursor_charge=$min_precursor_charge +max_precursor_charge=$max_precursor_charge +cleavage_site=$cleavage_site +minimum_fragment_mz=$minimum_fragment_mz +max_valid_expect=$max_valid_expect +refinement=$refinement +semi_cleavage=$semi_cleavage + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +**What it does** + + +**Citation** + +For the underlying tool, please cite ``Marc Sturm, Andreas Bertsch, Clemens Gröpl, Andreas Hildebrandt, Rene Hussong, Eva Lange, Nico Pfeifer, Ole Schulz-Trieglaff, Alexandra Zerck, Knut Reinert, and Oliver Kohlbacher, 2008. OpenMS – an Open-Source Software Framework for Mass Spectrometry. BMC Bioinformatics 9: 163. doi:10.1186/1471-2105-9-163.`` and ``PepNovo: De Novo Peptide Sequencing via Probabilistic Network Modeling. Frank, A. and Pevzner, P. Analytical Chemistry 77:964-973, 2005.``. + +If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-openms + +