NaH2PO4 x 2 H2O

kgmicrobe.compound:nah2po4_x_2_h2o chemically defined MAPPED CHEBI CLOSE_MATCH

Ontology mapping

Primary identifier
kgmicrobe.compound:nah2po4_x_2_h2o
Ontology term
CHEBI:37585 — sodium dihydrogenphosphate
Ontology label
sodium dihydrogenphosphate

Physicochemical roles

Synonyms (7)

SynonymTypeSourceOccurrences
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 labelDispositionSourceOccurrences
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)

DATABASE_MATCH via CultureMech

[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

DATABASE_MATCH via MIM curation (#321/#334)

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.

DATABASE_MATCH via MIM curation (#321)

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.

DATABASE_MATCH via MIM curation (#342)

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

TimestampCuratorActionNew statusChanges
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.