Ontology mapping
- Primary identifier
-
kgmicrobe.compound:nah2po4_x_2_h2o - Ontology term
-
CHEBI:37585— sodium dihydrogenphosphate - Ontology label
- sodium dihydrogenphosphate
Physicochemical roles
- Role
- BUFFER
- Confidence
- 1.0
- Evidence
- Reference type
- DATABASE_ENTRY
- Reference text
- Imported from CultureMech pipeline
- Curator note
- Original role text: Buffer
Synonyms (7)
| Synonym | Type | Source | Occurrences |
|---|---|---|---|
| NaH2PO4 x 2H2O | HYDRATE_FORM | kg_microbe | |
| NaH2PO4 x H2O | HYDRATE_FORM | kg_microbe | |
| NaH2PO4·2H2O | HYDRATE_FORM | kg_microbe | |
| NaH2PO4·H2O | HYDRATE_FORM | kg_microbe | |
| NaH2PO4・2H2O | HYDRATE_FORM | kg_microbe | |
| NaH2PO4・H2O | HYDRATE_FORM | kg_microbe | |
| Role: Buffer; Properties: Inorganic compound, Defined component, Simple component | RAW_TEXT | CultureMech |
Rejected enrichment labels (1)
Provenance-only candidates: these are not synonyms and do not resolve to this record.
| Rejected label | Disposition | Source | Occurrences |
|---|---|---|---|
| sodium phosphate monobasic anhydrous | REJECTED_LABEL | kg_microbe |
Chemical properties
- Data source
- OAK/CHEBI xref
- Retrieval date
- 2026-04-19T07:35:12.781730+00:00
- Molecular formula
- H2O4P.Na.2H2O
- Inchi
- InChI=1S/Na.H3O4P/c;1-5(2,3)4/h;(H3,1,2,3,4)/q+1;/p-1
- Smiles
- O=P([O-])(O)O.[Na+]
Evidence (4)
[HISTORICAL — superseded by the #321 re-grade below: this record is a hydrate of CHEBI:37585, not an exact match to it] Imported from CultureMech pipeline, quality=DIRECT_MATCH
identifier CHEBI:37585 -> kgmicrobe.compound:nah2po4_x_2_h2o; mapping_quality SYNONYM_MATCH -> NARROW_MATCH. The record is a hydrate of CHEBI:37585 ('sodium dihydrogenphosphate') and was sharing that term's identifier — the identity collapse MAPPING_SEMANTICS §3 forbids, which made a distinct substance indistinguishable from its anhydrous parent downstream. ChEBI has no term for this hydrate and the record carries no verified CAS, so steps 1 and 2 are unavailable and step 3 applies.
molecular_formula 'H2O4P.Na' -> 'H2O4P.Na.2H2O'. The recorded value described the anhydrous salt while the label names a hydrate, understating the mass by 18 g/mol per water. Corrected because the label states 2 water(s) of hydration, and the recorded formula was byte-identical to the anhydrous parent CHEBI:37585's ChEBI formula ('H2O4P.Na') — the mark of a value inherited from the parent rather than measured for this record. Water appended in ChEBI's own dot-separated notation.
mapping_quality NARROW_MATCH -> CLOSE_MATCH, predicate skos:narrowMatch -> skos:closeMatch. narrowMatch asserts this record is *narrower in meaning* than CHEBI:37585 ('sodium dihydrogenphosphate') — a subsumption ChEBI itself denies: it files hydrates under CHEBI:35505 'hydrate', never under the anhydrous compound, which is not an ancestor even transitively. A hydrate is a distinct substance containing the anhydrous form, not a specialization of it. closeMatch claims similarity without subsumption. The ontology_id and the record's own identifier are unchanged.
Occurrence statistics
- Total occurrences
- 53
- Distinct media
- 53
Curation history
| Timestamp | Curator | Action | New status | Changes |
|---|---|---|---|---|
| 2026-03-09T06:54:18.022301+00:00 | import_from_culturemech | IMPORTED | MAPPED | Initial import from CultureMech pipeline |
| 2026-04-05T23:46:21.896843+00:00 | fetch_cas_rn_with_preprocessing | ADDED_CAS_RN | MAPPED | Added CAS-RN:7558-80-7 from PubChem API (ontology label) via name preprocessing (NaH2PO4 x 2H2O) |
| 2026-04-09T00:32:50.689620+00:00 | enrich_mim_cas_rn_batch | CAS_RN_ADDED | MAPPED | Added CAS-RN 558-80-7 from CultureBotHT/compounds_to_cas.csv |
| 2026-04-18T00:00:00+00:00 | cbclaw_kg_microbe_sweep LLM | ADDED_SYNONYMS | MAPPED | Added 7 synonyms from kg-microbe P4.4 enrichment: NaH2PO4 x 2H2O, NaH2PO4 x H2O, NaH2PO4·2H2O, NaH2PO4·H2O, NaH2PO4・2H2O, ... (2 more) |
| 2026-04-18T00:00:00+00:00 | cbclaw_kg_microbe_sweep LLM | ADDED_SYNONYMS | MAPPED | Added 7 synonyms from kg-microbe P4.4 enrichment: NaH2PO4 x 2 H2O, NaH2PO4 x H2O, NaH2PO4·2H2O, NaH2PO4·H2O, NaH2PO4・2H2O, ... (2 more) |
| 2026-04-19T07:35:12.782058+00:00 | audit_mim_merge | MERGED_FROM_DUPLICATES | MAPPED | Absorbed 1 duplicate MIM record(s) into this one: Nah2po4_X_2h2o.yaml. Synonyms, curation_history, and occurrence counts were unioned/summed; winner selected by highest occurrence count with preferred_term readability tie-break. |
| 2026-04-19T07:35:12.781730+00:00 | audit_resolve_risky_cas_rn | RESOLVED_CAS_RN_CONFLICT | MAPPED | CAS-RN conflict across merged group (558-80-7|7558-80-7) resolved via OAK canonical xref: 7558-80-7 (match) |
| 2026-05-01T07:35:35.374395+00:00 | auto_classify_ingredient_type | AUTO_CLASSIFY_INGREDIENT_TYPE | set ingredient_type=SINGLE_INGREDIENT (CHEBI primary) | |
| 2026-05-01T08:08:31.455910+00:00 | auto_classify_ingredient_type | AUTO_BACKFILL_CHEBI_CHEMISTRY | molecular_formula=H2O4P.Na; inchi=InChI=1S/Na.H3O4P/c;1-5(2,3)4/h;(H3,1,2,3,4)/q+1;/; smiles=O=P([O-])(O)O.[Na+] | |
| 2026-05-02T03:12:17.213863+00:00 | auto_classify_ingredient_type | AUTO_CLASSIFY_INGREDIENT_TYPE | set ingredient_type=SINGLE_INGREDIENT (chemical structure populated (molecular_formula)) | |
| 2026-05-29T23:35:36.112326+00:00 | extract_roles_from_synonyms | ANNOTATED | Added media role: BUFFER (confidence: 1.00) | |
| 2026-06-09T05:23:46.809627+00:00 | correct_stale_ontology_labels.py | CORRECTED | ontology_label 'NaH2PO4 x 2 H2O' -> 'sodium dihydrogenphosphate': synced to canonical CHEBI label (preferred_term 'NaH2PO4 x 2 H2O' unchanged). | |
| 2026-07-20T00:00:00+00:00 | migrate_media_roles_to_facets | ANNOTATED | Migrated legacy media_roles to role facets (#128): BUFFER -> physicochemical_roles.BUFFER | |
| 2026-08-10T00:00:00+00:00 | regrade_synonym_matches | REGRADED_EXACT_TO_SYNONYM | mapping_quality EXACT_MATCH -> SYNONYM_MATCH (#317). The record's label does not equal the term's primary label 'sodium dihydrogenphosphate'; it matches the ChEBI synonym 'sodium phosphate monobasic anhydrous' on CHEBI:37585. The schema defines EXACT_MATCH as a direct match to the term and SYNONYM_MATCH as a match to a known synonym, so the recorded grade overstated. ontology_id is unchanged — the term is correct. The SSSOM predicate is unaffected (both grades emit skos:exactMatch). | |
| 2026-08-13T00:00:00+00:00 | mint_hydrate_registry_terms | MINTED_REGISTRY_FOR_HYDRATE | identifier CHEBI:37585 -> kgmicrobe.compound:nah2po4_x_2_h2o; mapping_quality SYNONYM_MATCH -> NARROW_MATCH (#321/#334); §3 step 3. | |
| 2026-08-13T00:00:00+00:00 | add_water_of_hydration | ADDED_WATER_OF_HYDRATION | molecular_formula 'H2O4P.Na' -> 'H2O4P.Na.2H2O' (#321); the label states 2 water(s) of hydration, and the recorded formula was byte-identical to the anhydrous parent CHEBI:37585's ChEBI formula ('H2O4P.Na') — the mark of a value inherited from the parent rather than measured for this record. Water appended in ChEBI's own dot-separated notation. | |
| 2026-08-13T00:00:00+00:00 | regrade_hydrate_to_close_match | REGRADED_HYDRATE_TO_CLOSE_MATCH | mapping_quality NARROW_MATCH -> CLOSE_MATCH (#342); a hydrate is not subsumed by its anhydrous form, and ChEBI does not model it as such. | |
| 2026-08-27T03:16:39.519543+00:00 | refresh_occurrence_statistics | CORRECTED | occurrence_statistics 30/30 -> 53/53 (media_count/total_occurrences), derived from distinct CultureMech recipe ids in the #337 occurrence table. The prior values came from the importer retired in #453, whose media_count counted a list truncated to 50 examples (#449). [source=ingredient_occurrences.tsv culturemech_rev=15a4da5c08 rows=194137 distinct_recipes=15257] | |
| 2026-08-29T04:18:06.718000+00:00 | hydrate_family_cas | CORRECTED | cas_rn 7558-80-7 REMOVED, not replaced: it is the anhydrous NaH2PO4 CAS, and this record names a hydrate -- a different substance with a different formula weight. ChEBI has no term for this hydration state, so no authoritative value can be substituted. The grounding is separately wrong (#321); this corrects only the CAS (#334). | |
| 2026-09-23T06:21:57.657338+00:00 | claude LLM | REJECTED_WRONG_FORM_SYNONYMS | MAPPED | Retyped REJECTED_LABEL: 'sodium phosphate monobasic anhydrous' (EXACT_SYNONYM): the anhydrous CHEBI:37585 name on a dihydrate label's local identity (#232). The token is kept as provenance only; it must not resolve, be exported, or enter the SSSOM other column. |
| 2026-10-12T03:21:01.508608+00:00 | claude LLM | REMOVED_PARENT_IDENTITY | MAPPED | Removed kg_microbe_node_id CHEBI:37585, the anhydrous sodium dihydrogenphosphate identity. The record keeps its distinct dihydrate identifier kgmicrobe.compound:nah2po4_x_2_h2o, minted under §3 step 3 (#321/#334) because ChEBI has no term for this hydration state, and only a CLOSE_MATCH parent annotation (#342). The stale KG node field contradicted that ruling and kept the unified mapping publishing the anhydrous parent as the identity (#808, culturebotai-claw#571). No replacement KG node is asserted. |