The official SDRF-Proteomics validator and converter. Validate your sample metadata files and convert them to workflow configurations for OpenMS, MaxQuant, MSstats, and more.
Install python and pipx or just uv
uv:
# Install
uv tool install sdrf-pipelines[all]
# Validate your SDRF file
parse_sdrf validate-sdrf --sdrf_file your_file.sdrf.tsvpipx:
# Install
pipx install sdrf-pipelines[all]
# Validate your SDRF file
parse_sdrf validate-sdrf --sdrf_file your_file.sdrf.tsvThat's it! Your SDRF file will be validated against the default mass spectrometry template.
| Installation | Command | Features |
|---|---|---|
| Basic | pip install sdrf-pipelines |
Structural validation + all converters |
| Full | pip install sdrf-pipelines[ontology] |
+ Ontology term validation (EFO, CL, MS, etc.) |
The basic installation validates column structure, formatting, and uniqueness. Add [ontology] to also validate that terms exist in their respective ontologies.
For detailed command documentation, see COMMANDS.md or use the built-in help:
parse_sdrf --help
parse_sdrf validate-sdrf --help# Basic validation
parse_sdrf validate-sdrf --sdrf_file sample.sdrf.tsv
# Validate with a specific template
parse_sdrf validate-sdrf --sdrf_file sample.sdrf.tsv --template human
# Skip ontology validation for quick structural checks
parse_sdrf validate-sdrf --sdrf_file sample.sdrf.tsv --skip-ontology# Convert to OpenMS format
parse_sdrf convert-openms -s sdrf.tsv
# Convert to MaxQuant format
parse_sdrf convert-maxquant -s sdrf.tsv -f database.fasta -r /path/to/raw/files
# Convert to MSstats annotation
parse_sdrf convert-msstats -s sdrf.tsv -o annotation.csvWe use modern Python tooling for development:
We use uv as our package manager for fast, reliable dependency management.
# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Create virtual environment and install dependencies
uv sync
# Install with dev dependencies
uv sync --group devWe use ruff for linting and formatting, and pre-commit for automated checks.
# Install pre-commit hooks
uv run pre-commit install
# Run all checks manually
uv run pre-commit run --all-filesuv run pytestFor more details, see CONTRIBUTING.md.
If you use this software, please cite:
Dai C, Füllgrabe A, Pfeuffer J, et al. A proteomics sample metadata representation for multiomics integration and big data analysis. Nat Commun 12, 5854 (2021). https://doi.org/10.1038/s41467-021-26111-3
For full citation details and BibTeX format, see CITATION.cff.