Supported software and formats
APB2 selects a packaged conversion rule when its vendor table matches and, for parameter-bearing rules, its software version matches. The pb_custom upload format has no parameter file; select it with --software pb_custom. The tables below describe the rules shipped with APB2. Version labels are concise readings of the match patterns; follow a rule-document link for its exact version expression, required source columns, transformations, and output schema.
Packaged vendor-table rules
This table has one row per packaged rule document.
| Rule document | Supported versions | Vendor input | Shape | Parameter parser input |
|---|---|---|---|---|
| AlphaDIA 1.10 | 1.10.x | .tsv |
wide | AlphaDIA run log (text) |
| AlphaDIA 1.12 | 1.12.x | .tsv |
long | AlphaDIA run log (text) |
| AlphaDIA 2 | 2.x | .parquet |
long | AlphaDIA run log (text) |
| AlphaPept | 0.5.x | .csv |
long | YAML parameter file |
| DIA-NN 1.8/1.9 | 1.8.x–1.9.x | .tsv, .txt, .parquet |
long | DIA-NN log or captured command/cfg text |
| DIA-NN 1.7 | 1.0.x–1.7.x | .tsv |
long | DIA-NN log or captured command/cfg text |
| DIA-NN 2 | 2.x | .parquet |
long | DIA-NN log or captured command/cfg text |
| FragPipe | 22.x or 23.x | .tsv |
wide | fragpipe.workflow |
| i2MassChroQ | 1.x | .tsv, .txt |
long | i2MassChroQ parameter TSV |
| MaxQuant | 1.5.x, 1.6.x, or 2.x | evidence.txt, modificationSpecificPeptides.txt, peptides.txt, proteinGroups.txt |
long / wide | mqpar.xml |
| MetaMorpheus | 1.x | AllQuantifiedPeaks.tsv (.tsv) |
long | one TOML settings file plus one version-text file |
| MSAngel | 2.x | Quantified peptide ions sheet in an XLSX workbook (.txt or .xlsx) |
wide | MSAngel workflow JSON |
| PEAKS | 13.x | .csv |
wide | PEAKS settings text report |
| ProteoBench Custom | version-free | .txt, .tsv |
wide | none; --software pb_custom required |
| ProlineStudio | 2.x | Quantified peptide ions sheet in an XLSX workbook (.txt or .xlsx) |
wide | parameter sheets in the result workbook |
| quantms | 1.x | .csv |
long | quantms versions YAML |
| Sage | 0.x | .tsv |
wide | Sage JSON parameter file |
| Spectronaut | 19.x or 20.x | .tsv |
long | Spectronaut settings text report |
| Spectronaut 15 | 15.x | .tsv |
long | Spectronaut settings text report |
| Spectronaut 21 | 21.x | .tsv |
long | Spectronaut settings text report |
| WOMBAT | 0.9.11 | .csv |
wide | WOMBAT YAML parameter file |
--software uses lower-case software names; DIA-NN accepts both diann and dia-nn. The parameter-parser registry applies only to parameter-bearing rules; pb_custom is selected directly.
MaxQuant uses two table groups: evidence → ion (Raw_File), with each row's protein group looked up in proteinGroups.txt when present, and joined modification-specific peptide, peptide and protein exports → higher levels (Experiment). All nonempty subsets work from a vendor-result directory. A complete one-to-one run/experiment mapping aligns observations; fractionated or unmapped inputs produce separate results. See conversion and output naming.
Quantification levels by rule
A check mark means that the linked rule document can convert that level. APB2 recognizes five level names. The peptide level comes only from MaxQuant peptides.txt, which is a wide table of per-experiment intensities rather than a per-run ion table.
| Rule document | Ion | Peptidoform | Peptide | Protein | Fragment |
|---|---|---|---|---|---|
| AlphaDIA 1.10 | ✓ | — | — | — | — |
| AlphaDIA 1.12 | ✓ | — | — | — | — |
| AlphaDIA 2 | ✓ | — | — | — | — |
| AlphaPept | ✓ | — | — | — | — |
| DIA-NN 1.8/1.9 | ✓ | — | — | ✓ | ✓ |
| DIA-NN 1.7 | ✓ | — | — | ✓ | ✓ |
| DIA-NN 2 | ✓ | — | — | ✓ | — |
| FragPipe | ✓ | — | — | — | — |
| i2MassChroQ | ✓ | — | — | — | — |
| MaxQuant | ✓ | ✓ | ✓ | ✓ | — |
| MetaMorpheus | ✓ | — | — | — | — |
| MSAngel | ✓ | — | — | — | — |
| PEAKS | ✓ | — | — | — | — |
| ProteoBench Custom | ✓ | — | — | — | — |
| ProlineStudio | ✓ | — | — | — | — |
| quantms | ✓ | — | — | — | — |
| Sage | ✓ | ✓ | — | — | — |
| Spectronaut | ✓ | — | — | ✓ | ✓ |
| Spectronaut 15 | ✓ | — | — | ✓ | ✓ |
| Spectronaut 21 | ✓ | — | — | ✓ | ✓ |
| WOMBAT | ✓ | ✓ | — | — | — |
Planned prolfquapp migrations
Another motivation for APB2 is to replace hand-written, application-local readers with reusable,
rules-driven conversion. Today, the
prolfquapp::preprocess_software() dispatcher
and its
software-function registry
preprocess DIA-NN, MaxQuant peptide, FragPipe TMT/PSM and DIA/MSstats, and Spectronaut BGS outputs.
The separate
prolfquappPTMreaders registry
adds FragPipe single-site, multi-site, and combined-site STY inputs plus Spectronaut site reports.
These existing pipeline inputs define the next migration targets:
| Source | Software or pipeline | Output and related files | Existing reader mode | Upstream preprocessor | Current APB2 coverage |
|---|---|---|---|---|---|
| prolfquapp | DIA-NN | report.tsv, diann-output.tsv, or report.parquet; FASTA |
protein or peptide | preprocess_DIANN() |
DIA-NN 1.x and 2.x tables are packaged; peptide-mode parity remains |
| prolfquapp | FragPipe TMT | psm.tsv; FASTA |
protein or peptide | preprocess_FP_PSM() |
a different FragPipe TSV rule exists; PSM/TMT parity is not yet claimed |
| prolfquapp | MaxQuant | peptides.txt; FASTA |
protein or peptide | preprocess_MQ_peptide() |
both evidence.txt and peptides.txt are packaged |
| prolfquapp | MSstats | msstats*.csv or msstats*.tsv; FASTA |
protein or peptide | preprocess_MSstats() |
no packaged rule |
| prolfquapp | FragPipe DIA via MSstats | msstats*.csv or msstats*.tsv; FASTA |
protein or peptide | preprocess_MSstats_FPDIA() |
no packaged rule |
| prolfquapp | Spectronaut BGS | *BGS Factory Report (Normal).tsv or *_Report.tsv; FASTA |
protein or peptide | preprocess_BGS() |
Spectronaut TSV is packaged; BGS and peptide-mode parity remain to be verified |
| prolfquappPTMreaders | FragPipe single-site | abundance_single-site_None.tsv; FASTA |
single PTM site | preprocess_FP_multi_site() |
no packaged site-level rule |
| prolfquappPTMreaders | FragPipe multi-site | abundance_multi-site_None.tsv; FASTA |
multiple PTM sites | preprocess_FP_multi_site() |
no packaged site-level rule |
| prolfquappPTMreaders | FragPipe combined STY | combined_site_STY_*.tsv; .fp-manifest; FASTA |
PTM site | preprocess_FP_combined_STY() |
no packaged site-level rule |
| prolfquappPTMreaders | Spectronaut PTM | Report*.tsv, typically *Report_WithProteinRollup.tsv; optional FASTA |
single phosphosite | preprocess_BGS_site() |
no packaged site-level rule |
We plan to move the remaining input variants and PTM/site-level formats from those R readers into APB2. The goal is one parser and rule-document API that can serve both prolfquapp and ProteoBench. This table is a roadmap, not a claim of current support. The packaged-rule tables above remain the authoritative inventory of what APB2 can convert today. Test-only, simulated, and metabolomics readers from the prolfquapp registry are outside this proteomics migration list.
Persisted APB2 results
After conversion, the same storage-neutral ParsedLevels value can be written in any supported
result format:
| Format | Path | Levels | Result behavior |
|---|---|---|---|
| AnnData | .h5ad |
exactly one | configured numeric/factor matrix projection |
| MuData | .h5mu |
one or more | configured matrix projection per modality |
| APB2 Parquet dataset | .parquet directory |
one or more | exact Polars values and schemas |
| DuckDB | .duckdb file |
one or more | exact Polars values and schemas |