ProtNLM2 Data Source History

Warnings (1)

ProtNLM2 Data Source History

Predictions are fetched from the UniProt REST API endpoint https://rest.uniprot.org/uniprotkb/protnlm/{accession}. The canonical accession list (26,856 entries) is published at the FTP site.

python projects/PROTNLM_EVALUATION/fetch_protnlm_api.py          # fetch all + convert to TSVs
python projects/PROTNLM_EVALUATION/fetch_protnlm_api.py --resume  # resume interrupted fetch
python projects/PROTNLM_EVALUATION/fetch_protnlm_api.py --convert-only  # re-convert existing JSONL

The API returns JSON with evidence inline per prediction. The fetch script saves raw JSONL (protnlm_api.jsonl) for reproducibility and converts to 3 TSV files (entries, predictions, evidence).

Pre-release XML (historical)

The original exploratory analysis used a pre-release XML export (post-processed-2026_02_28k.xml, 28,553 entries) parsed by parse_protnlm_xml.py. This included 1,697 entries subsequently removed during quality filtering (64.5% Swiss-Prot entries excluded from the TrEMBL-only public pilot, plus QC-filtered TrEMBL entries). The API serves the same predictions in a cleaner format.

Dataset statistics

Current public release (API fetched 2026-10-19; counted by
build_benchmark_funnel.py, stored in
benchmark-funnel.json): the published list has 26,856 accessions in
416 taxa. The API serves 26,855 of them (A0A8K0EP25 returns 404). 10,268 records carry GO
predictions or function text, 6,291 of them GO predictions; the rest carry only names,
locations or keywords. Off the list, the API also serves records from the pre-release export:
all 28 S. pombe entries of the pombe cohorts and all 29 off-list fly accessions
identified for FLY_NEXT20 (9 of which that cohort uses) return predictions. This
is not an exhaustive census of what the API serves.

The table below describes the pre-release XML export (28,553 entries) used in the first
exploratory analysis. It is kept for provenance and does not describe the public release.

Type Count Description
Protein name 28,553 Every entry gets a predicted name (22,467 recommended, 6,086 submitted)
GO terms 6,833 entries GO annotations derived from model predictions
Subcellular location 13,690 entries Predicted localization
Function comment 5,438 entries Free-text functional description
Name only 8,690 entries Only protein name predicted, no GO/location/function

Evidencer corroboration provenance

Each prediction has a model score (0–1, threshold 0.05) and post-hoc corroboration from the Evidencer:

TSV files

File Description
entries.tsv One row per entry (accession, name, prediction counts)
predictions.tsv One row per GO/function/location prediction
evidence.tsv One row per evidence block (scores, provenance)
taxonomy.tsv Accession -> species mapping from UniProt

Change log

2026-10-29 — narrative rescore and snapshot refresh

2026-10-24 — separate review snapshot and full rescore

2026-10-20 — provenance figures: review fixes

2026-10-19 — benchmark provenance figures

2026-10-01 — rebase onto the frozen review snapshot

After rebasing the 2026-09-27 changes onto main, which pins benchmark counts to
review_snapshot_commit and had folded OpenScientist audits into the ProtNLM reviews:

2026-09-27 — reporting fixes from the function-prediction review

These changes follow the ProtNLM2 section of
REVIEW-2026-09-26. No assessment in any
*-protnlm-predictions-review.yaml was changed.