diff --git a/conf/causal_graph_audit_baseline.tsv b/conf/causal_graph_audit_baseline.tsv index 1a5db78e..156f7496 100644 --- a/conf/causal_graph_audit_baseline.tsv +++ b/conf/causal_graph_audit_baseline.tsv @@ -224,7 +224,6 @@ data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline UNREACHABLE_FROM_TRAIT WARN node_id='hypersaline_environment' label='hypersaline environment' type=ENVIRONMENTAL_FACTOR — in an island with no path to nacl_delta_high_trait/nacl_delta data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline UNREACHABLE_FROM_TRAIT WARN node_id='halophilic_osmoadaptation' label='halophilic osmoadaptation strategies' type=BIOLOGICAL_PROCESS — in an island with no path to nacl_delta_high_trait/nacl_delta data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline FRAGMENTED_GRAPH WARN components=6 of 14 node(s) (sizes: 3, 3, 2, 2, 2, 2) — one record, several unrelated mechanisms -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline DISPOSITION_MISTYPED WARN node_id='salt_tolerance_breadth' type=CAPACITY — description reads as a disposition, which is a TRAIT data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth UNREACHABLE_FROM_TRAIT WARN node_id='osmotic_upshift' label='osmotic upshift' type=ENVIRONMENTAL_FACTOR — in an island with no path to nacl_delta_mid1_trait/nacl_delta data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth UNREACHABLE_FROM_TRAIT WARN node_id='k_import' label='potassium import' type=BIOLOGICAL_PROCESS — in an island with no path to nacl_delta_mid1_trait/nacl_delta data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth UNREACHABLE_FROM_TRAIT WARN node_id='compatible_solute_accumulation' label='compatible solute accumulation' type=BIOLOGICAL_PROCESS — in an island with no path to nacl_delta_mid1_trait/nacl_delta @@ -326,38 +325,27 @@ data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phe data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor UNREACHABLE_FROM_TRAIT WARN node_id='amino_acid_decarboxylation' label='amino-acid decarboxylation' type=BIOLOGICAL_PROCESS — in an island with no path to optimum_phenotype_trait/nacl_optimum/ph_optimum/temperature_optimum data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor UNREACHABLE_FROM_TRAIT WARN node_id='proton_motive_force' label='proton motive force' type=BIOLOGICAL_PROCESS — in an island with no path to optimum_phenotype_trait/nacl_optimum/ph_optimum/temperature_optimum data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor FRAGMENTED_GRAPH WARN components=4 of 14 node(s) (sizes: 5, 5, 2, 2) — one record, several unrelated mechanisms -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='reactive_oxygen_species_stress' label='oxygen / reactive oxygen species stress' type=ENVIRONMENTAL_FACTOR — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='detoxifying_enzyme_expression' label='detoxifying-enzyme gene expression' type=BIOLOGICAL_PROCESS — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='catalase' label='catalase' type=GENE_OR_PROTEIN — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='hydrogen_peroxide' label='hydrogen peroxide' type=CHEMICAL — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='superoxide_dismutase' label='superoxide dismutase' type=GENE_OR_PROTEIN — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='oxygen_tolerance' label='oxygen tolerance' type=CAPACITY — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis DISPOSITION_MISTYPED WARN node_id='oxygen_tolerance' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis FRAGMENTED_GRAPH WARN components=3 of 14 node(s) (sizes: 8, 4, 2) — one record, several unrelated mechanisms +data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis FRAGMENTED_GRAPH WARN components=2 of 13 node(s) (sizes: 11, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='membrane_lipid_remodeling' label='saturated membrane fatty acid remodeling' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_trait data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='proton_permeability' label='membrane proton permeability' type=QUALITY — in an island with no path to ph_delta_trait -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='amino_acid_decarboxylase_acid_resistance' label='amino-acid decarboxylase acid-resistance system' type=PATHWAY — in an island with no path to ph_delta_trait -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='low_ph_tolerance' label='low-pH tolerance' type=CAPACITY — in an island with no path to ph_delta_trait -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility DISPOSITION_MISTYPED WARN node_id='low_ph_tolerance' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility FRAGMENTED_GRAPH WARN components=3 of 12 node(s) (sizes: 8, 2, 2) — one record, several unrelated mechanisms +data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility FRAGMENTED_GRAPH WARN components=2 of 11 node(s) (sizes: 9, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='cytoplasmic_ph_homeostasis' label='cytoplasmic pH homeostasis' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='respiratory_proton_pumps' label='respiratory proton-pumping enzymes' type=GENE_OR_PROTEIN — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='cytoplasmic_buffering_capacity' label='cytoplasmic buffering capacity' type=CAPACITY — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='membrane_lipid_porin_changes' label='membrane lipid/porin composition changes' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='inward_proton_leakage' label='inward proton leakage' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 -data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth DUPLICATE_GROUNDING WARN nodes=2;grounding=METPO:1000478 (growth_external_ph_5_5_9, ph_delta_high_trait) data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth FRAGMENTED_GRAPH WARN components=4 of 14 node(s) (sizes: 7, 3, 2, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='external_ph_stress' label='external pH stress' type=ENVIRONMENTAL_FACTOR — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='cytoplasmic_ph_homeostasis' label='cytoplasmic pH homeostasis' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='pmf_architecture' label='proton motive force architecture' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='ph_homeostasis_capacity' label='pH homeostasis capacity' type=CAPACITY — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='weak_organic_acids' label='weak organic acids' type=CHEMICAL — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='delta_ph' label='delta pH / cytoplasmic pH' type=STATE — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='electrogenic_na_h_antiport' label='electrogenic Na+/H+ antiport' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='alkaline_ph_homeostasis' label='alkaline pH homeostasis' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='f1fo_atpase' label='F1Fo-ATPase' type=GENE_OR_PROTEIN — in an island with no path to ph_delta_low_trait/ph_delta -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth DISPOSITION_MISTYPED WARN node_id='ph_homeostasis_capacity' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth FRAGMENTED_GRAPH WARN components=5 of 12 node(s) (sizes: 3, 3, 2, 2, 2) — one record, several unrelated mechanisms +data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth FRAGMENTED_GRAPH WARN components=4 of 11 node(s) (sizes: 4, 3, 2, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth UNREACHABLE_FROM_TRAIT WARN node_id='gln_glu_decarboxylation_pathway' label='glutamine/glutamate decarboxylation pathway' type=PATHWAY — in an island with no path to ph_delta_mid1_trait/ph_delta data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth UNREACHABLE_FROM_TRAIT WARN node_id='intracellular_proton' label='intracellular proton (H+)' type=CHEMICAL — in an island with no path to ph_delta_mid1_trait/ph_delta data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth UNREACHABLE_FROM_TRAIT WARN node_id='ybas_glutaminase' label='YbaS glutaminase' type=GENE_OR_PROTEIN — in an island with no path to ph_delta_mid1_trait/ph_delta @@ -503,8 +491,7 @@ data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_ad data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation UNREACHABLE_FROM_TRAIT WARN node_id='protein_membrane_stability' label='protein and membrane stability under cold stress' type=QUALITY — in an island with no path to psychrotolerant_trait data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation UNREACHABLE_FROM_TRAIT WARN node_id='extracellular_polymeric_substances' label='extracellular polymeric substances (EPS)' type=CHEMICAL — in an island with no path to psychrotolerant_trait data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation UNREACHABLE_FROM_TRAIT WARN node_id='freeze_thaw_cryoprotection' label='cryoprotection against freeze-thaw cycles' type=BIOLOGICAL_PROCESS — in an island with no path to psychrotolerant_trait -data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation DISPOSITION_MISTYPED WARN node_id='growth_at_4c' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation FRAGMENTED_GRAPH WARN components=3 of 12 node(s) (sizes: 8, 2, 2) — one record, several unrelated mechanisms +data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation FRAGMENTED_GRAPH WARN components=3 of 11 node(s) (sizes: 7, 2, 2) — one record, several unrelated mechanisms data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis UNREACHABLE_FROM_TRAIT WARN node_id='intracellular_osmotic_balance' label='intracellular osmotic balance across salinity' type=BIOLOGICAL_PROCESS — in an island with no path to salinity_phenotype_trait/nacl_optimum/nacl_range/nacl_delta data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis UNREACHABLE_FROM_TRAIT WARN node_id='salt_out_compatible_solute_strategy' label='compatible-solute (salt-out) strategy' type=PATHWAY — in an island with no path to salinity_phenotype_trait/nacl_optimum/nacl_range/nacl_delta data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis UNREACHABLE_FROM_TRAIT WARN node_id='salt_in_strategy' label='salt-in strategy' type=PATHWAY — in an island with no path to salinity_phenotype_trait/nacl_optimum/nacl_range/nacl_delta @@ -512,8 +499,7 @@ data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_p data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis FRAGMENTED_GRAPH WARN components=2 of 13 node(s) (sizes: 9, 4) — one record, several unrelated mechanisms data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation UNREACHABLE_FROM_TRAIT WARN node_id='ion_homeostasis' label='ion homeostasis during salt stress' type=BIOLOGICAL_PROCESS — in an island with no path to slightly_halophilic_trait data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation UNREACHABLE_FROM_TRAIT WARN node_id='na_k_transcription' label='Na+/K+ transcriptional induction' type=BIOLOGICAL_PROCESS — in an island with no path to slightly_halophilic_trait -data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation DISPOSITION_MISTYPED WARN node_id='salt_tolerance' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation FRAGMENTED_GRAPH WARN components=2 of 11 node(s) (sizes: 9, 2) — one record, several unrelated mechanisms +data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation FRAGMENTED_GRAPH WARN components=2 of 10 node(s) (sizes: 8, 2) — one record, several unrelated mechanisms data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance UNREACHABLE_FROM_TRAIT WARN node_id='c_di_amp' label='cyclic di-AMP' type=CHEMICAL — in an island with no path to stenohaline_trait data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance UNREACHABLE_FROM_TRAIT WARN node_id='k_import_systems' label='K+ import systems' type=GENE_OR_PROTEIN — in an island with no path to stenohaline_trait data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance UNREACHABLE_FROM_TRAIT WARN node_id='opua_importer' label='compatible-solute importer OpuA' type=GENE_OR_PROTEIN — in an island with no path to stenohaline_trait @@ -1212,7 +1198,6 @@ data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth UNR data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth UNREACHABLE_FROM_TRAIT WARN node_id='ftsz_z_ladders' label='FtsZ Z-ladder arrays' type=GENE_OR_PROTEIN — in an island with no path to mycelial_growth_trait data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth UNREACHABLE_FROM_TRAIT WARN node_id='sporulation_septation' label='sporulation septation and spore-chain formation' type=BIOLOGICAL_PROCESS — in an island with no path to mycelial_growth_trait data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth FRAGMENTED_GRAPH WARN components=4 of 13 node(s) (sizes: 5, 4, 2, 2) — one record, several unrelated mechanisms -data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade DISPOSITION_MISTYPED WARN node_id='loss_sporulation_capacity' type=CAPACITY — description reads as a disposition, which is a TRAIT data/traits/morphology/orange_pigmented.yaml orange_pigmented_carotenoid_accumulation UNREACHABLE_FROM_TRAIT WARN node_id='crt_y_lycopene_cyclase' label='lycopene beta-cyclase (CrtY)' type=GENE_OR_PROTEIN — in an island with no path to orange_pigmented_trait data/traits/morphology/orange_pigmented.yaml orange_pigmented_carotenoid_accumulation UNREACHABLE_FROM_TRAIT WARN node_id='lycopene' label='lycopene' type=CHEMICAL — in an island with no path to orange_pigmented_trait data/traits/morphology/orange_pigmented.yaml orange_pigmented_carotenoid_accumulation UNREACHABLE_FROM_TRAIT WARN node_id='beta_carotene' label='beta-carotene' type=CHEMICAL — in an island with no path to orange_pigmented_trait @@ -1285,7 +1270,6 @@ data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_pac data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet UNREACHABLE_FROM_TRAIT WARN node_id='peripheral_pg_bridge' label='peripheral peptidoglycan bridge' type=CELLULAR_LOCALIZATION — in an island with no path to sarcina_trait data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet UNREACHABLE_FROM_TRAIT WARN node_id='daughter_cell_separation' label='daughter-cell separation' type=BIOLOGICAL_PROCESS — in an island with no path to sarcina_trait data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet FRAGMENTED_GRAPH WARN components=5 of 14 node(s) (sizes: 4, 3, 3, 2, 2) — one record, several unrelated mechanisms -data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan DISPOSITION_MISTYPED WARN node_id='elongation_capacity' type=CAPACITY — description reads as a disposition, which is a TRAIT data/traits/morphology/spore_forming.yaml spore_forming_endospore_assembly UNREACHABLE_FROM_TRAIT WARN node_id='spoIID' label='SpoIID' type=GENE_OR_PROTEIN — in an island with no path to spore_forming_trait data/traits/morphology/spore_forming.yaml spore_forming_endospore_assembly UNREACHABLE_FROM_TRAIT WARN node_id='spoIIM' label='SpoIIM' type=GENE_OR_PROTEIN — in an island with no path to spore_forming_trait data/traits/morphology/spore_forming.yaml spore_forming_endospore_assembly UNREACHABLE_FROM_TRAIT WARN node_id='spoIIP' label='SpoIIP' type=GENE_OR_PROTEIN — in an island with no path to spore_forming_trait @@ -1366,7 +1350,6 @@ data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation UNREA data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation UNREACHABLE_FROM_TRAIT WARN node_id='coo_operon' label='coo operon' type=GENE_OR_PROTEIN — in an island with no path to carboxydotrophic_trait data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation UNREACHABLE_FROM_TRAIT WARN node_id='cooa_regulator' label='CooA' type=GENE_OR_PROTEIN — in an island with no path to carboxydotrophic_trait data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation FRAGMENTED_GRAPH WARN components=2 of 18 node(s) (sizes: 14, 4) — one record, several unrelated mechanisms -data/traits/physiology/catalase_activity.yaml catalase_activity_h2o2_detoxification DUPLICATE_GROUNDING WARN nodes=2;grounding=GO:0004096 (catalase, catalase_function) data/traits/physiology/chemoheterotrophic.yaml chemoheterotrophic_organic_energy_carbon UNREACHABLE_FROM_TRAIT WARN node_id='mannitol_pts' label='PEP-dependent phosphotransferase system (mannitol PTS)' type=GENE_OR_PROTEIN — in an island with no path to chemoheterotrophic_trait data/traits/physiology/chemoheterotrophic.yaml chemoheterotrophic_organic_energy_carbon UNREACHABLE_FROM_TRAIT WARN node_id='mannitol' label='mannitol' type=CHEMICAL — in an island with no path to chemoheterotrophic_trait data/traits/physiology/chemoheterotrophic.yaml chemoheterotrophic_organic_energy_carbon FRAGMENTED_GRAPH WARN components=2 of 14 node(s) (sizes: 12, 2) — one record, several unrelated mechanisms @@ -1519,7 +1502,6 @@ data/traits/physiology/photoorganoheterotrophic.yaml photoorganoheterotrophic_li data/traits/physiology/phototrophic.yaml phototrophic_light_energy_capture UNREACHABLE_FROM_TRAIT WARN node_id='rhodopsin' label='rhodopsin' type=GENE_OR_PROTEIN — in an island with no path to phototrophic_trait data/traits/physiology/phototrophic.yaml phototrophic_light_energy_capture UNREACHABLE_FROM_TRAIT WARN node_id='ion_transport' label='ion transport across membrane' type=BIOLOGICAL_PROCESS — in an island with no path to phototrophic_trait data/traits/physiology/phototrophic.yaml phototrophic_light_energy_capture FRAGMENTED_GRAPH WARN components=2 of 13 node(s) (sizes: 11, 2) — one record, several unrelated mechanisms -data/traits/physiology/urease_activity.yaml urease_activity_urea_hydrolysis DUPLICATE_GROUNDING WARN nodes=2;grounding=GO:0009039 (urease, urease_function) data/traits/physiology/viable_but_nonculturable_state.yaml vbnc_stress_induced_dormancy UNREACHABLE_FROM_TRAIT WARN node_id='rpos' label='RpoS sigma factor' type=GENE_OR_PROTEIN — in an island with no path to vbnc_trait data/traits/physiology/viable_but_nonculturable_state.yaml vbnc_stress_induced_dormancy UNREACHABLE_FROM_TRAIT WARN node_id='resuscitation' label='resuscitation from VBNC' type=BIOLOGICAL_PROCESS — in an island with no path to vbnc_trait data/traits/physiology/viable_but_nonculturable_state.yaml vbnc_stress_induced_dormancy UNREACHABLE_FROM_TRAIT WARN node_id='atp' label='ATP' type=CHEMICAL — in an island with no path to vbnc_trait diff --git a/conf/evidence_snippet_baseline.tsv b/conf/evidence_snippet_baseline.tsv index 3279d770..796c103b 100644 --- a/conf/evidence_snippet_baseline.tsv +++ b/conf/evidence_snippet_baseline.tsv @@ -499,11 +499,10 @@ data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline: data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline:salinity_transition->proteome_reorganization[0] MISSING_SNIPPET WARN reference=DOI:10.1126/sciadv.adg2059 has no snippet data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline:salt_in_osmoadaptation->acidic_proteome[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s41559-024-02505-6 has no snippet data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:compatible_solute_transporters->limited_osmoadaptive_flexibility[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00145-24 has no snippet -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:ectoine_biosynthesis->salt_tolerance_breadth[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01905-23 has no snippet -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:intracellular_proline->salt_tolerance_breadth[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01195-24 has no snippet -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:nhac_antiporter->salt_tolerance_breadth[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00145-24 has no snippet -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:salt_tolerance_breadth->nacl_delta[0] MISSING_SNIPPET WARN reference=DOI:10.1093/femsre/fuy009 has no snippet -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:trkh_k_uptake->salt_tolerance_breadth[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00145-24 has no snippet +data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:ectoine_biosynthesis->nacl_delta[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01905-23 has no snippet +data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:intracellular_proline->nacl_delta[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01195-24 has no snippet +data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:nhac_antiporter->nacl_delta[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00145-24 has no snippet +data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline:trkh_k_uptake->nacl_delta[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00145-24 has no snippet data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth:c_di_amp->k_import[0] MISSING_SNIPPET WARN reference=DOI:10.1128/MMBR.00181-23 has no snippet data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth:c_di_amp->organic_osmolyte_influx_biosynthesis[0] MISSING_SNIPPET WARN reference=DOI:10.1128/JB.00190-24 has no snippet data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth:compatible_solute_accumulation->osmoadaptation_under_nacl[0] MISSING_SNIPPET WARN reference=DOI:10.1093/femsre/fuaf020 has no snippet @@ -632,12 +631,12 @@ data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phe data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor:opua_transporter->intracellular_glycine_betaine[0] MISSING_SNIPPET WARN reference=DOI:10.1093/femsre/fuad033 has no snippet data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:aerobic_phenotype->oxygen_preference_trait[0] ELLIPTICAL_SNIPPET ERROR non-contiguous quote: 'aerobic ... respiration capacities' data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:catalase->hydrogen_peroxide[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s43705-023-00251-7 has no snippet -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:detoxifying_enzyme_expression->oxygen_tolerance[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00606-23 has no snippet +data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:detoxifying_enzyme_expression->oxygen_preference_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00606-23 has no snippet data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:molecular_oxygen->oxygen_terminal_electron_acceptor[0] MISSING_SNIPPET WARN reference=DOI:10.1371/journal.ppat.1012084 has no snippet data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:oxygen_terminal_electron_acceptor->aerobic_phenotype[0] MISSING_SNIPPET WARN reference=DOI:10.1371/journal.ppat.1012084 has no snippet data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:reactive_oxygen_species_stress->detoxifying_enzyme_expression[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.00606-23 has no snippet -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:superoxide_dismutase->oxygen_tolerance[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s43705-023-00251-7 has no snippet -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility:amino_acid_decarboxylase_acid_resistance->low_ph_tolerance[0] MISSING_SNIPPET WARN reference=DOI:10.3390/microorganisms12091774 has no snippet +data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis:superoxide_dismutase->oxygen_preference_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s43705-023-00251-7 has no snippet +data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility:amino_acid_decarboxylase_acid_resistance->ph_delta_trait[0] MISSING_SNIPPET WARN reference=DOI:10.3390/microorganisms12091774 has no snippet data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility:cation_proton_antiporter_activity->ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1128/AEM.00569-24 has no snippet data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility:f0f1_atpase_activity->ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1093/femsre/fuad033 has no snippet data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility:membrane_lipid_remodeling->proton_permeability[0] MISSING_SNIPPET WARN reference=DOI:10.3389/fmicb.2022.1034164 has no snippet @@ -655,7 +654,7 @@ data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth:resp data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth:electrogenic_na_h_antiport->alkaline_ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro2549 has no snippet data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth:external_ph_stress->cytoplasmic_ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro2549 has no snippet data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth:f1fo_atpase->cytoplasmic_ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro2549 has no snippet -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth:pmf_architecture->ph_homeostasis_capacity[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro2549 has no snippet +data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth:pmf_architecture->cytoplasmic_ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro2549 has no snippet data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth:weak_organic_acids->delta_ph[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro2549 has no snippet data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth:cytoplasmic_ph_homeostasis->moderate_ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.3390/microorganisms12091774 has no snippet data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth:f0f1_atpase->cytoplasmic_ph_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.3390/microorganisms12091774 has no snippet @@ -828,7 +827,6 @@ data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_ad data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation:extracellular_polymeric_substances->freeze_thaw_cryoprotection[0] MISSING_SNIPPET WARN reference=DOI:10.37256/amtt.5220244537 has no snippet data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation:low_temperature->membrane_rigidification[0] MISSING_SNIPPET WARN reference=DOI:10.1128/spectrum.03925-23 has no snippet data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation:low_temperature->unsaturated_hopanoids[0] MISSING_SNIPPET WARN reference=DOI:10.1007/s42770-023-01057-4 has no snippet -data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation:psychrotolerant_trait->growth_at_4c[0] MISSING_SNIPPET WARN reference=DOI:10.1007/s42770-023-01057-4 has no snippet data/traits/environment/radiotolerant.yaml radiotolerance_repair_antioxidant:carotenoid_pigments->reactive_oxygen_species[0] MISSING_SNIPPET WARN reference=DOI:10.3390/su17177864 has no snippet data/traits/environment/radiotolerant.yaml radiotolerance_repair_antioxidant:dna_damage_repair->radiotolerant_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1101/cshperspect.a012765 has no snippet data/traits/environment/radiotolerant.yaml radiotolerance_repair_antioxidant:fe2_ion->reactive_oxygen_species[0] MISSING_SNIPPET WARN reference=DOI:10.1128/spectrum.03838-23 has no snippet @@ -848,10 +846,10 @@ data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_p data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis:salt_out_compatible_solute_strategy->intracellular_osmotic_balance[0] MISSING_SNIPPET WARN reference=DOI:10.3389/frmbi.2023.1329925 has no snippet data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis:water_activity->salinity_phenotype_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s41559-024-02505-6 has no snippet data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:ect_gene_cluster->ectoine_biosynthesis[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01905-23 has no snippet -data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:ectoine->salt_tolerance[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01905-23 has no snippet +data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:ectoine->slightly_halophilic_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01905-23 has no snippet data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:ectoine_biosynthesis->ectoine[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01905-23 has no snippet data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:na_k_transcription->ion_homeostasis[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s42003-022-04319-3 has no snippet -data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:osmoprotectant_transport->salt_tolerance[0] MISSING_SNIPPET WARN reference=DOI:10.1093/femsre/fuy026 has no snippet +data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation:osmoprotectant_transport->slightly_halophilic_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1093/femsre/fuy026 has no snippet data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance:aquaporin_water_channel->facilitated_water_diffusion[0] MISSING_SNIPPET WARN reference=DOI:10.1186/s40168-024-01817-w has no snippet data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance:c_di_amp->k_import_systems[0] MISSING_SNIPPET WARN reference=DOI:10.1128/mmbr.00181-23 has no snippet data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance:c_di_amp->opua_importer[0] MISSING_SNIPPET WARN reference=DOI:10.1128/mmbr.00181-23 has no snippet @@ -2095,9 +2093,8 @@ data/traits/morphology/non_motile.yaml non_motile_absent_motility_apparatus:flhd data/traits/morphology/non_motile.yaml non_motile_absent_motility_apparatus:reduced_motility_state->non_motile_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01548-23 has no snippet data/traits/morphology/non_motile.yaml non_motile_absent_motility_apparatus:wspr_dgc->c_di_gmp_high[0] MISSING_SNIPPET WARN reference=DOI:10.1128/aem.01548-23 has no snippet data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:absent_spo0a_gene->non_spore_forming_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1128/jb.00079-22 has no snippet -data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:loss_sporulation_capacity->non_spore_forming_trait[0] MISSING_SNIPPET WARN reference=DOI:10.3389/fmicb.2021.630573 has no snippet data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:loss_sporulation_genes->non_spore_forming_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1111/1462-2920.16145 has no snippet -data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:low_spo0a_activity->loss_sporulation_capacity[0] MISSING_SNIPPET WARN reference=DOI:10.3389/fmicb.2021.630573 has no snippet +data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:low_spo0a_activity->non_spore_forming_trait[0] MISSING_SNIPPET WARN reference=DOI:10.3389/fmicb.2021.630573 has no snippet data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:no_sporulation_entry->non_spore_forming_trait[0] MISSING_SNIPPET WARN reference=DOI:10.3390/microorganisms11081928 has no snippet data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:phosphorelay_disruption->no_sporulation_entry[0] MISSING_SNIPPET WARN reference=DOI:10.3390/microorganisms11081928 has no snippet data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade:rap_phosphatases->spo0f_dephosphorylation[0] MISSING_SNIPPET WARN reference=DOI:10.1038/s41522-024-00594-6 has no snippet @@ -2226,12 +2223,11 @@ data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_pac data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet:pg_hydrolases->peripheral_pg_bridge[0] MISSING_SNIPPET WARN reference=DOI:10.1002/mbo3.1338 has no snippet data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet:pg_synthetases_hydrolases->septal_pg_remodeling[0] MISSING_SNIPPET WARN reference=DOI:10.1002/mbo3.1338 has no snippet data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet:three_plane_perpendicular_division->sarcina_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1038/ncomms4842 has no snippet -data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:elongation_capacity->sphere_shaped_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:ftsW_flippase->lipid_ii[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:ftsZ_division_ring->divisome_pbps[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:ftsZ_treadmilling->septal_peptidoglycan_synthesis[0] MISSING_SNIPPET WARN reference=DOI:10.1042/bsr20221664 has no snippet data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:lipid_ii->septal_peptidoglycan_synthesis[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet -data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:mreB_elongation_machinery->elongation_capacity[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet +data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:mreB_elongation_machinery->lateral_elongation[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan:septal_peptidoglycan_synthesis->sphere_shaped_trait[0] MISSING_SNIPPET WARN reference=DOI:10.1038/nrmicro3088 has no snippet data/traits/morphology/spindle_shaped.yaml spindle_shaped_symmetric_taper:localized_pg_insertion->non_spherical_morphology[0] MISSING_SNIPPET WARN reference=DOI:10.3389/fmicb.2017.01264 has no snippet data/traits/morphology/spindle_shaped.yaml spindle_shaped_symmetric_taper:localized_pg_insertion->symmetric_polar_pg[0] MISSING_SNIPPET WARN reference=DOI:10.3389/fmicb.2017.01264 has no snippet diff --git a/data/traits/environment/nacl_delta_low.yaml b/data/traits/environment/nacl_delta_low.yaml index a5a06e84..504efeff 100644 --- a/data/traits/environment/nacl_delta_low.yaml +++ b/data/traits/environment/nacl_delta_low.yaml @@ -63,10 +63,6 @@ causal_graphs: node_type: CHEMICAL description: Accumulation of proline as a compatible solute supporting growth at higher NaCl. - - node_id: salt_tolerance_breadth - label: salt-tolerance breadth - node_type: CAPACITY - description: Capacity to grow across a range of ambient NaCl concentrations. edges: - subject: limited_osmoadaptive_flexibility predicate: confers @@ -89,7 +85,7 @@ causal_graphs: predicate_id: rdfs:subClassOf - subject: ectoine_biosynthesis predicate: supports - object: salt_tolerance_breadth + object: nacl_delta description: Ectoine biosynthesis capacity broadens NaCl tolerance; its loss narrows the growth range. evidence: @@ -108,7 +104,7 @@ causal_graphs: (opuAC, proX/proV/proW) supporting osmoadaptation. - subject: trkh_k_uptake predicate: supports - object: salt_tolerance_breadth + object: nacl_delta description: TrkH K+ uptake supports intracellular K+ homeostasis enabling salt tolerance; its absence may contribute to narrow breadth. evidence: @@ -117,7 +113,7 @@ causal_graphs: of compatible solutes and K+ supports salt adaptation. - subject: nhac_antiporter predicate: supports - object: salt_tolerance_breadth + object: nacl_delta description: NhaC Na+/H+ antiporters support ion homeostasis under salt stress; a candidate breadth-expanding mechanism whose absence may contribute to NaCl delta low. @@ -127,7 +123,7 @@ causal_graphs: (~3.27 and 3.22-fold). - subject: intracellular_proline predicate: supports - object: salt_tolerance_breadth + object: nacl_delta description: Increased intracellular proline as a compatible solute supports growth at higher NaCl, broadening tolerance. evidence: @@ -135,16 +131,6 @@ causal_graphs: notes: Engineered proline biosynthesis with blocked catabolism increased intracellular proline and restored growth at 8% NaCl; supports osmolyte role of proline in salt-tolerance breadth. - - subject: salt_tolerance_breadth - predicate: is a - object: nacl_delta - description: Salt-tolerance breadth is the capacity quantified by the NaCl-delta - phenotype. - evidence: - - reference: DOI:10.1093/femsre/fuy009 - notes: Osmoadaptation review frames salinity tolerance breadth as the basis - of the NaCl-delta (stenohaline vs euryhaline) distinction. - predicate_id: rdfs:subClassOf curation_history: - timestamp: '2026-05-05T01:35:46.840753+00:00' curator: seed_from_metpo @@ -188,3 +174,17 @@ curation_history: or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: 'Merged node salt_tolerance_breadth into nacl_delta and repointed its edges. + Issue 352. A FIFTH restatement, caught in review (#360). ''Capacity to grow across + a range of ambient NaCl concentrations'' against nacl_delta''s ''Breadth of the + growth-supporting NaCl range'' -- the same claim, and nacl_delta is in the same + graph already TRAIT and already grounded METPO:1000335. I had retyped it and grounded + it METPO:1000622 (halotolerant), which is a DEGREE of tolerance, not a breadth: + 1000622 is a halophily preference (sub 1000629) while 1000335 is a delta (sub + 1000532/1000534), so the node''s existing `is a -> nacl_delta` edge asserted halotolerant + sub NaCl delta, a subsumption METPO does not have. The absolute-vs-breadth distinction + this migration insists on for pH, missed for salt.' + llm_assisted: true diff --git a/data/traits/environment/oxygen_preference.yaml b/data/traits/environment/oxygen_preference.yaml index 0f475816..596ddb19 100644 --- a/data/traits/environment/oxygen_preference.yaml +++ b/data/traits/environment/oxygen_preference.yaml @@ -96,10 +96,6 @@ causal_graphs: node_type: GENE_OR_PROTEIN description: Enzyme that dismutates superoxide; key oxidative-stress defense. grounding: GO:0004784 - - node_id: oxygen_tolerance - label: oxygen tolerance - node_type: CAPACITY - description: Capacity of a cell to survive exposure to molecular oxygen. edges: - subject: ambient_oxygen predicate: defines @@ -180,7 +176,7 @@ causal_graphs: to O2 or H2O2 stress. - subject: detoxifying_enzyme_expression predicate: increases - object: oxygen_tolerance + object: oxygen_preference_trait description: A larger detoxifying-enzyme repertoire increases survival under oxygen exposure. evidence: @@ -199,7 +195,7 @@ causal_graphs: predicate_id: METPO:2007809 - subject: superoxide_dismutase predicate: increases - object: oxygen_tolerance + object: oxygen_preference_trait description: Higher superoxide dismutase activity is associated with higher oxygen tolerance. evidence: @@ -300,3 +296,19 @@ curation_history: proposed in proposals/metpo_traitmech_v9 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: 'Merged node oxygen_tolerance into oxygen_preference_trait and repointed + its edges. Issue 352. A SIXTH restatement (#360). METPO:1000601''s own definition + is ''an organism''s oxygen requirements OR TOLERANCE for growth'', so ''capacity + of a cell to survive exposure to molecular oxygen'' is part of what the anchor + already says. I had grounded it METPO:1000609 (aerotolerant), which METPO defines + as ''does NOT USE O2 for growth but tolerates its presence'' -- the aerotolerant-anaerobe + phenotype, false of the obligate aerobes this node also covers -- and which is + itself sub METPO:1000601, making it a sixth child phenotype in a graph that wires + the other four in with `is a` and left this one unlinked. aerotolerant.yaml, the + record FOR 1000609, has no such node at all: it models the same biology as detoxification + processes. Merging attaches the ROS-defence island to the trait, which unlike + a retype is a real connectivity gain.' + llm_assisted: true diff --git a/data/traits/environment/ph_delta.yaml b/data/traits/environment/ph_delta.yaml index 40f2e30b..1cf29ad2 100644 --- a/data/traits/environment/ph_delta.yaml +++ b/data/traits/environment/ph_delta.yaml @@ -70,10 +70,6 @@ causal_graphs: node_type: PATHWAY description: Decarboxylase systems that consume intracellular protons and export amines under acid stress. - - node_id: low_ph_tolerance - label: low-pH tolerance - node_type: CAPACITY - description: Capacity to grow and survive under acidic external pH. - node_id: oxidative_phosphorylation label: oxidative phosphorylation node_type: BIOLOGICAL_PROCESS @@ -148,7 +144,7 @@ causal_graphs: predicate_id: RO:0002212 - subject: amino_acid_decarboxylase_acid_resistance predicate: increases - object: low_ph_tolerance + object: ph_delta_trait description: Amino-acid decarboxylase acid-resistance systems increase low-pH tolerance. evidence: @@ -216,3 +212,17 @@ curation_history: is-a BiologicalProcessOrActivity. The replacements are proposed in proposals/metpo_traitmech_v8 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: 'Merged node low_ph_tolerance into ph_delta_trait and repointed its edges. + Issue 352. An EIGHTH restatement (#360). I had grounded it METPO:1003008 (acidotolerant) + and claimed ''no collision'' with the record''s METPO:1000232 (pH delta). No collision, + but the wrong SCOPE: 1003008 is defined as tolerating acid ''WHILE MAINTAINING + OPTIMAL GROWTH NEAR NEUTRAL pH'', which excludes the acidophiles this generic + pH-delta record covers. A grounding narrower than the node it labels is a false + claim about every organism in the excluded part. Also a pure sink. Merging repoints + amino_acid_decarboxylase_acid_resistance onto ph_delta_trait, which reads correctly: + an acid-resistance system widens the growth-supporting pH range, and a pH delta + IS that range.' + llm_assisted: true diff --git a/data/traits/environment/ph_delta_high.yaml b/data/traits/environment/ph_delta_high.yaml index bfefa5b1..dea530fd 100644 --- a/data/traits/environment/ph_delta_high.yaml +++ b/data/traits/environment/ph_delta_high.yaml @@ -78,7 +78,7 @@ causal_graphs: - node_id: growth_external_ph_5_5_9 label: growth across external pH 5.5-9.0 node_type: TRAIT - grounding: METPO:1000478 + grounding: METPO:1000332 description: Growth supported across the neutralophile external pH range ~5.5-9.0. - node_id: constant_pmf label: constant proton motive force @@ -286,3 +286,12 @@ curation_history: this record''s own ph_delta_high_trait, so it takes the same METPO:1000478; merging the two nodes is tracked in issue 352.' llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: REGROUND_CAUSAL_NODE + changes: 'Regrounded node growth_external_ph_5_5_9 from METPO:1000478 to METPO:1000332. + Issue 352. Shared METPO:1000478 with ph_delta_high_trait, but the two say different + things: this node is an ABSOLUTE external range (''~5.5-9.0''), while ph_delta_high_trait + is a BREADTH (''approximately 5-9 pH units''), which is what a pH DELTA is. 1000478 + belongs to the delta; this is a pH range (METPO:1000332).' + llm_assisted: true diff --git a/data/traits/environment/ph_delta_low.yaml b/data/traits/environment/ph_delta_low.yaml index 11d2752e..597faf48 100644 --- a/data/traits/environment/ph_delta_low.yaml +++ b/data/traits/environment/ph_delta_low.yaml @@ -54,10 +54,6 @@ causal_graphs: node_type: BIOLOGICAL_PROCESS description: Tuning of Delta-psi and Delta-pH components of the proton motive force. - - node_id: ph_homeostasis_capacity - label: pH homeostasis capacity - node_type: CAPACITY - description: Capacity to balance and maintain cytoplasmic pH under pH stress. - node_id: weak_organic_acids label: weak organic acids node_type: CHEMICAL @@ -114,7 +110,7 @@ causal_graphs: predicate_id: METPO:2007406 - subject: pmf_architecture predicate: determines - object: ph_homeostasis_capacity + object: cytoplasmic_ph_homeostasis description: PMF architecture (Delta-psi and Delta-pH balancing) determines pH homeostasis capacity. evidence: @@ -198,3 +194,12 @@ curation_history: or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: Merged node ph_homeostasis_capacity into cytoplasmic_ph_homeostasis and + repointed its edges. Issue 352. 'Capacity to balance and maintain cytoplasmic + pH under pH stress' is cytoplasmic_ph_homeostasis, which is IN THE SAME GRAPH + already typed BIOLOGICAL_PROCESS and grounded GO:0051453. Grounding the capacity + node to GO:0051453 would have produced a DUPLICATE_GROUNDING against it. + llm_assisted: true diff --git a/data/traits/environment/psychrotolerant.yaml b/data/traits/environment/psychrotolerant.yaml index c953c5c0..58133222 100644 --- a/data/traits/environment/psychrotolerant.yaml +++ b/data/traits/environment/psychrotolerant.yaml @@ -85,10 +85,6 @@ causal_graphs: label: cryoprotection against freeze-thaw cycles node_type: BIOLOGICAL_PROCESS description: Protection of cells from damage during freeze-thaw cycling. - - node_id: growth_at_4c - label: growth at 4 degrees C - node_type: CAPACITY - description: Ability to grow at refrigeration-range low temperature (4 C). edges: - subject: low_temperature predicate: decreases @@ -169,15 +165,6 @@ causal_graphs: - reference: DOI:10.37256/amtt.5220244537 notes: EPS surrounding cells play a critical role in cold adaptation by providing protection against freeze-thaw cycles and acting as cryoprotectants. - - subject: psychrotolerant_trait - predicate: has capability - object: growth_at_4c - description: The psychrotolerant trait entails the capacity to grow at low temperatures - such as 4 C while retaining higher optimal temperatures. - evidence: - - reference: DOI:10.1007/s42770-023-01057-4 - notes: Psychrotolerant/psychrotroph microbes can grow at 4 C and have optimal - growth temperatures above 20 C. curation_history: - timestamp: '2026-05-05T01:35:46.859611+00:00' curator: seed_from_metpo @@ -282,3 +269,13 @@ curation_history: is-a BiologicalProcessOrActivity. The replacements are proposed in proposals/metpo_traitmech_v8 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: DROP_CAUSAL_NODE + changes: Dropped node growth_at_4c and its edges. Issue 352. 'Ability to grow at + refrigeration-range low temperature (4 C)' IS METPO:1000618 (psychrotolerant), + the record's own term and the grounding of psychrotolerant_trait, which is the + node it hangs off. A leaf restating its own parent. The parent keeps two other + in-edges (cold_shock_response confers, facultative_lipid_remodeling manifests + as), so nothing is stranded. + llm_assisted: true diff --git a/data/traits/environment/slightly_halophilic.yaml b/data/traits/environment/slightly_halophilic.yaml index 73f20bc0..9667f92a 100644 --- a/data/traits/environment/slightly_halophilic.yaml +++ b/data/traits/environment/slightly_halophilic.yaml @@ -43,10 +43,6 @@ causal_graphs: label: osmoprotectant transport node_type: MOLECULAR_FUNCTION description: Uptake of compatible solutes such as glycine betaine. - - node_id: salt_tolerance - label: salt tolerance - node_type: CAPACITY - description: Capacity to grow and survive under elevated salinity / salt stress. - node_id: ectoine_biosynthesis label: ectoine biosynthesis node_type: BIOLOGICAL_PROCESS @@ -131,7 +127,7 @@ causal_graphs: predicate_id: RO:0002234 - subject: ectoine predicate: increases - object: salt_tolerance + object: slightly_halophilic_trait description: Accumulation of ectoine as a compatible solute increases salt tolerance. evidence: - reference: DOI:10.1128/aem.01905-23 @@ -140,7 +136,7 @@ causal_graphs: predicate_id: RO:0002213 - subject: osmoprotectant_transport predicate: increases - object: salt_tolerance + object: slightly_halophilic_trait description: Uptake of compatible solutes is a general salt-out osmoadaptation strategy that raises salt tolerance. evidence: @@ -274,3 +270,23 @@ curation_history: proposed in proposals/metpo_traitmech_v9 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: 'Merged node salt_tolerance into slightly_halophilic_trait and repointed + its edges. Issue 352. A SEVENTH restatement, caught in the third review round + (#360). I had grounded it METPO:1000622 (halotolerant), reasoning that the record + is METPO:1000625 (slightly halophilic) so the term is ''distinct''. It is distinct + in the worst way: 1000622 and 1000625 are DIRECT SIBLINGS under 1000629 (halophily + preference), and 1000622 means ''tolerates high salt but DOES NOT REQUIRE it for + growth'' while 1000625 means the organism ''REQUIRES low to moderate salt for + optimal growth''. So the node asserted of this record the negation of what the + record''s own term says. Distinct is not the test; compatible is. NO CONNECTIVITY + CLAIM HERE: the node was already in the trait''s component via osmoprotectant_transport + -> compatible_solutes -> osmotic_stress, so merging leaves the graph at 2 components + and is a correctness fix, not a structural one. METPO has no generic salt-tolerance + disposition to reground to: halotolerant and acidotolerant are the only candidate + labels and each already anchors its own record. Recorded as issue #364, which + proposes a tolerance axis distinct from the preference axis; nothing under proposals/ + yet.' + llm_assisted: true diff --git a/data/traits/morphology/non_spore_forming.yaml b/data/traits/morphology/non_spore_forming.yaml index ed481ef5..cc68661a 100644 --- a/data/traits/morphology/non_spore_forming.yaml +++ b/data/traits/morphology/non_spore_forming.yaml @@ -70,10 +70,6 @@ causal_graphs: node_type: MOLECULAR_FUNCTION description: Reduced or absent activity of the Spo0A master regulator of endospore formation. - - node_id: loss_sporulation_capacity - label: loss of sporulation capacity - node_type: CAPACITY - description: Loss of the capacity to undergo sporulation. - node_id: rap_phosphatases label: Rap phosphatases node_type: GENE_OR_PROTEIN @@ -143,22 +139,13 @@ causal_graphs: predicate_id: biolink:causes - subject: low_spo0a_activity predicate: causes - object: loss_sporulation_capacity + object: non_spore_forming_trait description: Low or absent Spo0A activity abolishes sporulation capacity. evidence: - reference: DOI:10.3389/fmicb.2021.630573 notes: Spo0A is the master regulator of endospore formation; elevated Spo0A~P is required to trigger sporulation. predicate_id: biolink:causes - - subject: loss_sporulation_capacity - predicate: manifests as - object: non_spore_forming_trait - description: Loss of sporulation capacity manifests the non-spore-forming phenotype. - evidence: - - reference: DOI:10.3389/fmicb.2021.630573 - notes: Failure to produce/activate Spo0A prevents sporulation, yielding the - non-spore-forming trait. - predicate_id: METPO:2007400 - subject: rap_phosphatases predicate: dephosphorylates object: spo0f_dephosphorylation @@ -235,3 +222,13 @@ curation_history: changes: Grounded 5 causal-edge predicate_id field(s) via mappings/predicate_grounding.tsv (biolink:causes×2, METPO:2007400×2, RO:0002212×1). llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: Merged node loss_sporulation_capacity into non_spore_forming_trait and + repointed its edges. Issue 352. 'Loss of the capacity to undergo sporulation' + IS the record's own trait (METPO:1000872, non-spore forming), so the only correct + grounding duplicates the anchor. Collapsing leaves low_spo0a_activity -causes-> + non_spore_forming_trait, which is the shape loss_sporulation_genes already uses + in this graph. + llm_assisted: true diff --git a/data/traits/morphology/sphere_shaped.yaml b/data/traits/morphology/sphere_shaped.yaml index b535b499..baafc056 100644 --- a/data/traits/morphology/sphere_shaped.yaml +++ b/data/traits/morphology/sphere_shaped.yaml @@ -62,10 +62,6 @@ causal_graphs: label: MreB-mediated elongation machinery node_type: GENE_OR_PROTEIN description: Actin-like MreB cytoskeleton directing lateral (rod) elongation. - - node_id: elongation_capacity - label: elongation capacity - node_type: CAPACITY - description: Capacity of a cell to elongate into a rod via sidewall growth. - node_id: divisome_pbps label: divisome and PBPs node_type: GENE_OR_PROTEIN @@ -133,21 +129,13 @@ causal_graphs: predicate_id: RO:0002326 - subject: mreB_elongation_machinery predicate: causally upstream of - object: elongation_capacity + object: lateral_elongation description: Loss of the MreB cytoskeleton removes the elongation capacity that lengthens rods. evidence: - reference: DOI:10.1038/nrmicro3088 notes: loss of the MreB cytoskeleton is the main factor that prevents cocci from elongating into rods - - subject: elongation_capacity - predicate: reduced in - object: sphere_shaped_trait - description: Loss of elongation capacity prevents cocci from elongating into rods, - favoring a sphere. - evidence: - - reference: DOI:10.1038/nrmicro3088 - notes: prevents cocci from elongating into rods - subject: ftsZ_division_ring predicate: recruits object: divisome_pbps @@ -255,3 +243,11 @@ curation_history: not enablement. Needs GENE_OR_PROTEIN added to `transports`'' subject_types, which is a deliberate widening recorded there.' llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: MERGE_CAUSAL_NODE + changes: Merged node elongation_capacity into lateral_elongation and repointed its + edges. Issue 352. 'Capacity of a cell to elongate into a rod via sidewall growth' + against lateral_elongation's 'Sidewall growth mode that lengthens rods' -- the + same claim twice, and both already carried `reduced in -> sphere_shaped_trait`. + llm_assisted: true diff --git a/data/traits/physiology/catalase_activity.yaml b/data/traits/physiology/catalase_activity.yaml index b84a2fe2..4909857a 100644 --- a/data/traits/physiology/catalase_activity.yaml +++ b/data/traits/physiology/catalase_activity.yaml @@ -44,7 +44,6 @@ causal_graphs: label: catalase node_type: GENE_OR_PROTEIN description: Heme enzyme that dismutates hydrogen peroxide. - grounding: GO:0004096 - node_id: catalase_function label: catalase activity node_type: MOLECULAR_FUNCTION @@ -264,3 +263,11 @@ curation_history: or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: UNGROUND_CAUSAL_NODE + changes: 'Dropped the grounding GO:0004096 from node catalase. Issue 352. GO:0004096 + is ''catalase ACTIVITY'' -- a molecular function, which is what catalase_function + is. A protein is not its activity, and the graph already says so correctly: catalase + -enables-> catalase_function. Dropped from the protein, kept on the function.' + llm_assisted: true diff --git a/data/traits/physiology/urease_activity.yaml b/data/traits/physiology/urease_activity.yaml index 181157cc..86e2b7a1 100644 --- a/data/traits/physiology/urease_activity.yaml +++ b/data/traits/physiology/urease_activity.yaml @@ -40,7 +40,6 @@ causal_graphs: label: urease node_type: GENE_OR_PROTEIN description: Nickel metalloenzyme hydrolyzing urea. - grounding: GO:0009039 - node_id: urease_function label: urease activity node_type: MOLECULAR_FUNCTION @@ -244,3 +243,10 @@ curation_history: or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them. llm_assisted: true +- timestamp: '2026-08-08T05:00:00Z' + curator: claude + action: UNGROUND_CAUSAL_NODE + changes: 'Dropped the grounding GO:0009039 from node urease. Issue 352. GO:0009039 + is ''urease ACTIVITY''. Same as catalase: kept on urease_function, dropped from + the protein that enables it.' + llm_assisted: true diff --git a/docs/CURATION_PLAYBOOK.md b/docs/CURATION_PLAYBOOK.md index 940b93c3..84b9cf80 100644 --- a/docs/CURATION_PLAYBOOK.md +++ b/docs/CURATION_PLAYBOOK.md @@ -147,6 +147,62 @@ it actually admits. The count is **0** and the audit hard-fails on a new one, so this section describes a mistake the tooling now prevents rather than a backlog to work around. +### `CAPACITY` holds two senses — only one of them is a trait + +`audit-graphs` flags `DISPOSITION_MISTYPED` when a `CAPACITY` or `STATE` +node's **description** reads as an organism disposition. The count is at +**zero** (#352), so a new one fails `just qc`. + +The distinction is not "does the word *capacity* appear". Of the corpus's +24 `CAPACITY` nodes, #352 merged 8 and deliberately left 16: + +| sense | examples | what to do | +|---|---|---| +| an organism's **disposition** — what it can do | every one of #352's eight: *"Capacity of a cell to survive exposure to molecular oxygen"*, *"Ability to grow at 4 C"*, *"Capacity to grow and survive under elevated salinity"* | **try to ground it — then see below** | +| a **reservoir or quantity** | `reducing_power` (a pool of reductants), `cytoplasmic_buffering_capacity` (*"Capacity of cytoplasmic buffers to absorb pH fluctuations"*), `swimming_velocity`, `metabolic_versatility` | **leave it `CAPACITY`** | + +The left column decides only whether the node is *a candidate*. Note that none +of the disposition examples above still exists: all three were merged or +dropped by #352, because none of them survived the grounding step. A +disposition reading is necessary for a retype and nowhere near sufficient. + +A buffer has a capacity; so does a battery. Neither is something an +organism *can do*. That is why the check is organism-scoped — *capacity of +a cell / organism / bacterium / strain to …* — rather than matching bare +*capacity to*. + +**Ground it, and ground it to something the graph does not already have.** +Every `TRAIT` node in the corpus is grounded, so a retype owes a grounding. +Requiring one is also the test that catches the commonest mistake here, and +it caught **all eight** of #352's: every one of them needed a grounding that +either restated the record, contradicted it, or was narrower than the node. +#352 retyped **nothing** in the end; all eight were merged. + +Note what the test is NOT. "Is this term distinct from the record's own?" +passed four nodes that later failed — `salt_tolerance` was grounded +`METPO:1000622`, a *direct sibling* of its record's `METPO:1000625` under +`METPO:1000629`, which is maximally distinct and asserts the negation of the +record ("does not require salt" against "requires salt"). Ask instead whether +the term is **compatible** with the record and **no narrower** than the node. + +**Do not read a fall in `UNREACHABLE_FROM_TRAIT` as connectivity.** A +retype creates a new anchor, so every node in that island stops being +reported while the island stays exactly as disconnected as before. #352 +moved it 1303 → 1296, and moved it there **identically** whether its nodes +were retyped or merged — which is what proves the count cannot see the +difference. + +`FRAGMENTED_GRAPH`'s *count* cannot either: it reports one finding per split +graph however many pieces that graph is in, so it sat flat at 218 through all +of it. What separates them is component **structure**: retyping changed it in +**zero** of #352's eight graphs, while merging improved three +(`oxygen_preference` 3 components → 2, `ph_delta` 3 → 2, `ph_delta_low` +5 → 4) and left five unchanged as pure deduplication. + +Those numbers came from measuring the graphs by hand. #359 makes it routine — +`reports/causal_graph_connectivity.tsv`, one row per graph, arriving with +**#363**. Once it lands, quote that table rather than the finding counts. + ### `enables` needs a process-or-activity object Separately from the domain rule above, `enables` (`RO:0002327`) has a diff --git a/history/infrastructure/disposition-typing-burndown/2026-08-08T014114Z-claude-code-5d4383.yaml b/history/infrastructure/disposition-typing-burndown/2026-08-08T014114Z-claude-code-5d4383.yaml new file mode 100644 index 00000000..12cc0f47 --- /dev/null +++ b/history/infrastructure/disposition-typing-burndown/2026-08-08T014114Z-claude-code-5d4383.yaml @@ -0,0 +1,37 @@ +history_version: 1 +target: + kind: infrastructure + path: scripts/migrate_disposition_typing.py + slug: disposition-typing-burndown +session: + id: 2026-08-08T014114Z-claude-code-5d4383 + timestamp: '2026-08-08T01:41:14Z' + actors: + - type: ai_agent + name: claude-code + model: claude-opus-5 + agent_tool: claude-code +links: + issues: + - https://github.com/CultureBotAI/TraitMech/issues/352 +events: +- type: EDIT + outcome: changed + sections: + - causal_graphs + - grounding + summary: Burn down the 11 baselined DISPOSITION_MISTYPED and DUPLICATE_GROUNDING findings + details: 'Resolved 11 findings across 11 trait records. Only 4 were retypes: CAPACITY nodes + whose descriptions are organism dispositions, retyped to TRAIT and grounded to METPO:1000622/1000609/1003008 + - terms distinct from the records'' own. The other 4 flagged nodes were RESTATEMENTS, + not mistypes: the only correct grounding for each was the term its own record already + carries, and for three of them the node being restated sat in the same graph already correctly + typed, so they were merged (ph_homeostasis_capacity into cytoplasmic_ph_homeostasis, elongation_capacity + into lateral_elongation, loss_sporulation_capacity collapsed onto non_spore_forming_trait) + and one leaf dropped (growth_at_4c). The 3 DUPLICATE_GROUNDING cases: growth_external_ph_5_5_9 + regrounded METPO:1000478 to METPO:1000332 (it states an absolute range, not a delta), + and catalase/urease had their GO ACTIVITY terms removed from the protein node and kept + on the function node they enable. Verified by re-running audit-graphs (both classes 8+3 + to 0) and audit-predicate-domains (stays 0). NOT an improvement in connectivity: UNREACHABLE_FROM_TRAIT + fell 1303 to 1296 purely because retyping added anchors inside existing islands, with + FRAGMENTED_GRAPH flat at 218 - filed as issue 359.' diff --git a/history/infrastructure/disposition-typing-burndown/2026-08-08T030032Z-claude-code-d72d86.yaml b/history/infrastructure/disposition-typing-burndown/2026-08-08T030032Z-claude-code-d72d86.yaml new file mode 100644 index 00000000..48cd4861 --- /dev/null +++ b/history/infrastructure/disposition-typing-burndown/2026-08-08T030032Z-claude-code-d72d86.yaml @@ -0,0 +1,44 @@ +history_version: 1 +target: + kind: infrastructure + path: scripts/migrate_disposition_typing.py + slug: disposition-typing-burndown +session: + id: 2026-08-08T030032Z-claude-code-d72d86 + timestamp: '2026-08-08T03:00:32Z' + actors: + - type: ai_agent + name: claude-code +links: + issues: + - https://github.com/CultureBotAI/TraitMech/issues/352 + prs: + - https://github.com/CultureBotAI/TraitMech/pull/360 +events: +- type: EDIT + outcome: changed + sections: + - causal_graphs + - grounding + summary: Correct two of the four claimed retypes to merges after review (#360) + details: 'Review of the first burn-down pass found that 2 of the 4 nodes it retyped were + restatements, by the same test the other restatements failed: the grounding chosen for + each contradicted an edge or definition the graph already had. salt_tolerance_breadth + was retyped and grounded METPO:1000622 (halotolerant) while keeping its ''is a -> nacl_delta'' + edge, and nacl_delta is METPO:1000335 (a delta, sub 1000532/1000534) whereas 1000622 is + a halophily preference (sub 1000629), so the graph asserted halotolerant sub NaCl-delta, + a subsumption METPO does not have. It is the absolute-vs-breadth distinction this migration + already insists on for pH, missed for salt; merged into nacl_delta. oxygen_tolerance was + grounded METPO:1000609 (aerotolerant), which METPO defines as ''does not use O2 for growth + but tolerates its presence'' - false of the obligate aerobes the node also covers - and + which is itself sub METPO:1000601, making it a sixth child phenotype in a graph that wires + the other four in with ''is a'' and left this one unlinked; merged into oxygen_preference_trait. + The migration is now 2 retypes, 6 merges, 3 regroundings. Unlike the retype, the merge + is a real connectivity gain: oxygen_preference FRAGMENTED_GRAPH goes components=3 of 14 + (sizes 8,4,2) to components=2 of 13 (sizes 11,2), because the ROS-defence island now attaches + to the trait instead of merely sitting beside a new anchor. UNREACHABLE_FROM_TRAIT is + 1296 either way, which is why the count alone could not tell the two apart (issue 359). + Also fixed the audit trail itself: the first pass logged all 11 events as RETYPE_CAUSAL_NODE + including the 7 merges and regroundings, so the script now emits MERGE/DROP/REGROUND/UNGROUND_CAUSAL_NODE + and appends the curation_history entry itself rather than leaving it to be hand-written. + 519 tests pass; audit-graphs and audit-snippets both 0 new.' diff --git a/history/infrastructure/disposition-typing-burndown/2026-08-08T060908Z-claude-code-f802c8.yaml b/history/infrastructure/disposition-typing-burndown/2026-08-08T060908Z-claude-code-f802c8.yaml new file mode 100644 index 00000000..85950200 --- /dev/null +++ b/history/infrastructure/disposition-typing-burndown/2026-08-08T060908Z-claude-code-f802c8.yaml @@ -0,0 +1,47 @@ +history_version: 1 +target: + kind: infrastructure + path: scripts/migrate_disposition_typing.py + slug: disposition-typing-burndown +session: + id: 2026-08-08T060908Z-claude-code-f802c8 + timestamp: '2026-08-08T06:09:08Z' + actors: + - type: ai_agent + name: claude-code +links: + issues: + - https://github.com/CultureBotAI/TraitMech/issues/352 + prs: + - https://github.com/CultureBotAI/TraitMech/pull/360 +events: +- type: EDIT + outcome: changed + sections: + - causal_graphs + - grounding + summary: 'Third review round takes the retype count to zero: all eight were restatements' + details: 'Review found the last two retypes mis-grounded as well, so the migration is now + 0 retypes, 8 merges, 3 regroundings. salt_tolerance had been grounded METPO:1000622 (halotolerant) + on the reasoning that the record''s own METPO:1000625 (slightly halophilic) makes it distinct; + verified against data/raw/metpo.owl, 1000622 and 1000625 are DIRECT SIBLINGS under 1000629, + and 1000622 means tolerates high salt but does not require it while 1000625 means requires + low to moderate salt for optimal growth - so the node asserted of the record the negation + of the record''s own term. Distinct is not the test, compatible is, and that wrong test + passed all four nodes that later failed. Merged into slightly_halophilic_trait. low_ph_tolerance + had been grounded METPO:1003008 (acidotolerant), whose definition is tolerating acid WHILE + MAINTAINING OPTIMAL GROWTH NEAR NEUTRAL pH, which excludes the acidophiles the generic + pH-delta record covers; a grounding narrower than the node it labels is a false claim + about every organism in the excluded part. Merged into ph_delta_trait. Corrected an overclaim + of my own in the same pass: I had written that merging salt_tolerance attaches the ectoine + island, and measurement showed the node was already in the trait''s component via osmoprotectant_transport + to compatible_solutes to osmotic_stress, so that merge is a correctness fix with no structural + effect. Measured all eight rather than asserting: retyping changed component structure + in ZERO of the eight graphs; merging improves three (oxygen_preference 3 components to + 2, ph_delta 3 to 2, ph_delta_low 5 to 4) and leaves five unchanged as pure deduplication. + UNREACHABLE_FROM_TRAIT reads 1296 under either fix, which is why issue 359 exists and + why the playbook now points at reports/causal_graph_connectivity.tsv instead of the finding + counts. Playbook updated: its canonical disposition example was salt_tolerance''s own + description, which this pass merges away. RETYPE table kept but empty, because we looked + and found none is a different claim from we never modelled retypes. 519 tests pass, qc + green.' diff --git a/pages/browse.html b/pages/browse.html index a4722725..faf6b13d 100644 --- a/pages/browse.html +++ b/pages/browse.html @@ -103,7 +103,7 @@

QUANTITATIVE_PROPERTY

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/ecology.html b/pages/category/ecology.html index 6f77cc59..b92e2d5f 100644 --- a/pages/category/ecology.html +++ b/pages/category/ecology.html @@ -256,7 +256,7 @@

ECOLOGY (26)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/environment.html b/pages/category/environment.html index dedbb2b5..c1f55033 100644 --- a/pages/category/environment.html +++ b/pages/category/environment.html @@ -1016,7 +1016,7 @@

ENVIRONMENT (121)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/genomics.html b/pages/category/genomics.html index 97d93349..f4ee952d 100644 --- a/pages/category/genomics.html +++ b/pages/category/genomics.html @@ -200,7 +200,7 @@

GENOMICS (19)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/metabolism.html b/pages/category/metabolism.html index 7a0cc080..ecee7ff3 100644 --- a/pages/category/metabolism.html +++ b/pages/category/metabolism.html @@ -1192,7 +1192,7 @@

METABOLISM (143)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/morphology.html b/pages/category/morphology.html index 9ba5f9d3..ba02e326 100644 --- a/pages/category/morphology.html +++ b/pages/category/morphology.html @@ -752,7 +752,7 @@

MORPHOLOGY (88)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/observation.html b/pages/category/observation.html index bf07ff6f..caa72157 100644 --- a/pages/category/observation.html +++ b/pages/category/observation.html @@ -208,7 +208,7 @@

OBSERVATION (20)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/physiology.html b/pages/category/physiology.html index fac54ec6..19d2d759 100644 --- a/pages/category/physiology.html +++ b/pages/category/physiology.html @@ -408,7 +408,7 @@

PHYSIOLOGY (45)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/quantitative_property.html b/pages/category/quantitative_property.html index 485dd014..6bf431f5 100644 --- a/pages/category/quantitative_property.html +++ b/pages/category/quantitative_property.html @@ -104,7 +104,7 @@

QUANTITATIVE_PROPERTY (7)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/category/upper.html b/pages/category/upper.html index 46161b1e..abb4734c 100644 --- a/pages/category/upper.html +++ b/pages/category/upper.html @@ -112,7 +112,7 @@

UPPER (8)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/graph.html b/pages/graph.html index c6f82ded..8b7f2afe 100644 --- a/pages/graph.html +++ b/pages/graph.html @@ -239,7 +239,7 @@

Trait graph layout (sfdp)

METPO
- Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/nacl_delta_low.html b/pages/traits/environment/nacl_delta_low.html index 42ea47c5..63af97b0 100644 --- a/pages/traits/environment/nacl_delta_low.html +++ b/pages/traits/environment/nacl_delta_low.html @@ -93,7 +93,7 @@

Edge evidence

  • ectoine biosynthesis capacity supports - salt-tolerance breadth + NaCl delta

    Ectoine biosynthesis capacity broadens NaCl tolerance; its loss narrows the growth range.

  • @@ -437,6 +420,12 @@

    Curation history

    Re-grounded 1 causal edge(s) off microbe-domain METPO predicates (1 to confers), issue 301. The previous predicates are transitively rdfs:subPropertyOf METPO:2000001, whose rdfs:domain is METPO:1000525 (microbe), so a causal-graph subject entailed that the subject IS a microbe; CausalNodeTypeEnum has no organism member, so no such edge could ever satisfy the domain. Edge directions are unchanged - this pass only relabels and re-grounds. RO:0002234 (has output) is used where the subject is an activity, since biolink gives it the domain 'biological process or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them.

    +
  • + · + MERGE_CAUSAL_NODE · claude +

    Merged node salt_tolerance_breadth into nacl_delta and repointed its edges. Issue 352. A FIFTH restatement, caught in review (#360). 'Capacity to grow across a range of ambient NaCl concentrations' against nacl_delta's 'Breadth of the growth-supporting NaCl range' -- the same claim, and nacl_delta is in the same graph already TRAIT and already grounded METPO:1000335. I had retyped it and grounded it METPO:1000622 (halotolerant), which is a DEGREE of tolerance, not a breadth: 1000622 is a halophily preference (sub 1000629) while 1000335 is a delta (sub 1000532/1000534), so the node's existing `is a -> nacl_delta` edge asserted halotolerant sub NaCl delta, a subsumption METPO does not have. The absolute-vs-breadth distinction this migration insists on for pH, missed for salt.

    +
  • + @@ -794,7 +783,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking limited osmoadaptive flexibility to a narrow NaCl growth breadth (\u2264 ~1% w/v).", "edges": [{"description": "Limited osmoadaptive flexibility yields a narrow NaCl-delta breadth.", "evidence": [{"notes": "Supports limited osmoadaptive flexibility as the basis of stenohaline breadth.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited_osmoadaptive_flexibility", "target": "nacl_delta_low_trait"}, {"description": "NaCl delta low is a quantitative bin of the NaCl-delta phenotype.", "evidence": [{"notes": "Supports a narrow breadth as a value within the NaCl-delta distribution.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "nacl_delta_low_trait", "target": "nacl_delta"}, {"description": "Ectoine biosynthesis capacity broadens NaCl tolerance; its loss narrows the growth range.", "evidence": [{"notes": "Wild-type H. elongata synthesizes ectoine as a major osmolyte, whereas ectoine-deficient strains become salt sensitive; supports general role of ectoine pathway in broadening NaCl tolerance.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-3", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "ectoine_biosynthesis", "target": "salt_tolerance_breadth"}, {"description": "Salinity-induced Opu/ProU compatible-solute transporters underlie osmoadaptive flexibility; limited capacity contributes to narrow breadth.", "evidence": [{"notes": "Proteomics showed salinity-linked increases in compatible-solute transporters (opuAC, proX/proV/proW) supporting osmoadaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "id": "edge-4", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "compatible_solute_transporters", "target": "limited_osmoadaptive_flexibility"}, {"description": "TrkH K+ uptake supports intracellular K+ homeostasis enabling salt tolerance; its absence may contribute to narrow breadth.", "evidence": [{"notes": "TrkH listed among salinity-responsive proteins; simultaneous accumulation of compatible solutes and K+ supports salt adaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "id": "edge-5", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "trkh_k_uptake", "target": "salt_tolerance_breadth"}, {"description": "NhaC Na+/H+ antiporters support ion homeostasis under salt stress; a candidate breadth-expanding mechanism whose absence may contribute to NaCl delta low.", "evidence": [{"notes": "Proteomics show strong salinity-linked increases for NhaC-family antiporters (~3.27 and 3.22-fold).", "reference": "DOI:10.1128/aem.00145-24"}], "id": "edge-6", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "nhac_antiporter", "target": "salt_tolerance_breadth"}, {"description": "Increased intracellular proline as a compatible solute supports growth at higher NaCl, broadening tolerance.", "evidence": [{"notes": "Engineered proline biosynthesis with blocked catabolism increased intracellular proline and restored growth at 8% NaCl; supports osmolyte role of proline in salt-tolerance breadth.", "reference": "DOI:10.1128/aem.01195-24"}], "id": "edge-7", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "intracellular_proline", "target": "salt_tolerance_breadth"}, {"description": "Salt-tolerance breadth is the capacity quantified by the NaCl-delta phenotype.", "evidence": [{"notes": "Osmoadaptation review frames salinity tolerance breadth as the basis of the NaCl-delta (stenohaline vs euryhaline) distinction.", "reference": "DOI:10.1093/femsre/fuy009"}], "id": "edge-8", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "salt_tolerance_breadth", "target": "nacl_delta"}], "evidence_rows": [{"description": "Limited osmoadaptive flexibility yields a narrow NaCl-delta breadth.", "edge_id": "edge-1", "evidence": [{"notes": "Supports limited osmoadaptive flexibility as the basis of stenohaline breadth.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited osmoadaptive flexibility", "target": "NaCl delta low"}, {"description": "NaCl delta low is a quantitative bin of the NaCl-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports a narrow breadth as a value within the NaCl-delta distribution.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "NaCl delta low", "target": "NaCl delta"}, {"description": "Ectoine biosynthesis capacity broadens NaCl tolerance; its loss narrows the growth range.", "edge_id": "edge-3", "evidence": [{"notes": "Wild-type H. elongata synthesizes ectoine as a major osmolyte, whereas ectoine-deficient strains become salt sensitive; supports general role of ectoine pathway in broadening NaCl tolerance.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "supports", "predicate_id": null, "source": "ectoine biosynthesis capacity", "target": "salt-tolerance breadth"}, {"description": "Salinity-induced Opu/ProU compatible-solute transporters underlie osmoadaptive flexibility; limited capacity contributes to narrow breadth.", "edge_id": "edge-4", "evidence": [{"notes": "Proteomics showed salinity-linked increases in compatible-solute transporters (opuAC, proX/proV/proW) supporting osmoadaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "predicate": "supports", "predicate_id": null, "source": "compatible-solute transporters (Opu/ProU)", "target": "limited osmoadaptive flexibility"}, {"description": "TrkH K+ uptake supports intracellular K+ homeostasis enabling salt tolerance; its absence may contribute to narrow breadth.", "edge_id": "edge-5", "evidence": [{"notes": "TrkH listed among salinity-responsive proteins; simultaneous accumulation of compatible solutes and K+ supports salt adaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "predicate": "supports", "predicate_id": null, "source": "TrkH potassium uptake system", "target": "salt-tolerance breadth"}, {"description": "NhaC Na+/H+ antiporters support ion homeostasis under salt stress; a candidate breadth-expanding mechanism whose absence may contribute to NaCl delta low.", "edge_id": "edge-6", "evidence": [{"notes": "Proteomics show strong salinity-linked increases for NhaC-family antiporters (~3.27 and 3.22-fold).", "reference": "DOI:10.1128/aem.00145-24"}], "predicate": "supports", "predicate_id": null, "source": "NhaC-family Na+/H+ antiporter", "target": "salt-tolerance breadth"}, {"description": "Increased intracellular proline as a compatible solute supports growth at higher NaCl, broadening tolerance.", "edge_id": "edge-7", "evidence": [{"notes": "Engineered proline biosynthesis with blocked catabolism increased intracellular proline and restored growth at 8% NaCl; supports osmolyte role of proline in salt-tolerance breadth.", "reference": "DOI:10.1128/aem.01195-24"}], "predicate": "supports", "predicate_id": null, "source": "intracellular proline accumulation", "target": "salt-tolerance breadth"}, {"description": "Salt-tolerance breadth is the capacity quantified by the NaCl-delta phenotype.", "edge_id": "edge-8", "evidence": [{"notes": "Osmoadaptation review frames salinity tolerance breadth as the basis of the NaCl-delta (stenohaline vs euryhaline) distinction.", "reference": "DOI:10.1093/femsre/fuy009"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "salt-tolerance breadth", "target": "NaCl delta"}], "graph_id": "nacl_delta_low_stenohaline", "issues": [], "nodes": [{"color": "#f3e8ff", "description": "Opu/ProU-family uptake systems importing compatible solutes during osmoadaptation.", "grounding": null, "id": "compatible_solute_transporters", "is_orphan": false, "label": "compatible-solute transporters (Opu/ProU)", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Capacity to synthesize ectoine as a major compatible solute under salt stress.", "grounding": null, "id": "ectoine_biosynthesis", "is_orphan": false, "label": "ectoine biosynthesis capacity", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Accumulation of proline as a compatible solute supporting growth at higher NaCl.", "grounding": null, "id": "intracellular_proline", "is_orphan": false, "label": "intracellular proline accumulation", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Narrow capacity to remodel osmolyte pools and ion transport across ambient salinities.", "grounding": null, "id": "limited_osmoadaptive_flexibility", "is_orphan": false, "label": "limited osmoadaptive flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting NaCl range.", "grounding": "METPO:1000335", "id": "nacl_delta", "is_orphan": false, "label": "NaCl delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#dbeafe", "description": "NaCl growth-supporting breadth \u2264 ~1% w/v.", "grounding": "METPO:1000479", "id": "nacl_delta_low_trait", "is_orphan": false, "label": "NaCl delta low", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3e8ff", "description": "NhaC-family Na+/H+ antiporters mediating ion homeostasis under salt stress.", "grounding": null, "id": "nhac_antiporter", "is_orphan": false, "label": "NhaC-family Na+/H+ antiporter", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3f4f6", "description": "Capacity to grow across a range of ambient NaCl concentrations.", "grounding": null, "id": "salt_tolerance_breadth", "is_orphan": false, "label": "salt-tolerance breadth", "node_type": "CAPACITY", "xrefs": []}, {"color": "#f3e8ff", "description": "TrkH-type K+ uptake transporter supporting intracellular potassium homeostasis under salt stress.", "grounding": null, "id": "trkh_k_uptake", "is_orphan": false, "label": "TrkH potassium uptake system", "node_type": "GENE_OR_PROTEIN", "xrefs": []}], "title": "NaCl-delta-low stenohaline breadth"}]; + var graphs = [{"description": "DOI-backed graph linking limited osmoadaptive flexibility to a narrow NaCl growth breadth (\u2264 ~1% w/v).", "edges": [{"description": "Limited osmoadaptive flexibility yields a narrow NaCl-delta breadth.", "evidence": [{"notes": "Supports limited osmoadaptive flexibility as the basis of stenohaline breadth.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited_osmoadaptive_flexibility", "target": "nacl_delta_low_trait"}, {"description": "NaCl delta low is a quantitative bin of the NaCl-delta phenotype.", "evidence": [{"notes": "Supports a narrow breadth as a value within the NaCl-delta distribution.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "nacl_delta_low_trait", "target": "nacl_delta"}, {"description": "Ectoine biosynthesis capacity broadens NaCl tolerance; its loss narrows the growth range.", "evidence": [{"notes": "Wild-type H. elongata synthesizes ectoine as a major osmolyte, whereas ectoine-deficient strains become salt sensitive; supports general role of ectoine pathway in broadening NaCl tolerance.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-3", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "ectoine_biosynthesis", "target": "nacl_delta"}, {"description": "Salinity-induced Opu/ProU compatible-solute transporters underlie osmoadaptive flexibility; limited capacity contributes to narrow breadth.", "evidence": [{"notes": "Proteomics showed salinity-linked increases in compatible-solute transporters (opuAC, proX/proV/proW) supporting osmoadaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "id": "edge-4", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "compatible_solute_transporters", "target": "limited_osmoadaptive_flexibility"}, {"description": "TrkH K+ uptake supports intracellular K+ homeostasis enabling salt tolerance; its absence may contribute to narrow breadth.", "evidence": [{"notes": "TrkH listed among salinity-responsive proteins; simultaneous accumulation of compatible solutes and K+ supports salt adaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "id": "edge-5", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "trkh_k_uptake", "target": "nacl_delta"}, {"description": "NhaC Na+/H+ antiporters support ion homeostasis under salt stress; a candidate breadth-expanding mechanism whose absence may contribute to NaCl delta low.", "evidence": [{"notes": "Proteomics show strong salinity-linked increases for NhaC-family antiporters (~3.27 and 3.22-fold).", "reference": "DOI:10.1128/aem.00145-24"}], "id": "edge-6", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "nhac_antiporter", "target": "nacl_delta"}, {"description": "Increased intracellular proline as a compatible solute supports growth at higher NaCl, broadening tolerance.", "evidence": [{"notes": "Engineered proline biosynthesis with blocked catabolism increased intracellular proline and restored growth at 8% NaCl; supports osmolyte role of proline in salt-tolerance breadth.", "reference": "DOI:10.1128/aem.01195-24"}], "id": "edge-7", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "intracellular_proline", "target": "nacl_delta"}], "evidence_rows": [{"description": "Limited osmoadaptive flexibility yields a narrow NaCl-delta breadth.", "edge_id": "edge-1", "evidence": [{"notes": "Supports limited osmoadaptive flexibility as the basis of stenohaline breadth.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited osmoadaptive flexibility", "target": "NaCl delta low"}, {"description": "NaCl delta low is a quantitative bin of the NaCl-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports a narrow breadth as a value within the NaCl-delta distribution.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "salinity range"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "NaCl delta low", "target": "NaCl delta"}, {"description": "Ectoine biosynthesis capacity broadens NaCl tolerance; its loss narrows the growth range.", "edge_id": "edge-3", "evidence": [{"notes": "Wild-type H. elongata synthesizes ectoine as a major osmolyte, whereas ectoine-deficient strains become salt sensitive; supports general role of ectoine pathway in broadening NaCl tolerance.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "supports", "predicate_id": null, "source": "ectoine biosynthesis capacity", "target": "NaCl delta"}, {"description": "Salinity-induced Opu/ProU compatible-solute transporters underlie osmoadaptive flexibility; limited capacity contributes to narrow breadth.", "edge_id": "edge-4", "evidence": [{"notes": "Proteomics showed salinity-linked increases in compatible-solute transporters (opuAC, proX/proV/proW) supporting osmoadaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "predicate": "supports", "predicate_id": null, "source": "compatible-solute transporters (Opu/ProU)", "target": "limited osmoadaptive flexibility"}, {"description": "TrkH K+ uptake supports intracellular K+ homeostasis enabling salt tolerance; its absence may contribute to narrow breadth.", "edge_id": "edge-5", "evidence": [{"notes": "TrkH listed among salinity-responsive proteins; simultaneous accumulation of compatible solutes and K+ supports salt adaptation.", "reference": "DOI:10.1128/aem.00145-24"}], "predicate": "supports", "predicate_id": null, "source": "TrkH potassium uptake system", "target": "NaCl delta"}, {"description": "NhaC Na+/H+ antiporters support ion homeostasis under salt stress; a candidate breadth-expanding mechanism whose absence may contribute to NaCl delta low.", "edge_id": "edge-6", "evidence": [{"notes": "Proteomics show strong salinity-linked increases for NhaC-family antiporters (~3.27 and 3.22-fold).", "reference": "DOI:10.1128/aem.00145-24"}], "predicate": "supports", "predicate_id": null, "source": "NhaC-family Na+/H+ antiporter", "target": "NaCl delta"}, {"description": "Increased intracellular proline as a compatible solute supports growth at higher NaCl, broadening tolerance.", "edge_id": "edge-7", "evidence": [{"notes": "Engineered proline biosynthesis with blocked catabolism increased intracellular proline and restored growth at 8% NaCl; supports osmolyte role of proline in salt-tolerance breadth.", "reference": "DOI:10.1128/aem.01195-24"}], "predicate": "supports", "predicate_id": null, "source": "intracellular proline accumulation", "target": "NaCl delta"}], "graph_id": "nacl_delta_low_stenohaline", "issues": [], "nodes": [{"color": "#f3e8ff", "description": "Opu/ProU-family uptake systems importing compatible solutes during osmoadaptation.", "grounding": null, "id": "compatible_solute_transporters", "is_orphan": false, "label": "compatible-solute transporters (Opu/ProU)", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Capacity to synthesize ectoine as a major compatible solute under salt stress.", "grounding": null, "id": "ectoine_biosynthesis", "is_orphan": false, "label": "ectoine biosynthesis capacity", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Accumulation of proline as a compatible solute supporting growth at higher NaCl.", "grounding": null, "id": "intracellular_proline", "is_orphan": false, "label": "intracellular proline accumulation", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Narrow capacity to remodel osmolyte pools and ion transport across ambient salinities.", "grounding": null, "id": "limited_osmoadaptive_flexibility", "is_orphan": false, "label": "limited osmoadaptive flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting NaCl range.", "grounding": "METPO:1000335", "id": "nacl_delta", "is_orphan": false, "label": "NaCl delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#dbeafe", "description": "NaCl growth-supporting breadth \u2264 ~1% w/v.", "grounding": "METPO:1000479", "id": "nacl_delta_low_trait", "is_orphan": false, "label": "NaCl delta low", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3e8ff", "description": "NhaC-family Na+/H+ antiporters mediating ion homeostasis under salt stress.", "grounding": null, "id": "nhac_antiporter", "is_orphan": false, "label": "NhaC-family Na+/H+ antiporter", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3e8ff", "description": "TrkH-type K+ uptake transporter supporting intracellular potassium homeostasis under salt stress.", "grounding": null, "id": "trkh_k_uptake", "is_orphan": false, "label": "TrkH potassium uptake system", "node_type": "GENE_OR_PROTEIN", "xrefs": []}], "title": "NaCl-delta-low stenohaline breadth"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -817,7 +806,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 01:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/oxygen_preference.html b/pages/traits/environment/oxygen_preference.html index 94b08624..81ef10f7 100644 --- a/pages/traits/environment/oxygen_preference.html +++ b/pages/traits/environment/oxygen_preference.html @@ -195,7 +195,7 @@

    Edge evidence

  • detoxifying-enzyme gene expression increases - oxygen tolerance + oxygen preference RO:0002213

    A larger detoxifying-enzyme repertoire increases survival under oxygen exposure.

  • @@ -922,7 +928,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking ambient molecular-oxygen availability to the four child oxygen-preference phenotypes (aerobic, anaerobic, microaerophilic, facultative) that classify how organisms use or tolerate O2.", "edges": [{"description": "Ambient molecular-oxygen concentration is the quantitative axis defining oxygen-preference phenotypes.", "evidence": [{"notes": "Supports molecular oxygen utilization as the classification axis for oxygen-preference phenotypes.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "various capacities in their utilization of molecular oxygen"}], "id": "edge-1", "is_orphan": false, "predicate": "defines", "predicate_id": "METPO:2007500", "source": "ambient_oxygen", "target": "oxygen_preference_trait"}, {"description": "Aerobic is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports aerobic as an oxygen-use phenotype within oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic ... respiration capacities"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "aerobic_phenotype", "target": "oxygen_preference_trait"}, {"description": "Anaerobic is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports anaerobic as a distinct oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic, microaerobic, and anaerobic reductases"}], "id": "edge-3", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "anaerobic_phenotype", "target": "oxygen_preference_trait"}, {"description": "Microaerophilic is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports microaerophilic as a low-O2 setting on the oxygen-preference axis.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerophilic, microaerophilic, or anaerobic"}], "id": "edge-4", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "microaerophilic_phenotype", "target": "oxygen_preference_trait"}, {"description": "Facultative oxygen preference is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports facultative organisms as a mixed-O2 setting on the oxygen-preference axis, switching between aerobic and anaerobic metabolism.", "reference": "DOI:10.1111/cmi.13338", "snippet": "cope with changing oxygen levels"}], "id": "edge-5", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "facultative_phenotype", "target": "oxygen_preference_trait"}, {"description": "Obligate aerobic growth depends on molecular oxygen as terminal electron acceptor.", "evidence": [{"notes": "Obligate aerobes use only oxygen as the terminal electron acceptor, defining aerobic oxygen-preference.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "id": "edge-6", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "oxygen_terminal_electron_acceptor", "target": "aerobic_phenotype"}, {"description": "Molecular oxygen functions as the terminal electron acceptor in aerobic respiration.", "evidence": [{"notes": "Oxygen is used as the terminal electron acceptor of the aerobic respiratory chain.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "id": "edge-7", "is_orphan": false, "predicate": "serves as", "predicate_id": null, "source": "molecular_oxygen", "target": "oxygen_terminal_electron_acceptor"}, {"description": "O2 or H2O2 stress upregulates detoxifying-enzyme genes.", "evidence": [{"notes": "Expression of genes encoding detoxifying enzymes was upregulated in response to O2 or H2O2 stress.", "reference": "DOI:10.1128/aem.00606-23"}], "id": "edge-8", "is_orphan": false, "predicate": "upregulates", "predicate_id": null, "source": "reactive_oxygen_species_stress", "target": "detoxifying_enzyme_expression"}, {"description": "A larger detoxifying-enzyme repertoire increases survival under oxygen exposure.", "evidence": [{"notes": "Cells with more detoxifying genes survived longer than those with few scavenging enzymes.", "reference": "DOI:10.1128/aem.00606-23"}], "id": "edge-9", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "detoxifying_enzyme_expression", "target": "oxygen_tolerance"}, {"description": "Catalase rapidly degrades hydrogen peroxide, a reactive oxygen species.", "evidence": [{"notes": "Catalase is the most prominent enzyme for H2O2 degradation at higher concentrations.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "id": "edge-10", "is_orphan": false, "predicate": "degrades", "predicate_id": "METPO:2007809", "source": "catalase", "target": "hydrogen_peroxide"}, {"description": "Higher superoxide dismutase activity is associated with higher oxygen tolerance.", "evidence": [{"notes": "Higher Sod activity corresponded to higher oxygen tolerance.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "id": "edge-11", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "superoxide_dismutase", "target": "oxygen_tolerance"}], "evidence_rows": [{"description": "Ambient molecular-oxygen concentration is the quantitative axis defining oxygen-preference phenotypes.", "edge_id": "edge-1", "evidence": [{"notes": "Supports molecular oxygen utilization as the classification axis for oxygen-preference phenotypes.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "various capacities in their utilization of molecular oxygen"}], "predicate": "defines", "predicate_id": "METPO:2007500", "source": "ambient molecular oxygen", "target": "oxygen preference"}, {"description": "Aerobic is a child oxygen-preference phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports aerobic as an oxygen-use phenotype within oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic ... respiration capacities"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "aerobic", "target": "oxygen preference"}, {"description": "Anaerobic is a child oxygen-preference phenotype.", "edge_id": "edge-3", "evidence": [{"notes": "Supports anaerobic as a distinct oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic, microaerobic, and anaerobic reductases"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "anaerobic", "target": "oxygen preference"}, {"description": "Microaerophilic is a child oxygen-preference phenotype.", "edge_id": "edge-4", "evidence": [{"notes": "Supports microaerophilic as a low-O2 setting on the oxygen-preference axis.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerophilic, microaerophilic, or anaerobic"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "microaerophilic", "target": "oxygen preference"}, {"description": "Facultative oxygen preference is a child oxygen-preference phenotype.", "edge_id": "edge-5", "evidence": [{"notes": "Supports facultative organisms as a mixed-O2 setting on the oxygen-preference axis, switching between aerobic and anaerobic metabolism.", "reference": "DOI:10.1111/cmi.13338", "snippet": "cope with changing oxygen levels"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "facultative oxygen preference", "target": "oxygen preference"}, {"description": "Obligate aerobic growth depends on molecular oxygen as terminal electron acceptor.", "edge_id": "edge-6", "evidence": [{"notes": "Obligate aerobes use only oxygen as the terminal electron acceptor, defining aerobic oxygen-preference.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "O2 as terminal electron acceptor", "target": "aerobic"}, {"description": "Molecular oxygen functions as the terminal electron acceptor in aerobic respiration.", "edge_id": "edge-7", "evidence": [{"notes": "Oxygen is used as the terminal electron acceptor of the aerobic respiratory chain.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "predicate": "serves as", "predicate_id": null, "source": "molecular oxygen", "target": "O2 as terminal electron acceptor"}, {"description": "O2 or H2O2 stress upregulates detoxifying-enzyme genes.", "edge_id": "edge-8", "evidence": [{"notes": "Expression of genes encoding detoxifying enzymes was upregulated in response to O2 or H2O2 stress.", "reference": "DOI:10.1128/aem.00606-23"}], "predicate": "upregulates", "predicate_id": null, "source": "oxygen / reactive oxygen species stress", "target": "detoxifying-enzyme gene expression"}, {"description": "A larger detoxifying-enzyme repertoire increases survival under oxygen exposure.", "edge_id": "edge-9", "evidence": [{"notes": "Cells with more detoxifying genes survived longer than those with few scavenging enzymes.", "reference": "DOI:10.1128/aem.00606-23"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "detoxifying-enzyme gene expression", "target": "oxygen tolerance"}, {"description": "Catalase rapidly degrades hydrogen peroxide, a reactive oxygen species.", "edge_id": "edge-10", "evidence": [{"notes": "Catalase is the most prominent enzyme for H2O2 degradation at higher concentrations.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "predicate": "degrades", "predicate_id": "METPO:2007809", "source": "catalase", "target": "hydrogen peroxide"}, {"description": "Higher superoxide dismutase activity is associated with higher oxygen tolerance.", "edge_id": "edge-11", "evidence": [{"notes": "Higher Sod activity corresponded to higher oxygen tolerance.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "superoxide dismutase", "target": "oxygen tolerance"}], "graph_id": "oxygen_preference_o2_availability_axis", "issues": [], "nodes": [{"color": "#dbeafe", "description": "Growth in the presence of molecular oxygen using O2 as terminal electron acceptor.", "grounding": "METPO:1000602", "id": "aerobic_phenotype", "is_orphan": false, "label": "aerobic", "node_type": "TRAIT", "xrefs": []}, {"color": "#dcfce7", "description": "Ambient O2 concentration imposed on the cell.", "grounding": null, "id": "ambient_oxygen", "is_orphan": false, "label": "ambient molecular oxygen", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#dbeafe", "description": "Growth in the absence of molecular oxygen.", "grounding": "METPO:1000603", "id": "anaerobic_phenotype", "is_orphan": false, "label": "anaerobic", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3e8ff", "description": "Enzyme that degrades hydrogen peroxide to water and oxygen.", "grounding": "GO:0004096", "id": "catalase", "is_orphan": false, "label": "catalase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Upregulation of genes encoding oxidative-stress detoxifying enzymes.", "grounding": null, "id": "detoxifying_enzyme_expression", "is_orphan": false, "label": "detoxifying-enzyme gene expression", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Growth across a range of oxygen availabilities, switching between aerobic and anaerobic metabolism.", "grounding": "METPO:1000612", "id": "facultative_phenotype", "is_orphan": false, "label": "facultative oxygen preference", "node_type": "TRAIT", "xrefs": []}, {"color": "#fef3c7", "description": "Reactive oxygen species produced during aerobic metabolism.", "grounding": "CHEBI:16240", "id": "hydrogen_peroxide", "is_orphan": false, "label": "hydrogen peroxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#dbeafe", "description": "Growth at low molecular-oxygen concentrations.", "grounding": "METPO:1000604", "id": "microaerophilic_phenotype", "is_orphan": false, "label": "microaerophilic", "node_type": "TRAIT", "xrefs": []}, {"color": "#fef3c7", "description": "O2 used as a terminal electron acceptor in aerobic respiration.", "grounding": "CHEBI:15379", "id": "molecular_oxygen", "is_orphan": false, "label": "molecular oxygen", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#dbeafe", "description": "Classification of an organism\u0027s oxygen requirements or tolerance for growth.", "grounding": "METPO:1000601", "id": "oxygen_preference_trait", "is_orphan": false, "label": "oxygen preference", "node_type": "TRAIT", "xrefs": []}, {"color": "#cffafe", "description": "Use of molecular oxygen as the terminal electron acceptor of the respiratory chain.", "grounding": null, "id": "oxygen_terminal_electron_acceptor", "is_orphan": false, "label": "O2 as terminal electron acceptor", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#f3f4f6", "description": "Capacity of a cell to survive exposure to molecular oxygen.", "grounding": null, "id": "oxygen_tolerance", "is_orphan": false, "label": "oxygen tolerance", "node_type": "CAPACITY", "xrefs": []}, {"color": "#dcfce7", "description": "Exposure to O2 and reactive oxygen species such as hydrogen peroxide.", "grounding": null, "id": "reactive_oxygen_species_stress", "is_orphan": false, "label": "oxygen / reactive oxygen species stress", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#f3e8ff", "description": "Enzyme that dismutates superoxide; key oxidative-stress defense.", "grounding": "GO:0004784", "id": "superoxide_dismutase", "is_orphan": false, "label": "superoxide dismutase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}], "title": "Oxygen-preference O2-availability axis"}]; + var graphs = [{"description": "DOI-backed graph linking ambient molecular-oxygen availability to the four child oxygen-preference phenotypes (aerobic, anaerobic, microaerophilic, facultative) that classify how organisms use or tolerate O2.", "edges": [{"description": "Ambient molecular-oxygen concentration is the quantitative axis defining oxygen-preference phenotypes.", "evidence": [{"notes": "Supports molecular oxygen utilization as the classification axis for oxygen-preference phenotypes.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "various capacities in their utilization of molecular oxygen"}], "id": "edge-1", "is_orphan": false, "predicate": "defines", "predicate_id": "METPO:2007500", "source": "ambient_oxygen", "target": "oxygen_preference_trait"}, {"description": "Aerobic is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports aerobic as an oxygen-use phenotype within oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic ... respiration capacities"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "aerobic_phenotype", "target": "oxygen_preference_trait"}, {"description": "Anaerobic is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports anaerobic as a distinct oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic, microaerobic, and anaerobic reductases"}], "id": "edge-3", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "anaerobic_phenotype", "target": "oxygen_preference_trait"}, {"description": "Microaerophilic is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports microaerophilic as a low-O2 setting on the oxygen-preference axis.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerophilic, microaerophilic, or anaerobic"}], "id": "edge-4", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "microaerophilic_phenotype", "target": "oxygen_preference_trait"}, {"description": "Facultative oxygen preference is a child oxygen-preference phenotype.", "evidence": [{"notes": "Supports facultative organisms as a mixed-O2 setting on the oxygen-preference axis, switching between aerobic and anaerobic metabolism.", "reference": "DOI:10.1111/cmi.13338", "snippet": "cope with changing oxygen levels"}], "id": "edge-5", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "facultative_phenotype", "target": "oxygen_preference_trait"}, {"description": "Obligate aerobic growth depends on molecular oxygen as terminal electron acceptor.", "evidence": [{"notes": "Obligate aerobes use only oxygen as the terminal electron acceptor, defining aerobic oxygen-preference.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "id": "edge-6", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "oxygen_terminal_electron_acceptor", "target": "aerobic_phenotype"}, {"description": "Molecular oxygen functions as the terminal electron acceptor in aerobic respiration.", "evidence": [{"notes": "Oxygen is used as the terminal electron acceptor of the aerobic respiratory chain.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "id": "edge-7", "is_orphan": false, "predicate": "serves as", "predicate_id": null, "source": "molecular_oxygen", "target": "oxygen_terminal_electron_acceptor"}, {"description": "O2 or H2O2 stress upregulates detoxifying-enzyme genes.", "evidence": [{"notes": "Expression of genes encoding detoxifying enzymes was upregulated in response to O2 or H2O2 stress.", "reference": "DOI:10.1128/aem.00606-23"}], "id": "edge-8", "is_orphan": false, "predicate": "upregulates", "predicate_id": null, "source": "reactive_oxygen_species_stress", "target": "detoxifying_enzyme_expression"}, {"description": "A larger detoxifying-enzyme repertoire increases survival under oxygen exposure.", "evidence": [{"notes": "Cells with more detoxifying genes survived longer than those with few scavenging enzymes.", "reference": "DOI:10.1128/aem.00606-23"}], "id": "edge-9", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "detoxifying_enzyme_expression", "target": "oxygen_preference_trait"}, {"description": "Catalase rapidly degrades hydrogen peroxide, a reactive oxygen species.", "evidence": [{"notes": "Catalase is the most prominent enzyme for H2O2 degradation at higher concentrations.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "id": "edge-10", "is_orphan": false, "predicate": "degrades", "predicate_id": "METPO:2007809", "source": "catalase", "target": "hydrogen_peroxide"}, {"description": "Higher superoxide dismutase activity is associated with higher oxygen tolerance.", "evidence": [{"notes": "Higher Sod activity corresponded to higher oxygen tolerance.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "id": "edge-11", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "superoxide_dismutase", "target": "oxygen_preference_trait"}], "evidence_rows": [{"description": "Ambient molecular-oxygen concentration is the quantitative axis defining oxygen-preference phenotypes.", "edge_id": "edge-1", "evidence": [{"notes": "Supports molecular oxygen utilization as the classification axis for oxygen-preference phenotypes.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "various capacities in their utilization of molecular oxygen"}], "predicate": "defines", "predicate_id": "METPO:2007500", "source": "ambient molecular oxygen", "target": "oxygen preference"}, {"description": "Aerobic is a child oxygen-preference phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports aerobic as an oxygen-use phenotype within oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic ... respiration capacities"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "aerobic", "target": "oxygen preference"}, {"description": "Anaerobic is a child oxygen-preference phenotype.", "edge_id": "edge-3", "evidence": [{"notes": "Supports anaerobic as a distinct oxygen-preference classification.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerobic, microaerobic, and anaerobic reductases"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "anaerobic", "target": "oxygen preference"}, {"description": "Microaerophilic is a child oxygen-preference phenotype.", "edge_id": "edge-4", "evidence": [{"notes": "Supports microaerophilic as a low-O2 setting on the oxygen-preference axis.", "reference": "DOI:10.3389/fmicb.2014.00674", "snippet": "aerophilic, microaerophilic, or anaerobic"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "microaerophilic", "target": "oxygen preference"}, {"description": "Facultative oxygen preference is a child oxygen-preference phenotype.", "edge_id": "edge-5", "evidence": [{"notes": "Supports facultative organisms as a mixed-O2 setting on the oxygen-preference axis, switching between aerobic and anaerobic metabolism.", "reference": "DOI:10.1111/cmi.13338", "snippet": "cope with changing oxygen levels"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "facultative oxygen preference", "target": "oxygen preference"}, {"description": "Obligate aerobic growth depends on molecular oxygen as terminal electron acceptor.", "edge_id": "edge-6", "evidence": [{"notes": "Obligate aerobes use only oxygen as the terminal electron acceptor, defining aerobic oxygen-preference.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "O2 as terminal electron acceptor", "target": "aerobic"}, {"description": "Molecular oxygen functions as the terminal electron acceptor in aerobic respiration.", "edge_id": "edge-7", "evidence": [{"notes": "Oxygen is used as the terminal electron acceptor of the aerobic respiratory chain.", "reference": "DOI:10.1371/journal.ppat.1012084"}], "predicate": "serves as", "predicate_id": null, "source": "molecular oxygen", "target": "O2 as terminal electron acceptor"}, {"description": "O2 or H2O2 stress upregulates detoxifying-enzyme genes.", "edge_id": "edge-8", "evidence": [{"notes": "Expression of genes encoding detoxifying enzymes was upregulated in response to O2 or H2O2 stress.", "reference": "DOI:10.1128/aem.00606-23"}], "predicate": "upregulates", "predicate_id": null, "source": "oxygen / reactive oxygen species stress", "target": "detoxifying-enzyme gene expression"}, {"description": "A larger detoxifying-enzyme repertoire increases survival under oxygen exposure.", "edge_id": "edge-9", "evidence": [{"notes": "Cells with more detoxifying genes survived longer than those with few scavenging enzymes.", "reference": "DOI:10.1128/aem.00606-23"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "detoxifying-enzyme gene expression", "target": "oxygen preference"}, {"description": "Catalase rapidly degrades hydrogen peroxide, a reactive oxygen species.", "edge_id": "edge-10", "evidence": [{"notes": "Catalase is the most prominent enzyme for H2O2 degradation at higher concentrations.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "predicate": "degrades", "predicate_id": "METPO:2007809", "source": "catalase", "target": "hydrogen peroxide"}, {"description": "Higher superoxide dismutase activity is associated with higher oxygen tolerance.", "edge_id": "edge-11", "evidence": [{"notes": "Higher Sod activity corresponded to higher oxygen tolerance.", "reference": "DOI:10.1038/s43705-023-00251-7"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "superoxide dismutase", "target": "oxygen preference"}], "graph_id": "oxygen_preference_o2_availability_axis", "issues": [], "nodes": [{"color": "#dbeafe", "description": "Growth in the presence of molecular oxygen using O2 as terminal electron acceptor.", "grounding": "METPO:1000602", "id": "aerobic_phenotype", "is_orphan": false, "label": "aerobic", "node_type": "TRAIT", "xrefs": []}, {"color": "#dcfce7", "description": "Ambient O2 concentration imposed on the cell.", "grounding": null, "id": "ambient_oxygen", "is_orphan": false, "label": "ambient molecular oxygen", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#dbeafe", "description": "Growth in the absence of molecular oxygen.", "grounding": "METPO:1000603", "id": "anaerobic_phenotype", "is_orphan": false, "label": "anaerobic", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3e8ff", "description": "Enzyme that degrades hydrogen peroxide to water and oxygen.", "grounding": "GO:0004096", "id": "catalase", "is_orphan": false, "label": "catalase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Upregulation of genes encoding oxidative-stress detoxifying enzymes.", "grounding": null, "id": "detoxifying_enzyme_expression", "is_orphan": false, "label": "detoxifying-enzyme gene expression", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Growth across a range of oxygen availabilities, switching between aerobic and anaerobic metabolism.", "grounding": "METPO:1000612", "id": "facultative_phenotype", "is_orphan": false, "label": "facultative oxygen preference", "node_type": "TRAIT", "xrefs": []}, {"color": "#fef3c7", "description": "Reactive oxygen species produced during aerobic metabolism.", "grounding": "CHEBI:16240", "id": "hydrogen_peroxide", "is_orphan": false, "label": "hydrogen peroxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#dbeafe", "description": "Growth at low molecular-oxygen concentrations.", "grounding": "METPO:1000604", "id": "microaerophilic_phenotype", "is_orphan": false, "label": "microaerophilic", "node_type": "TRAIT", "xrefs": []}, {"color": "#fef3c7", "description": "O2 used as a terminal electron acceptor in aerobic respiration.", "grounding": "CHEBI:15379", "id": "molecular_oxygen", "is_orphan": false, "label": "molecular oxygen", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#dbeafe", "description": "Classification of an organism\u0027s oxygen requirements or tolerance for growth.", "grounding": "METPO:1000601", "id": "oxygen_preference_trait", "is_orphan": false, "label": "oxygen preference", "node_type": "TRAIT", "xrefs": []}, {"color": "#cffafe", "description": "Use of molecular oxygen as the terminal electron acceptor of the respiratory chain.", "grounding": null, "id": "oxygen_terminal_electron_acceptor", "is_orphan": false, "label": "O2 as terminal electron acceptor", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#dcfce7", "description": "Exposure to O2 and reactive oxygen species such as hydrogen peroxide.", "grounding": null, "id": "reactive_oxygen_species_stress", "is_orphan": false, "label": "oxygen / reactive oxygen species stress", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#f3e8ff", "description": "Enzyme that dismutates superoxide; key oxidative-stress defense.", "grounding": "GO:0004784", "id": "superoxide_dismutase", "is_orphan": false, "label": "superoxide dismutase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}], "title": "Oxygen-preference O2-availability axis"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -945,7 +951,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 02:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/ph_delta.html b/pages/traits/environment/ph_delta.html index 0a246967..458a8a18 100644 --- a/pages/traits/environment/ph_delta.html +++ b/pages/traits/environment/ph_delta.html @@ -178,7 +178,7 @@

    Edge evidence

  • amino-acid decarboxylase acid-resistance system increases - low-pH tolerance + pH delta RO:0002213

    Amino-acid decarboxylase acid-resistance systems increase low-pH tolerance.

  • @@ -835,7 +841,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking the flexibility of pH-homeostasis machinery to the breadth of the pH growth range (delta = max \u2212 min).", "edges": [{"description": "pH-homeostasis flexibility enables broad pH tolerance.", "evidence": [{"notes": "Supports the breadth of pH homeostasis as the basis of broad pH tolerance.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "ph_homeostasis_flexibility", "target": "tolerance_breadth"}, {"description": "The breadth between minimum and maximum growth-supporting external pH manifests the pH-delta phenotype.", "evidence": [{"notes": "Supports the bounded proton motive force as the determinant of the pH tolerance breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "id": "edge-2", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "tolerance_breadth", "target": "ph_delta_trait"}, {"description": "External pH homeostasis enables a broader external pH growth breadth.", "evidence": [{"notes": "Na+/H+ and K+/H+ antiporters and proton-pumping systems prevent internal pH from becoming too low, underpinning growth across pH (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-3", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "ph_homeostasis", "target": "ph_delta_trait"}, {"description": "Proton motive force generation supports external pH homeostasis.", "evidence": [{"notes": "PMF-linked systems regulate internal pH; decarboxylation can store free energy as PMF (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-4", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "proton_motive_force_generation", "target": "ph_homeostasis"}, {"description": "F0F1-ATPase activity supports external pH homeostasis.", "evidence": [{"notes": "F0F1-ATPase uses 3-5 protons per ATP and is among systems that prevent internal pH from becoming too low (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-5", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "f0f1_atpase_activity", "target": "ph_homeostasis"}, {"description": "Monovalent cation:H+ antiporter activity supports pH homeostasis under alkaline conditions.", "evidence": [{"notes": "Monovalent antiporters exchange Na+/K+ to facilitate proton entry for alkali tolerance (generic transporter class).", "reference": "DOI:10.1128/AEM.00569-24"}], "id": "edge-6", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "cation_proton_antiporter_activity", "target": "ph_homeostasis"}, {"description": "Saturated membrane fatty acid remodeling decreases membrane proton permeability.", "evidence": [{"notes": "Membranes enriched in saturated fatty acids reduce proton permeability, minimizing proton influx in acidic environments (generalizable low-pH mechanism).", "reference": "DOI:10.3389/fmicb.2022.1034164"}], "id": "edge-7", "is_orphan": false, "predicate": "decreases", "predicate_id": "RO:0002212", "source": "membrane_lipid_remodeling", "target": "proton_permeability"}, {"description": "Amino-acid decarboxylase acid-resistance systems increase low-pH tolerance.", "evidence": [{"notes": "Amino-acid decarboxylase systems consume protons and export corresponding amines as a key acid-resistance mechanism (authoritative review).", "reference": "DOI:10.3390/microorganisms12091774"}], "id": "edge-8", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "amino_acid_decarboxylase_acid_resistance", "target": "low_ph_tolerance"}, {"description": "Oxidative phosphorylation upregulation supports proton export and resistance to cytoplasmic acidification.", "evidence": [{"notes": "Increased oxidative phosphorylation generates PMF and a higher proton export rate, causally helping cells resist decreases in cytoplasmic pH.", "reference": "DOI:10.3390/microorganisms12081565"}], "id": "edge-9", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "oxidative_phosphorylation", "target": "ph_homeostasis"}], "evidence_rows": [{"description": "pH-homeostasis flexibility enables broad pH tolerance.", "edge_id": "edge-1", "evidence": [{"notes": "Supports the breadth of pH homeostasis as the basis of broad pH tolerance.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "pH-homeostasis flexibility", "target": "pH tolerance breadth"}, {"description": "The breadth between minimum and maximum growth-supporting external pH manifests the pH-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports the bounded proton motive force as the determinant of the pH tolerance breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "pH tolerance breadth", "target": "pH delta"}, {"description": "External pH homeostasis enables a broader external pH growth breadth.", "edge_id": "edge-3", "evidence": [{"notes": "Na+/H+ and K+/H+ antiporters and proton-pumping systems prevent internal pH from becoming too low, underpinning growth across pH (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "external pH homeostasis", "target": "pH delta"}, {"description": "Proton motive force generation supports external pH homeostasis.", "edge_id": "edge-4", "evidence": [{"notes": "PMF-linked systems regulate internal pH; decarboxylation can store free energy as PMF (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "supports", "predicate_id": null, "source": "proton motive force generation", "target": "external pH homeostasis"}, {"description": "F0F1-ATPase activity supports external pH homeostasis.", "edge_id": "edge-5", "evidence": [{"notes": "F0F1-ATPase uses 3-5 protons per ATP and is among systems that prevent internal pH from becoming too low (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "supports", "predicate_id": null, "source": "F0F1-ATPase activity", "target": "external pH homeostasis"}, {"description": "Monovalent cation:H+ antiporter activity supports pH homeostasis under alkaline conditions.", "edge_id": "edge-6", "evidence": [{"notes": "Monovalent antiporters exchange Na+/K+ to facilitate proton entry for alkali tolerance (generic transporter class).", "reference": "DOI:10.1128/AEM.00569-24"}], "predicate": "supports", "predicate_id": null, "source": "monovalent cation:H+ antiporter activity", "target": "external pH homeostasis"}, {"description": "Saturated membrane fatty acid remodeling decreases membrane proton permeability.", "edge_id": "edge-7", "evidence": [{"notes": "Membranes enriched in saturated fatty acids reduce proton permeability, minimizing proton influx in acidic environments (generalizable low-pH mechanism).", "reference": "DOI:10.3389/fmicb.2022.1034164"}], "predicate": "decreases", "predicate_id": "RO:0002212", "source": "saturated membrane fatty acid remodeling", "target": "membrane proton permeability"}, {"description": "Amino-acid decarboxylase acid-resistance systems increase low-pH tolerance.", "edge_id": "edge-8", "evidence": [{"notes": "Amino-acid decarboxylase systems consume protons and export corresponding amines as a key acid-resistance mechanism (authoritative review).", "reference": "DOI:10.3390/microorganisms12091774"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "amino-acid decarboxylase acid-resistance system", "target": "low-pH tolerance"}, {"description": "Oxidative phosphorylation upregulation supports proton export and resistance to cytoplasmic acidification.", "edge_id": "edge-9", "evidence": [{"notes": "Increased oxidative phosphorylation generates PMF and a higher proton export rate, causally helping cells resist decreases in cytoplasmic pH.", "reference": "DOI:10.3390/microorganisms12081565"}], "predicate": "supports", "predicate_id": null, "source": "oxidative phosphorylation", "target": "external pH homeostasis"}], "graph_id": "ph_delta_homeostasis_flexibility", "issues": [], "nodes": [{"color": "#e0e7ff", "description": "Decarboxylase systems that consume intracellular protons and export amines under acid stress.", "grounding": null, "id": "amino_acid_decarboxylase_acid_resistance", "is_orphan": false, "label": "amino-acid decarboxylase acid-resistance system", "node_type": "PATHWAY", "xrefs": []}, {"color": "#cffafe", "description": "Exchange of Na+/K+ for H+ to support pH homeostasis, notably under alkaline conditions.", "grounding": null, "id": "cation_proton_antiporter_activity", "is_orphan": false, "label": "monovalent cation:H+ antiporter activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#cffafe", "description": "F-type H+-transporting ATPase coupling proton flux to ATP synthesis/hydrolysis.", "grounding": null, "id": "f0f1_atpase_activity", "is_orphan": false, "label": "F0F1-ATPase activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#f3f4f6", "description": "Capacity to grow and survive under acidic external pH.", "grounding": null, "id": "low_ph_tolerance", "is_orphan": false, "label": "low-pH tolerance", "node_type": "CAPACITY", "xrefs": []}, {"color": "#ecfccb", "description": "Enrichment of saturated membrane fatty acids that reduces membrane proton permeability.", "grounding": null, "id": "membrane_lipid_remodeling", "is_orphan": false, "label": "saturated membrane fatty acid remodeling", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Respiratory generation of PMF and proton export contributing to cytoplasmic pH defense.", "grounding": "GO:0006119", "id": "oxidative_phosphorylation", "is_orphan": false, "label": "oxidative phosphorylation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting external pH range.", "grounding": "METPO:1000232", "id": "ph_delta_trait", "is_orphan": false, "label": "pH delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of intracellular pH within viable bounds across external pH variation.", "grounding": null, "id": "ph_homeostasis", "is_orphan": false, "label": "external pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Capacity to remodel proton extrusion, K+/H+ antiport, and envelope buffering across a wide span of external pH.", "grounding": null, "id": "ph_homeostasis_flexibility", "is_orphan": false, "label": "pH-homeostasis flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Establishment of the transmembrane electrochemical proton gradient.", "grounding": null, "id": "proton_motive_force_generation", "is_orphan": false, "label": "proton motive force generation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Passive permeability of the cell membrane to protons.", "grounding": null, "id": "proton_permeability", "is_orphan": false, "label": "membrane proton permeability", "node_type": "QUALITY", "xrefs": []}, {"color": "#ecfccb", "description": "Span between the minimum and maximum growth-supporting external pH.", "grounding": null, "id": "tolerance_breadth", "is_orphan": false, "label": "pH tolerance breadth", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}], "title": "pH-delta homeostasis flexibility"}]; + var graphs = [{"description": "DOI-backed graph linking the flexibility of pH-homeostasis machinery to the breadth of the pH growth range (delta = max \u2212 min).", "edges": [{"description": "pH-homeostasis flexibility enables broad pH tolerance.", "evidence": [{"notes": "Supports the breadth of pH homeostasis as the basis of broad pH tolerance.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "ph_homeostasis_flexibility", "target": "tolerance_breadth"}, {"description": "The breadth between minimum and maximum growth-supporting external pH manifests the pH-delta phenotype.", "evidence": [{"notes": "Supports the bounded proton motive force as the determinant of the pH tolerance breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "id": "edge-2", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "tolerance_breadth", "target": "ph_delta_trait"}, {"description": "External pH homeostasis enables a broader external pH growth breadth.", "evidence": [{"notes": "Na+/H+ and K+/H+ antiporters and proton-pumping systems prevent internal pH from becoming too low, underpinning growth across pH (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-3", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "ph_homeostasis", "target": "ph_delta_trait"}, {"description": "Proton motive force generation supports external pH homeostasis.", "evidence": [{"notes": "PMF-linked systems regulate internal pH; decarboxylation can store free energy as PMF (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-4", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "proton_motive_force_generation", "target": "ph_homeostasis"}, {"description": "F0F1-ATPase activity supports external pH homeostasis.", "evidence": [{"notes": "F0F1-ATPase uses 3-5 protons per ATP and is among systems that prevent internal pH from becoming too low (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-5", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "f0f1_atpase_activity", "target": "ph_homeostasis"}, {"description": "Monovalent cation:H+ antiporter activity supports pH homeostasis under alkaline conditions.", "evidence": [{"notes": "Monovalent antiporters exchange Na+/K+ to facilitate proton entry for alkali tolerance (generic transporter class).", "reference": "DOI:10.1128/AEM.00569-24"}], "id": "edge-6", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "cation_proton_antiporter_activity", "target": "ph_homeostasis"}, {"description": "Saturated membrane fatty acid remodeling decreases membrane proton permeability.", "evidence": [{"notes": "Membranes enriched in saturated fatty acids reduce proton permeability, minimizing proton influx in acidic environments (generalizable low-pH mechanism).", "reference": "DOI:10.3389/fmicb.2022.1034164"}], "id": "edge-7", "is_orphan": false, "predicate": "decreases", "predicate_id": "RO:0002212", "source": "membrane_lipid_remodeling", "target": "proton_permeability"}, {"description": "Amino-acid decarboxylase acid-resistance systems increase low-pH tolerance.", "evidence": [{"notes": "Amino-acid decarboxylase systems consume protons and export corresponding amines as a key acid-resistance mechanism (authoritative review).", "reference": "DOI:10.3390/microorganisms12091774"}], "id": "edge-8", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "amino_acid_decarboxylase_acid_resistance", "target": "ph_delta_trait"}, {"description": "Oxidative phosphorylation upregulation supports proton export and resistance to cytoplasmic acidification.", "evidence": [{"notes": "Increased oxidative phosphorylation generates PMF and a higher proton export rate, causally helping cells resist decreases in cytoplasmic pH.", "reference": "DOI:10.3390/microorganisms12081565"}], "id": "edge-9", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "oxidative_phosphorylation", "target": "ph_homeostasis"}], "evidence_rows": [{"description": "pH-homeostasis flexibility enables broad pH tolerance.", "edge_id": "edge-1", "evidence": [{"notes": "Supports the breadth of pH homeostasis as the basis of broad pH tolerance.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "pH-homeostasis flexibility", "target": "pH tolerance breadth"}, {"description": "The breadth between minimum and maximum growth-supporting external pH manifests the pH-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports the bounded proton motive force as the determinant of the pH tolerance breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "pH tolerance breadth", "target": "pH delta"}, {"description": "External pH homeostasis enables a broader external pH growth breadth.", "edge_id": "edge-3", "evidence": [{"notes": "Na+/H+ and K+/H+ antiporters and proton-pumping systems prevent internal pH from becoming too low, underpinning growth across pH (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "external pH homeostasis", "target": "pH delta"}, {"description": "Proton motive force generation supports external pH homeostasis.", "edge_id": "edge-4", "evidence": [{"notes": "PMF-linked systems regulate internal pH; decarboxylation can store free energy as PMF (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "supports", "predicate_id": null, "source": "proton motive force generation", "target": "external pH homeostasis"}, {"description": "F0F1-ATPase activity supports external pH homeostasis.", "edge_id": "edge-5", "evidence": [{"notes": "F0F1-ATPase uses 3-5 protons per ATP and is among systems that prevent internal pH from becoming too low (general bacteria, review).", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "supports", "predicate_id": null, "source": "F0F1-ATPase activity", "target": "external pH homeostasis"}, {"description": "Monovalent cation:H+ antiporter activity supports pH homeostasis under alkaline conditions.", "edge_id": "edge-6", "evidence": [{"notes": "Monovalent antiporters exchange Na+/K+ to facilitate proton entry for alkali tolerance (generic transporter class).", "reference": "DOI:10.1128/AEM.00569-24"}], "predicate": "supports", "predicate_id": null, "source": "monovalent cation:H+ antiporter activity", "target": "external pH homeostasis"}, {"description": "Saturated membrane fatty acid remodeling decreases membrane proton permeability.", "edge_id": "edge-7", "evidence": [{"notes": "Membranes enriched in saturated fatty acids reduce proton permeability, minimizing proton influx in acidic environments (generalizable low-pH mechanism).", "reference": "DOI:10.3389/fmicb.2022.1034164"}], "predicate": "decreases", "predicate_id": "RO:0002212", "source": "saturated membrane fatty acid remodeling", "target": "membrane proton permeability"}, {"description": "Amino-acid decarboxylase acid-resistance systems increase low-pH tolerance.", "edge_id": "edge-8", "evidence": [{"notes": "Amino-acid decarboxylase systems consume protons and export corresponding amines as a key acid-resistance mechanism (authoritative review).", "reference": "DOI:10.3390/microorganisms12091774"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "amino-acid decarboxylase acid-resistance system", "target": "pH delta"}, {"description": "Oxidative phosphorylation upregulation supports proton export and resistance to cytoplasmic acidification.", "edge_id": "edge-9", "evidence": [{"notes": "Increased oxidative phosphorylation generates PMF and a higher proton export rate, causally helping cells resist decreases in cytoplasmic pH.", "reference": "DOI:10.3390/microorganisms12081565"}], "predicate": "supports", "predicate_id": null, "source": "oxidative phosphorylation", "target": "external pH homeostasis"}], "graph_id": "ph_delta_homeostasis_flexibility", "issues": [], "nodes": [{"color": "#e0e7ff", "description": "Decarboxylase systems that consume intracellular protons and export amines under acid stress.", "grounding": null, "id": "amino_acid_decarboxylase_acid_resistance", "is_orphan": false, "label": "amino-acid decarboxylase acid-resistance system", "node_type": "PATHWAY", "xrefs": []}, {"color": "#cffafe", "description": "Exchange of Na+/K+ for H+ to support pH homeostasis, notably under alkaline conditions.", "grounding": null, "id": "cation_proton_antiporter_activity", "is_orphan": false, "label": "monovalent cation:H+ antiporter activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#cffafe", "description": "F-type H+-transporting ATPase coupling proton flux to ATP synthesis/hydrolysis.", "grounding": null, "id": "f0f1_atpase_activity", "is_orphan": false, "label": "F0F1-ATPase activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Enrichment of saturated membrane fatty acids that reduces membrane proton permeability.", "grounding": null, "id": "membrane_lipid_remodeling", "is_orphan": false, "label": "saturated membrane fatty acid remodeling", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Respiratory generation of PMF and proton export contributing to cytoplasmic pH defense.", "grounding": "GO:0006119", "id": "oxidative_phosphorylation", "is_orphan": false, "label": "oxidative phosphorylation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting external pH range.", "grounding": "METPO:1000232", "id": "ph_delta_trait", "is_orphan": false, "label": "pH delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of intracellular pH within viable bounds across external pH variation.", "grounding": null, "id": "ph_homeostasis", "is_orphan": false, "label": "external pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Capacity to remodel proton extrusion, K+/H+ antiport, and envelope buffering across a wide span of external pH.", "grounding": null, "id": "ph_homeostasis_flexibility", "is_orphan": false, "label": "pH-homeostasis flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Establishment of the transmembrane electrochemical proton gradient.", "grounding": null, "id": "proton_motive_force_generation", "is_orphan": false, "label": "proton motive force generation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Passive permeability of the cell membrane to protons.", "grounding": null, "id": "proton_permeability", "is_orphan": false, "label": "membrane proton permeability", "node_type": "QUALITY", "xrefs": []}, {"color": "#ecfccb", "description": "Span between the minimum and maximum growth-supporting external pH.", "grounding": null, "id": "tolerance_breadth", "is_orphan": false, "label": "pH tolerance breadth", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}], "title": "pH-delta homeostasis flexibility"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -858,7 +864,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 00:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/ph_delta_high.html b/pages/traits/environment/ph_delta_high.html index 023a1504..49db39da 100644 --- a/pages/traits/environment/ph_delta_high.html +++ b/pages/traits/environment/ph_delta_high.html @@ -501,6 +501,12 @@

    Curation history

    Grounded the retyped TRAIT node, issue 334 review. docs/CURATION_PLAYBOOK.md requires every TRAIT row to carry a grounding, and 462 of 482 TRAIT nodes in the corpus do, so leaving a newly retyped one ungrounded was the exception rather than the norm. It also mattered more than hygiene: an ungrounded TRAIT node still counts as a reachability anchor for audit-graphs, so it made UNREACHABLE_FROM_TRAIT fall on this graph without any edge changing -- the island is unchanged and FRAGMENTED_GRAPH still reports it. Grounding it makes the duplication legible instead of leaving two unrelated-looking anchors. growth_external_ph_5_5_9 is the same concept as this record's own ph_delta_high_trait, so it takes the same METPO:1000478; merging the two nodes is tracked in issue 352.

    +
  • + · + REGROUND_CAUSAL_NODE · claude +

    Regrounded node growth_external_ph_5_5_9 from METPO:1000478 to METPO:1000332. Issue 352. Shared METPO:1000478 with ph_delta_high_trait, but the two say different things: this node is an ABSOLUTE external range ('~5.5-9.0'), while ph_delta_high_trait is a BREADTH ('approximately 5-9 pH units'), which is what a pH DELTA is. 1000478 belongs to the delta; this is a pH range (METPO:1000332).

    +
  • +
    @@ -858,7 +864,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking maximal pH-homeostasis flexibility to a pH growth breadth of approximately 5\u20139 pH units.", "edges": [{"description": "Maximal pH-homeostasis flexibility yields an extreme pH-delta breadth.", "evidence": [{"notes": "Supports maximal pH-homeostasis flexibility as the basis of euryphilic breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "maximal_ph_homeostasis", "target": "ph_delta_high_trait"}, {"description": "pH delta high is a quantitative bin of the pH-delta phenotype.", "evidence": [{"notes": "Supports the 5\u20139 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "ph_delta_high_trait", "target": "ph_delta"}, {"description": "Na+/H+ antiport is a core regulator of cytoplasmic pH across changing external pH.", "evidence": [{"notes": "Key regulators of bacterial pH homeostasis are Na+/H+ and K+/H+ antiporters.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-3", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "na_h_antiporters", "target": "ph_delta_high_trait"}, {"description": "Electron-transport proton pumps counteract pH stress by controlling proton flux.", "evidence": [{"notes": "Proton-pumping enzymes (electron transport components) are major homeostasis regulators.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-4", "is_orphan": false, "predicate": "helps maintain", "predicate_id": null, "source": "respiratory_proton_pumps", "target": "cytoplasmic_ph_homeostasis"}, {"description": "F0F1-ATPase participates in pH homeostasis via proton extrusion or uptake.", "evidence": [{"notes": "F0F1-ATPase is named among key regulators of bacterial pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-5", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "f0f1_atpase", "target": "ph_delta_high_trait"}, {"description": "Proton-consuming decarboxylation pathways support broad pH tolerance.", "evidence": [{"notes": "Metabolite decarboxylation pathways are key regulators of pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-6", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "metabolite_decarboxylation", "target": "ph_delta_high_trait"}, {"description": "High buffering capacity limits pH swings, enabling broader pH tolerance.", "evidence": [{"notes": "Internal pH kept ~7.0-7.5 as buffers absorb fluctuations.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-7", "is_orphan": false, "predicate": "stabilizes", "predicate_id": null, "source": "cytoplasmic_buffering_capacity", "target": "cytoplasmic_ph_homeostasis"}, {"description": "Neutralophiles maintain narrow internal pH while growing over a broad external range.", "evidence": [{"notes": "Neutralophiles grow at external pH ~5.5-9.0 while maintaining cytoplasmic pH ~7.5-7.7.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-8", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "near_neutral_cytoplasmic_ph", "target": "growth_external_ph_5_5_9"}, {"description": "A relatively constant PMF across external pH is a hallmark of broad pH tolerance.", "evidence": [{"notes": "PMF of neutralophilic bacteria kept relatively constant over pH 5 to 8.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-9", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "constant_pmf", "target": "ph_delta_high_trait"}, {"description": "Membrane/porin composition changes lower proton leak during acid stress.", "evidence": [{"notes": "Membrane lipid and porin composition changes minimize inward proton leakage during acid stress.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-10", "is_orphan": false, "predicate": "decreases", "predicate_id": "RO:0002212", "source": "membrane_lipid_porin_changes", "target": "inward_proton_leakage"}], "evidence_rows": [{"description": "Maximal pH-homeostasis flexibility yields an extreme pH-delta breadth.", "edge_id": "edge-1", "evidence": [{"notes": "Supports maximal pH-homeostasis flexibility as the basis of euryphilic breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "maximal pH-homeostasis flexibility", "target": "pH delta high"}, {"description": "pH delta high is a quantitative bin of the pH-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports the 5\u20139 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "pH delta high", "target": "pH delta"}, {"description": "Na+/H+ antiport is a core regulator of cytoplasmic pH across changing external pH.", "edge_id": "edge-3", "evidence": [{"notes": "Key regulators of bacterial pH homeostasis are Na+/H+ and K+/H+ antiporters.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "Na+/H+ antiporters", "target": "pH delta high"}, {"description": "Electron-transport proton pumps counteract pH stress by controlling proton flux.", "edge_id": "edge-4", "evidence": [{"notes": "Proton-pumping enzymes (electron transport components) are major homeostasis regulators.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "helps maintain", "predicate_id": null, "source": "respiratory proton-pumping enzymes", "target": "cytoplasmic pH homeostasis"}, {"description": "F0F1-ATPase participates in pH homeostasis via proton extrusion or uptake.", "edge_id": "edge-5", "evidence": [{"notes": "F0F1-ATPase is named among key regulators of bacterial pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "F0F1-ATPase", "target": "pH delta high"}, {"description": "Proton-consuming decarboxylation pathways support broad pH tolerance.", "edge_id": "edge-6", "evidence": [{"notes": "Metabolite decarboxylation pathways are key regulators of pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "metabolite decarboxylation pathways", "target": "pH delta high"}, {"description": "High buffering capacity limits pH swings, enabling broader pH tolerance.", "edge_id": "edge-7", "evidence": [{"notes": "Internal pH kept ~7.0-7.5 as buffers absorb fluctuations.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "stabilizes", "predicate_id": null, "source": "cytoplasmic buffering capacity", "target": "cytoplasmic pH homeostasis"}, {"description": "Neutralophiles maintain narrow internal pH while growing over a broad external range.", "edge_id": "edge-8", "evidence": [{"notes": "Neutralophiles grow at external pH ~5.5-9.0 while maintaining cytoplasmic pH ~7.5-7.7.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "near-neutral cytoplasmic pH", "target": "growth across external pH 5.5-9.0"}, {"description": "A relatively constant PMF across external pH is a hallmark of broad pH tolerance.", "edge_id": "edge-9", "evidence": [{"notes": "PMF of neutralophilic bacteria kept relatively constant over pH 5 to 8.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "supports", "predicate_id": null, "source": "constant proton motive force", "target": "pH delta high"}, {"description": "Membrane/porin composition changes lower proton leak during acid stress.", "edge_id": "edge-10", "evidence": [{"notes": "Membrane lipid and porin composition changes minimize inward proton leakage during acid stress.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "decreases", "predicate_id": "RO:0002212", "source": "membrane lipid/porin composition changes", "target": "inward proton leakage"}], "graph_id": "ph_delta_high_euryphilic_breadth", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Relatively constant PMF maintained across external pH changes.", "grounding": null, "id": "constant_pmf", "is_orphan": false, "label": "constant proton motive force", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Intracellular buffering that limits pH swings in the bacterial cytoplasm.", "grounding": null, "id": "cytoplasmic_buffering_capacity", "is_orphan": false, "label": "cytoplasmic buffering capacity", "node_type": "CAPACITY", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of near-neutral internal pH despite external pH variation.", "grounding": "GO:0051453", "id": "cytoplasmic_ph_homeostasis", "is_orphan": false, "label": "cytoplasmic pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Proton-translocating ATP synthase contributing to proton extrusion/uptake in pH homeostasis.", "grounding": null, "id": "f0f1_atpase", "is_orphan": false, "label": "F0F1-ATPase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#dbeafe", "description": "Growth supported across the neutralophile external pH range ~5.5-9.0.", "grounding": "METPO:1000478", "id": "growth_external_ph_5_5_9", "is_orphan": false, "label": "growth across external pH 5.5-9.0", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Passive inward flux of protons that acidifies the cytoplasm.", "grounding": null, "id": "inward_proton_leakage", "is_orphan": false, "label": "inward proton leakage", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Combined proton-extrusion and Na+/H+ antiport flexibility supporting growth across an extreme pH span.", "grounding": null, "id": "maximal_ph_homeostasis", "is_orphan": false, "label": "maximal pH-homeostasis flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Structural changes in membrane lipids and porins during pH stress.", "grounding": null, "id": "membrane_lipid_porin_changes", "is_orphan": false, "label": "membrane lipid/porin composition changes", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#e0e7ff", "description": "Proton-consuming decarboxylation pathways that reduce intracellular acidification.", "grounding": null, "id": "metabolite_decarboxylation", "is_orphan": false, "label": "metabolite decarboxylation pathways", "node_type": "PATHWAY", "xrefs": []}, {"color": "#f3e8ff", "description": "Sodium:proton antiporters, core regulators of cytoplasmic pH across changing external pH.", "grounding": null, "id": "na_h_antiporters", "is_orphan": false, "label": "Na+/H+ antiporters", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3f4f6", "description": "Internal pH maintained near 7.5 while external pH varies.", "grounding": null, "id": "near_neutral_cytoplasmic_ph", "is_orphan": false, "label": "near-neutral cytoplasmic pH", "node_type": "QUALITY", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting external pH range.", "grounding": "METPO:1000232", "id": "ph_delta", "is_orphan": false, "label": "pH delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#dbeafe", "description": "pH growth-supporting breadth approximately 5\u20139 pH units.", "grounding": "METPO:1000478", "id": "ph_delta_high_trait", "is_orphan": false, "label": "pH delta high", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3e8ff", "description": "Electron-transport-chain proton pumps that control proton flux during pH stress.", "grounding": null, "id": "respiratory_proton_pumps", "is_orphan": false, "label": "respiratory proton-pumping enzymes", "node_type": "GENE_OR_PROTEIN", "xrefs": []}], "title": "pH-delta-high euryphilic breadth"}]; + var graphs = [{"description": "DOI-backed graph linking maximal pH-homeostasis flexibility to a pH growth breadth of approximately 5\u20139 pH units.", "edges": [{"description": "Maximal pH-homeostasis flexibility yields an extreme pH-delta breadth.", "evidence": [{"notes": "Supports maximal pH-homeostasis flexibility as the basis of euryphilic breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "maximal_ph_homeostasis", "target": "ph_delta_high_trait"}, {"description": "pH delta high is a quantitative bin of the pH-delta phenotype.", "evidence": [{"notes": "Supports the 5\u20139 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "ph_delta_high_trait", "target": "ph_delta"}, {"description": "Na+/H+ antiport is a core regulator of cytoplasmic pH across changing external pH.", "evidence": [{"notes": "Key regulators of bacterial pH homeostasis are Na+/H+ and K+/H+ antiporters.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-3", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "na_h_antiporters", "target": "ph_delta_high_trait"}, {"description": "Electron-transport proton pumps counteract pH stress by controlling proton flux.", "evidence": [{"notes": "Proton-pumping enzymes (electron transport components) are major homeostasis regulators.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-4", "is_orphan": false, "predicate": "helps maintain", "predicate_id": null, "source": "respiratory_proton_pumps", "target": "cytoplasmic_ph_homeostasis"}, {"description": "F0F1-ATPase participates in pH homeostasis via proton extrusion or uptake.", "evidence": [{"notes": "F0F1-ATPase is named among key regulators of bacterial pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-5", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "f0f1_atpase", "target": "ph_delta_high_trait"}, {"description": "Proton-consuming decarboxylation pathways support broad pH tolerance.", "evidence": [{"notes": "Metabolite decarboxylation pathways are key regulators of pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-6", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "metabolite_decarboxylation", "target": "ph_delta_high_trait"}, {"description": "High buffering capacity limits pH swings, enabling broader pH tolerance.", "evidence": [{"notes": "Internal pH kept ~7.0-7.5 as buffers absorb fluctuations.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-7", "is_orphan": false, "predicate": "stabilizes", "predicate_id": null, "source": "cytoplasmic_buffering_capacity", "target": "cytoplasmic_ph_homeostasis"}, {"description": "Neutralophiles maintain narrow internal pH while growing over a broad external range.", "evidence": [{"notes": "Neutralophiles grow at external pH ~5.5-9.0 while maintaining cytoplasmic pH ~7.5-7.7.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-8", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "near_neutral_cytoplasmic_ph", "target": "growth_external_ph_5_5_9"}, {"description": "A relatively constant PMF across external pH is a hallmark of broad pH tolerance.", "evidence": [{"notes": "PMF of neutralophilic bacteria kept relatively constant over pH 5 to 8.", "reference": "DOI:10.1093/femsre/fuad033"}], "id": "edge-9", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "constant_pmf", "target": "ph_delta_high_trait"}, {"description": "Membrane/porin composition changes lower proton leak during acid stress.", "evidence": [{"notes": "Membrane lipid and porin composition changes minimize inward proton leakage during acid stress.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-10", "is_orphan": false, "predicate": "decreases", "predicate_id": "RO:0002212", "source": "membrane_lipid_porin_changes", "target": "inward_proton_leakage"}], "evidence_rows": [{"description": "Maximal pH-homeostasis flexibility yields an extreme pH-delta breadth.", "edge_id": "edge-1", "evidence": [{"notes": "Supports maximal pH-homeostasis flexibility as the basis of euryphilic breadth.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "maximal pH-homeostasis flexibility", "target": "pH delta high"}, {"description": "pH delta high is a quantitative bin of the pH-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports the 5\u20139 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "pH delta high", "target": "pH delta"}, {"description": "Na+/H+ antiport is a core regulator of cytoplasmic pH across changing external pH.", "edge_id": "edge-3", "evidence": [{"notes": "Key regulators of bacterial pH homeostasis are Na+/H+ and K+/H+ antiporters.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "Na+/H+ antiporters", "target": "pH delta high"}, {"description": "Electron-transport proton pumps counteract pH stress by controlling proton flux.", "edge_id": "edge-4", "evidence": [{"notes": "Proton-pumping enzymes (electron transport components) are major homeostasis regulators.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "helps maintain", "predicate_id": null, "source": "respiratory proton-pumping enzymes", "target": "cytoplasmic pH homeostasis"}, {"description": "F0F1-ATPase participates in pH homeostasis via proton extrusion or uptake.", "edge_id": "edge-5", "evidence": [{"notes": "F0F1-ATPase is named among key regulators of bacterial pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "F0F1-ATPase", "target": "pH delta high"}, {"description": "Proton-consuming decarboxylation pathways support broad pH tolerance.", "edge_id": "edge-6", "evidence": [{"notes": "Metabolite decarboxylation pathways are key regulators of pH homeostasis.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "metabolite decarboxylation pathways", "target": "pH delta high"}, {"description": "High buffering capacity limits pH swings, enabling broader pH tolerance.", "edge_id": "edge-7", "evidence": [{"notes": "Internal pH kept ~7.0-7.5 as buffers absorb fluctuations.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "stabilizes", "predicate_id": null, "source": "cytoplasmic buffering capacity", "target": "cytoplasmic pH homeostasis"}, {"description": "Neutralophiles maintain narrow internal pH while growing over a broad external range.", "edge_id": "edge-8", "evidence": [{"notes": "Neutralophiles grow at external pH ~5.5-9.0 while maintaining cytoplasmic pH ~7.5-7.7.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "near-neutral cytoplasmic pH", "target": "growth across external pH 5.5-9.0"}, {"description": "A relatively constant PMF across external pH is a hallmark of broad pH tolerance.", "edge_id": "edge-9", "evidence": [{"notes": "PMF of neutralophilic bacteria kept relatively constant over pH 5 to 8.", "reference": "DOI:10.1093/femsre/fuad033"}], "predicate": "supports", "predicate_id": null, "source": "constant proton motive force", "target": "pH delta high"}, {"description": "Membrane/porin composition changes lower proton leak during acid stress.", "edge_id": "edge-10", "evidence": [{"notes": "Membrane lipid and porin composition changes minimize inward proton leakage during acid stress.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "decreases", "predicate_id": "RO:0002212", "source": "membrane lipid/porin composition changes", "target": "inward proton leakage"}], "graph_id": "ph_delta_high_euryphilic_breadth", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Relatively constant PMF maintained across external pH changes.", "grounding": null, "id": "constant_pmf", "is_orphan": false, "label": "constant proton motive force", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Intracellular buffering that limits pH swings in the bacterial cytoplasm.", "grounding": null, "id": "cytoplasmic_buffering_capacity", "is_orphan": false, "label": "cytoplasmic buffering capacity", "node_type": "CAPACITY", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of near-neutral internal pH despite external pH variation.", "grounding": "GO:0051453", "id": "cytoplasmic_ph_homeostasis", "is_orphan": false, "label": "cytoplasmic pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Proton-translocating ATP synthase contributing to proton extrusion/uptake in pH homeostasis.", "grounding": null, "id": "f0f1_atpase", "is_orphan": false, "label": "F0F1-ATPase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#dbeafe", "description": "Growth supported across the neutralophile external pH range ~5.5-9.0.", "grounding": "METPO:1000332", "id": "growth_external_ph_5_5_9", "is_orphan": false, "label": "growth across external pH 5.5-9.0", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Passive inward flux of protons that acidifies the cytoplasm.", "grounding": null, "id": "inward_proton_leakage", "is_orphan": false, "label": "inward proton leakage", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Combined proton-extrusion and Na+/H+ antiport flexibility supporting growth across an extreme pH span.", "grounding": null, "id": "maximal_ph_homeostasis", "is_orphan": false, "label": "maximal pH-homeostasis flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Structural changes in membrane lipids and porins during pH stress.", "grounding": null, "id": "membrane_lipid_porin_changes", "is_orphan": false, "label": "membrane lipid/porin composition changes", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#e0e7ff", "description": "Proton-consuming decarboxylation pathways that reduce intracellular acidification.", "grounding": null, "id": "metabolite_decarboxylation", "is_orphan": false, "label": "metabolite decarboxylation pathways", "node_type": "PATHWAY", "xrefs": []}, {"color": "#f3e8ff", "description": "Sodium:proton antiporters, core regulators of cytoplasmic pH across changing external pH.", "grounding": null, "id": "na_h_antiporters", "is_orphan": false, "label": "Na+/H+ antiporters", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3f4f6", "description": "Internal pH maintained near 7.5 while external pH varies.", "grounding": null, "id": "near_neutral_cytoplasmic_ph", "is_orphan": false, "label": "near-neutral cytoplasmic pH", "node_type": "QUALITY", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting external pH range.", "grounding": "METPO:1000232", "id": "ph_delta", "is_orphan": false, "label": "pH delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#dbeafe", "description": "pH growth-supporting breadth approximately 5\u20139 pH units.", "grounding": "METPO:1000478", "id": "ph_delta_high_trait", "is_orphan": false, "label": "pH delta high", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3e8ff", "description": "Electron-transport-chain proton pumps that control proton flux during pH stress.", "grounding": null, "id": "respiratory_proton_pumps", "is_orphan": false, "label": "respiratory proton-pumping enzymes", "node_type": "GENE_OR_PROTEIN", "xrefs": []}], "title": "pH-delta-high euryphilic breadth"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -881,7 +887,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-07 06:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/ph_delta_low.html b/pages/traits/environment/ph_delta_low.html index 47f7840c..b2915ec6 100644 --- a/pages/traits/environment/ph_delta_low.html +++ b/pages/traits/environment/ph_delta_low.html @@ -110,7 +110,7 @@

    Edge evidence

  • proton motive force architecture determines - pH homeostasis capacity + cytoplasmic pH homeostasis

    PMF architecture (Delta-psi and Delta-pH balancing) determines pH homeostasis capacity.

  • @@ -783,7 +789,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking limited pH-homeostasis flexibility to a pH growth breadth of approximately 1\u20132 pH units.", "edges": [{"description": "Limited pH-homeostasis flexibility yields a 1\u20132 pH-unit pH-delta breadth.", "evidence": [{"notes": "Supports limited pH-homeostasis flexibility as the basis of narrow breadth.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited_ph_homeostasis", "target": "ph_delta_low_trait"}, {"description": "pH delta low is a quantitative bin of the pH-delta phenotype.", "evidence": [{"notes": "Supports the 1\u20132 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "ph_delta_low_trait", "target": "ph_delta"}, {"description": "External pH outside the maintainable cytoplasmic range challenges pH homeostasis.", "evidence": [{"notes": "Diverse mechanisms for pH sensing and cytoplasmic pH homeostasis enable most bacteria to tolerate external pH outside the cytoplasmic range; general across bacteria.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-3", "is_orphan": false, "predicate": "challenges", "predicate_id": "METPO:2007406", "source": "external_ph_stress", "target": "cytoplasmic_ph_homeostasis"}, {"description": "PMF architecture (Delta-psi and Delta-pH balancing) determines pH homeostasis capacity.", "evidence": [{"notes": "Bacteria tune and even reverse the relative magnitudes of Delta-psi and Delta-pH under pH stress; strong general mechanistic edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-4", "is_orphan": false, "predicate": "determines", "predicate_id": null, "source": "pmf_architecture", "target": "ph_homeostasis_capacity"}, {"description": "Weak organic acids cross the membrane and perturb the proton gradient / cytoplasmic pH.", "evidence": [{"notes": "Uncharged weak-acid forms cross membranes and become trapped when charged, perturbing Delta-pH; general chemical-factor edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-5", "is_orphan": false, "predicate": "perturbs", "predicate_id": null, "source": "weak_organic_acids", "target": "delta_ph"}, {"description": "Electrogenic Na+/H+ antiport supports cytoplasmic pH homeostasis under alkaline stress.", "evidence": [{"notes": "Under alkaline stress, inward proton transport through cation/proton antiporters is crucial; strong general transporter-mediated edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-6", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "electrogenic_na_h_antiport", "target": "alkaline_ph_homeostasis"}, {"description": "F1Fo-ATPase contributes to cytoplasmic pH homeostasis by expelling or importing H+.", "evidence": [{"notes": "Respiratory complexes and proton-coupled ATPases use or generate PMF to expel or import H+; general higher-level edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-7", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "f1fo_atpase", "target": "cytoplasmic_ph_homeostasis"}], "evidence_rows": [{"description": "Limited pH-homeostasis flexibility yields a 1\u20132 pH-unit pH-delta breadth.", "edge_id": "edge-1", "evidence": [{"notes": "Supports limited pH-homeostasis flexibility as the basis of narrow breadth.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited pH-homeostasis flexibility", "target": "pH delta low"}, {"description": "pH delta low is a quantitative bin of the pH-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports the 1\u20132 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "pH delta low", "target": "pH delta"}, {"description": "External pH outside the maintainable cytoplasmic range challenges pH homeostasis.", "edge_id": "edge-3", "evidence": [{"notes": "Diverse mechanisms for pH sensing and cytoplasmic pH homeostasis enable most bacteria to tolerate external pH outside the cytoplasmic range; general across bacteria.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "challenges", "predicate_id": "METPO:2007406", "source": "external pH stress", "target": "cytoplasmic pH homeostasis"}, {"description": "PMF architecture (Delta-psi and Delta-pH balancing) determines pH homeostasis capacity.", "edge_id": "edge-4", "evidence": [{"notes": "Bacteria tune and even reverse the relative magnitudes of Delta-psi and Delta-pH under pH stress; strong general mechanistic edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "determines", "predicate_id": null, "source": "proton motive force architecture", "target": "pH homeostasis capacity"}, {"description": "Weak organic acids cross the membrane and perturb the proton gradient / cytoplasmic pH.", "edge_id": "edge-5", "evidence": [{"notes": "Uncharged weak-acid forms cross membranes and become trapped when charged, perturbing Delta-pH; general chemical-factor edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "perturbs", "predicate_id": null, "source": "weak organic acids", "target": "delta pH / cytoplasmic pH"}, {"description": "Electrogenic Na+/H+ antiport supports cytoplasmic pH homeostasis under alkaline stress.", "edge_id": "edge-6", "evidence": [{"notes": "Under alkaline stress, inward proton transport through cation/proton antiporters is crucial; strong general transporter-mediated edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "supports", "predicate_id": null, "source": "electrogenic Na+/H+ antiport", "target": "alkaline pH homeostasis"}, {"description": "F1Fo-ATPase contributes to cytoplasmic pH homeostasis by expelling or importing H+.", "edge_id": "edge-7", "evidence": [{"notes": "Respiratory complexes and proton-coupled ATPases use or generate PMF to expel or import H+; general higher-level edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "F1Fo-ATPase", "target": "cytoplasmic pH homeostasis"}], "graph_id": "ph_delta_low_limited_breadth", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Maintenance of cytoplasmic pH under alkaline external conditions.", "grounding": null, "id": "alkaline_ph_homeostasis", "is_orphan": false, "label": "alkaline pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of growth-permissive intracellular pH across external pH change.", "grounding": "GO:0051453", "id": "cytoplasmic_ph_homeostasis", "is_orphan": false, "label": "cytoplasmic pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Trans-membrane proton gradient and resulting cytoplasmic pH.", "grounding": null, "id": "delta_ph", "is_orphan": false, "label": "delta pH / cytoplasmic pH", "node_type": "STATE", "xrefs": []}, {"color": "#ecfccb", "description": "Inward proton transport via cation/proton antiport driven by membrane potential.", "grounding": null, "id": "electrogenic_na_h_antiport", "is_orphan": false, "label": "electrogenic Na+/H+ antiport", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dcfce7", "description": "External pH values outside the range maintainable as cytoplasmic pH.", "grounding": null, "id": "external_ph_stress", "is_orphan": false, "label": "external pH stress", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#f3e8ff", "description": "Proton-coupled ATPase that expels or imports H+ using or generating PMF.", "grounding": null, "id": "f1fo_atpase", "is_orphan": false, "label": "F1Fo-ATPase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Modest capacity to remodel proton extrusion and envelope buffering across small pH shifts.", "grounding": null, "id": "limited_ph_homeostasis", "is_orphan": false, "label": "limited pH-homeostasis flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting external pH range.", "grounding": "METPO:1000232", "id": "ph_delta", "is_orphan": false, "label": "pH delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#dbeafe", "description": "pH growth-supporting breadth approximately 1\u20132 pH units.", "grounding": "METPO:1000474", "id": "ph_delta_low_trait", "is_orphan": false, "label": "pH delta low", "node_type": "TRAIT", "xrefs": []}, {"color": "#f3f4f6", "description": "Capacity to balance and maintain cytoplasmic pH under pH stress.", "grounding": null, "id": "ph_homeostasis_capacity", "is_orphan": false, "label": "pH homeostasis capacity", "node_type": "CAPACITY", "xrefs": []}, {"color": "#ecfccb", "description": "Tuning of Delta-psi and Delta-pH components of the proton motive force.", "grounding": null, "id": "pmf_architecture", "is_orphan": false, "label": "proton motive force architecture", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Uncharged weak acids that cross membranes and perturb the proton gradient.", "grounding": null, "id": "weak_organic_acids", "is_orphan": false, "label": "weak organic acids", "node_type": "CHEMICAL", "xrefs": []}], "title": "pH-delta-low limited-breadth pH homeostasis"}]; + var graphs = [{"description": "DOI-backed graph linking limited pH-homeostasis flexibility to a pH growth breadth of approximately 1\u20132 pH units.", "edges": [{"description": "Limited pH-homeostasis flexibility yields a 1\u20132 pH-unit pH-delta breadth.", "evidence": [{"notes": "Supports limited pH-homeostasis flexibility as the basis of narrow breadth.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited_ph_homeostasis", "target": "ph_delta_low_trait"}, {"description": "pH delta low is a quantitative bin of the pH-delta phenotype.", "evidence": [{"notes": "Supports the 1\u20132 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "id": "edge-2", "is_orphan": false, "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "ph_delta_low_trait", "target": "ph_delta"}, {"description": "External pH outside the maintainable cytoplasmic range challenges pH homeostasis.", "evidence": [{"notes": "Diverse mechanisms for pH sensing and cytoplasmic pH homeostasis enable most bacteria to tolerate external pH outside the cytoplasmic range; general across bacteria.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-3", "is_orphan": false, "predicate": "challenges", "predicate_id": "METPO:2007406", "source": "external_ph_stress", "target": "cytoplasmic_ph_homeostasis"}, {"description": "PMF architecture (Delta-psi and Delta-pH balancing) determines pH homeostasis capacity.", "evidence": [{"notes": "Bacteria tune and even reverse the relative magnitudes of Delta-psi and Delta-pH under pH stress; strong general mechanistic edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-4", "is_orphan": false, "predicate": "determines", "predicate_id": null, "source": "pmf_architecture", "target": "cytoplasmic_ph_homeostasis"}, {"description": "Weak organic acids cross the membrane and perturb the proton gradient / cytoplasmic pH.", "evidence": [{"notes": "Uncharged weak-acid forms cross membranes and become trapped when charged, perturbing Delta-pH; general chemical-factor edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-5", "is_orphan": false, "predicate": "perturbs", "predicate_id": null, "source": "weak_organic_acids", "target": "delta_ph"}, {"description": "Electrogenic Na+/H+ antiport supports cytoplasmic pH homeostasis under alkaline stress.", "evidence": [{"notes": "Under alkaline stress, inward proton transport through cation/proton antiporters is crucial; strong general transporter-mediated edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-6", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "electrogenic_na_h_antiport", "target": "alkaline_ph_homeostasis"}, {"description": "F1Fo-ATPase contributes to cytoplasmic pH homeostasis by expelling or importing H+.", "evidence": [{"notes": "Respiratory complexes and proton-coupled ATPases use or generate PMF to expel or import H+; general higher-level edge.", "reference": "DOI:10.1038/nrmicro2549"}], "id": "edge-7", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "f1fo_atpase", "target": "cytoplasmic_ph_homeostasis"}], "evidence_rows": [{"description": "Limited pH-homeostasis flexibility yields a 1\u20132 pH-unit pH-delta breadth.", "edge_id": "edge-1", "evidence": [{"notes": "Supports limited pH-homeostasis flexibility as the basis of narrow breadth.", "reference": "DOI:10.1038/nrmicro2549", "snippet": "pH homeostasis"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "limited pH-homeostasis flexibility", "target": "pH delta low"}, {"description": "pH delta low is a quantitative bin of the pH-delta phenotype.", "edge_id": "edge-2", "evidence": [{"notes": "Supports the 1\u20132 unit breadth as a value within the pH-delta distribution.", "reference": "DOI:10.1016/j.tim.2007.02.005", "snippet": "proton motive force"}], "predicate": "is a", "predicate_id": "rdfs:subClassOf", "source": "pH delta low", "target": "pH delta"}, {"description": "External pH outside the maintainable cytoplasmic range challenges pH homeostasis.", "edge_id": "edge-3", "evidence": [{"notes": "Diverse mechanisms for pH sensing and cytoplasmic pH homeostasis enable most bacteria to tolerate external pH outside the cytoplasmic range; general across bacteria.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "challenges", "predicate_id": "METPO:2007406", "source": "external pH stress", "target": "cytoplasmic pH homeostasis"}, {"description": "PMF architecture (Delta-psi and Delta-pH balancing) determines pH homeostasis capacity.", "edge_id": "edge-4", "evidence": [{"notes": "Bacteria tune and even reverse the relative magnitudes of Delta-psi and Delta-pH under pH stress; strong general mechanistic edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "determines", "predicate_id": null, "source": "proton motive force architecture", "target": "cytoplasmic pH homeostasis"}, {"description": "Weak organic acids cross the membrane and perturb the proton gradient / cytoplasmic pH.", "edge_id": "edge-5", "evidence": [{"notes": "Uncharged weak-acid forms cross membranes and become trapped when charged, perturbing Delta-pH; general chemical-factor edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "perturbs", "predicate_id": null, "source": "weak organic acids", "target": "delta pH / cytoplasmic pH"}, {"description": "Electrogenic Na+/H+ antiport supports cytoplasmic pH homeostasis under alkaline stress.", "edge_id": "edge-6", "evidence": [{"notes": "Under alkaline stress, inward proton transport through cation/proton antiporters is crucial; strong general transporter-mediated edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "supports", "predicate_id": null, "source": "electrogenic Na+/H+ antiport", "target": "alkaline pH homeostasis"}, {"description": "F1Fo-ATPase contributes to cytoplasmic pH homeostasis by expelling or importing H+.", "edge_id": "edge-7", "evidence": [{"notes": "Respiratory complexes and proton-coupled ATPases use or generate PMF to expel or import H+; general higher-level edge.", "reference": "DOI:10.1038/nrmicro2549"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "F1Fo-ATPase", "target": "cytoplasmic pH homeostasis"}], "graph_id": "ph_delta_low_limited_breadth", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Maintenance of cytoplasmic pH under alkaline external conditions.", "grounding": null, "id": "alkaline_ph_homeostasis", "is_orphan": false, "label": "alkaline pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of growth-permissive intracellular pH across external pH change.", "grounding": "GO:0051453", "id": "cytoplasmic_ph_homeostasis", "is_orphan": false, "label": "cytoplasmic pH homeostasis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Trans-membrane proton gradient and resulting cytoplasmic pH.", "grounding": null, "id": "delta_ph", "is_orphan": false, "label": "delta pH / cytoplasmic pH", "node_type": "STATE", "xrefs": []}, {"color": "#ecfccb", "description": "Inward proton transport via cation/proton antiport driven by membrane potential.", "grounding": null, "id": "electrogenic_na_h_antiport", "is_orphan": false, "label": "electrogenic Na+/H+ antiport", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dcfce7", "description": "External pH values outside the range maintainable as cytoplasmic pH.", "grounding": null, "id": "external_ph_stress", "is_orphan": false, "label": "external pH stress", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#f3e8ff", "description": "Proton-coupled ATPase that expels or imports H+ using or generating PMF.", "grounding": null, "id": "f1fo_atpase", "is_orphan": false, "label": "F1Fo-ATPase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Modest capacity to remodel proton extrusion and envelope buffering across small pH shifts.", "grounding": null, "id": "limited_ph_homeostasis", "is_orphan": false, "label": "limited pH-homeostasis flexibility", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Breadth of the growth-supporting external pH range.", "grounding": "METPO:1000232", "id": "ph_delta", "is_orphan": false, "label": "pH delta", "node_type": "TRAIT", "xrefs": []}, {"color": "#dbeafe", "description": "pH growth-supporting breadth approximately 1\u20132 pH units.", "grounding": "METPO:1000474", "id": "ph_delta_low_trait", "is_orphan": false, "label": "pH delta low", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Tuning of Delta-psi and Delta-pH components of the proton motive force.", "grounding": null, "id": "pmf_architecture", "is_orphan": false, "label": "proton motive force architecture", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Uncharged weak acids that cross membranes and perturb the proton gradient.", "grounding": null, "id": "weak_organic_acids", "is_orphan": false, "label": "weak organic acids", "node_type": "CHEMICAL", "xrefs": []}], "title": "pH-delta-low limited-breadth pH homeostasis"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -806,7 +812,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 01:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/psychrotolerant.html b/pages/traits/environment/psychrotolerant.html index 21492f52..d2f13245 100644 --- a/pages/traits/environment/psychrotolerant.html +++ b/pages/traits/environment/psychrotolerant.html @@ -192,23 +192,6 @@

    Edge evidence

    -
  • - psychrotolerant - has capability - growth at 4 degrees C - -

    The psychrotolerant trait entails the capacity to grow at low temperatures such as 4 C while retaining higher optimal temperatures.

    - -
  • -
    @@ -511,6 +494,12 @@

    Curation history

    Migrated 1 causal edge(s) off enables/RO:0002327 with a TRAIT object (1 to confers), issue 302. RO:0002327 has range 'biological process or activity', which a trait (a disposition) cannot satisfy, so the previous form entailed trait is-a BiologicalProcessOrActivity. The replacements are proposed in proposals/metpo_traitmech_v8 and are placeholder ids until METPO mints them.

    +
  • + · + DROP_CAUSAL_NODE · claude +

    Dropped node growth_at_4c and its edges. Issue 352. 'Ability to grow at refrigeration-range low temperature (4 C)' IS METPO:1000618 (psychrotolerant), the record's own term and the grounding of psychrotolerant_trait, which is the node it hangs off. A leaf restating its own parent. The parent keeps two other in-edges (cold_shock_response confers, facultative_lipid_remodeling manifests as), so nothing is stranded.

    +
  • + @@ -868,7 +857,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking psychrotolerance to low-temperature membrane and enzyme acclimation that does not preclude growth at moderate ambient temperatures.", "edges": [{"description": "Low temperature reduces membrane fluidity, requiring compensation.", "evidence": [{"notes": "Supports cold-end membrane stress as the physical challenge for psychrotolerant growth.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "decreased membrane fluidity"}], "id": "edge-1", "is_orphan": false, "predicate": "decreases", "predicate_id": "RO:0002212", "source": "low_temperature", "target": "membrane_fluidity"}, {"description": "Facultative lipid remodeling maintains workable membrane fluidity at low temperature.", "evidence": [{"notes": "Supports homoviscous adaptation as the mechanism employed under cold exposure.", "reference": "DOI:10.1146/annurev-micro-091313-103612", "snippet": "more unsaturated fatty acids"}], "id": "edge-2", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "facultative_lipid_remodeling", "target": "membrane_fluidity"}, {"description": "The cold-shock response enables acclimation to low temperature without obligate cold dedication.", "evidence": [{"notes": "Supports cold-shock proteins as a hallmark facultative-cold adaptation.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "Cold-shock proteins have also been described"}], "id": "edge-3", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "cold_shock_response", "target": "psychrotolerant_trait"}, {"description": "Facultative lipid remodeling at low temperature manifests the psychrotolerant trait in representative organisms.", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1099/ijs.0.65141-0", "snippet": "Pseudomonas guineae sp. nov., a novel psychrotolerant bacterium"}], "id": "edge-4", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "facultative_lipid_remodeling", "target": "psychrotolerant_trait"}, {"description": "A low-temperature shift causes membrane rigidification and thickening toward a gel-phase transition.", "evidence": [{"notes": "Cold shock causes membrane rigidification and concomitant thickening, potentially culminating in a gel-phase transition.", "reference": "DOI:10.1128/spectrum.03925-23"}], "id": "edge-5", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "low_temperature", "target": "membrane_rigidification"}, {"description": "Decreasing growth temperature increases the unsaturated hopanoid fraction as a compositional cold adaptation.", "evidence": [{"notes": "As the growth temperature decreased from 20 to 4 C, the total percent of unsaturated hopanoids increased from 27 to 49%.", "reference": "DOI:10.1007/s42770-023-01057-4"}], "id": "edge-6", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "low_temperature", "target": "unsaturated_hopanoids"}, {"description": "Compatible solute accumulation stabilizes proteins and membranes during low-temperature stress.", "evidence": [{"notes": "Compatible solutes depress freezing point, stabilize proteins and membranes, scavenge radicals, and act as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "id": "edge-7", "is_orphan": false, "predicate": "protects", "predicate_id": null, "source": "compatible_solute_accumulation", "target": "protein_membrane_stability"}, {"description": "EPS surrounding cells provide cryoprotection against freeze-thaw cycles.", "evidence": [{"notes": "EPS surrounding cells play a critical role in cold adaptation by providing protection against freeze-thaw cycles and acting as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "id": "edge-8", "is_orphan": false, "predicate": "provides", "predicate_id": null, "source": "extracellular_polymeric_substances", "target": "freeze_thaw_cryoprotection"}, {"description": "The psychrotolerant trait entails the capacity to grow at low temperatures such as 4 C while retaining higher optimal temperatures.", "evidence": [{"notes": "Psychrotolerant/psychrotroph microbes can grow at 4 C and have optimal growth temperatures above 20 C.", "reference": "DOI:10.1007/s42770-023-01057-4"}], "id": "edge-9", "is_orphan": false, "predicate": "has capability", "predicate_id": null, "source": "psychrotolerant_trait", "target": "growth_at_4c"}], "evidence_rows": [{"description": "Low temperature reduces membrane fluidity, requiring compensation.", "edge_id": "edge-1", "evidence": [{"notes": "Supports cold-end membrane stress as the physical challenge for psychrotolerant growth.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "decreased membrane fluidity"}], "predicate": "decreases", "predicate_id": "RO:0002212", "source": "low temperature", "target": "membrane fluidity"}, {"description": "Facultative lipid remodeling maintains workable membrane fluidity at low temperature.", "edge_id": "edge-2", "evidence": [{"notes": "Supports homoviscous adaptation as the mechanism employed under cold exposure.", "reference": "DOI:10.1146/annurev-micro-091313-103612", "snippet": "more unsaturated fatty acids"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "facultative lipid remodeling", "target": "membrane fluidity"}, {"description": "The cold-shock response enables acclimation to low temperature without obligate cold dedication.", "edge_id": "edge-3", "evidence": [{"notes": "Supports cold-shock proteins as a hallmark facultative-cold adaptation.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "Cold-shock proteins have also been described"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "cold-shock response", "target": "psychrotolerant"}, {"description": "Facultative lipid remodeling at low temperature manifests the psychrotolerant trait in representative organisms.", "edge_id": "edge-4", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1099/ijs.0.65141-0", "snippet": "Pseudomonas guineae sp. nov., a novel psychrotolerant bacterium"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "facultative lipid remodeling", "target": "psychrotolerant"}, {"description": "A low-temperature shift causes membrane rigidification and thickening toward a gel-phase transition.", "edge_id": "edge-5", "evidence": [{"notes": "Cold shock causes membrane rigidification and concomitant thickening, potentially culminating in a gel-phase transition.", "reference": "DOI:10.1128/spectrum.03925-23"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "low temperature", "target": "membrane rigidification and thickening"}, {"description": "Decreasing growth temperature increases the unsaturated hopanoid fraction as a compositional cold adaptation.", "edge_id": "edge-6", "evidence": [{"notes": "As the growth temperature decreased from 20 to 4 C, the total percent of unsaturated hopanoids increased from 27 to 49%.", "reference": "DOI:10.1007/s42770-023-01057-4"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "low temperature", "target": "unsaturated hopanoids"}, {"description": "Compatible solute accumulation stabilizes proteins and membranes during low-temperature stress.", "edge_id": "edge-7", "evidence": [{"notes": "Compatible solutes depress freezing point, stabilize proteins and membranes, scavenge radicals, and act as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "predicate": "protects", "predicate_id": null, "source": "compatible solute accumulation", "target": "protein and membrane stability under cold stress"}, {"description": "EPS surrounding cells provide cryoprotection against freeze-thaw cycles.", "edge_id": "edge-8", "evidence": [{"notes": "EPS surrounding cells play a critical role in cold adaptation by providing protection against freeze-thaw cycles and acting as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "predicate": "provides", "predicate_id": null, "source": "extracellular polymeric substances (EPS)", "target": "cryoprotection against freeze-thaw cycles"}, {"description": "The psychrotolerant trait entails the capacity to grow at low temperatures such as 4 C while retaining higher optimal temperatures.", "edge_id": "edge-9", "evidence": [{"notes": "Psychrotolerant/psychrotroph microbes can grow at 4 C and have optimal growth temperatures above 20 C.", "reference": "DOI:10.1007/s42770-023-01057-4"}], "predicate": "has capability", "predicate_id": null, "source": "psychrotolerant", "target": "growth at 4 degrees C"}], "graph_id": "psychrotolerant_facultative_cold_adaptation", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Cold-shock-protein induction supporting transient low-temperature acclimation.", "grounding": null, "id": "cold_shock_response", "is_orphan": false, "label": "cold-shock response", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Accumulation of compatible solutes that stabilize proteins and membranes under cold stress.", "grounding": null, "id": "compatible_solute_accumulation", "is_orphan": false, "label": "compatible solute accumulation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Secreted polymeric matrix surrounding cells that acts as a cryoprotectant.", "grounding": null, "id": "extracellular_polymeric_substances", "is_orphan": false, "label": "extracellular polymeric substances (EPS)", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Cold-induced shifts in lipid composition without obligate low-temperature specialization.", "grounding": null, "id": "facultative_lipid_remodeling", "is_orphan": false, "label": "facultative lipid remodeling", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Protection of cells from damage during freeze-thaw cycling.", "grounding": null, "id": "freeze_thaw_cryoprotection", "is_orphan": false, "label": "cryoprotection against freeze-thaw cycles", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Ability to grow at refrigeration-range low temperature (4 C).", "grounding": null, "id": "growth_at_4c", "is_orphan": false, "label": "growth at 4 degrees C", "node_type": "CAPACITY", "xrefs": []}, {"color": "#dcfce7", "description": "Ambient temperature below the mesophile optimum range.", "grounding": "PATO:0001306", "id": "low_temperature", "is_orphan": false, "label": "low temperature", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#f3f4f6", "description": "Physical state of the cytoplasmic membrane supporting transport and bioenergetics.", "grounding": "METPO:1007505", "id": "membrane_fluidity", "is_orphan": false, "label": "membrane fluidity", "node_type": "QUALITY", "xrefs": []}, {"color": "#f3f4f6", "description": "Cold-induced increase in membrane order and bilayer thickness approaching a gel-phase transition.", "grounding": null, "id": "membrane_rigidification", "is_orphan": false, "label": "membrane rigidification and thickening", "node_type": "QUALITY", "xrefs": []}, {"color": "#f3f4f6", "description": "Maintained integrity of proteins and membranes during low-temperature stress.", "grounding": null, "id": "protein_membrane_stability", "is_orphan": false, "label": "protein and membrane stability under cold stress", "node_type": "QUALITY", "xrefs": []}, {"color": "#dbeafe", "description": "Growth at low temperatures without an obligate low-temperature preference.", "grounding": "METPO:1000618", "id": "psychrotolerant_trait", "is_orphan": false, "label": "psychrotolerant", "node_type": "TRAIT", "xrefs": []}, {"color": "#fef3c7", "description": "Hopanoid lipids whose unsaturation rises at low temperature, aiding membrane homeostasis.", "grounding": null, "id": "unsaturated_hopanoids", "is_orphan": false, "label": "unsaturated hopanoids", "node_type": "CHEMICAL", "xrefs": []}], "title": "Psychrotolerant facultative cold-adaptation mechanism"}]; + var graphs = [{"description": "DOI-backed graph linking psychrotolerance to low-temperature membrane and enzyme acclimation that does not preclude growth at moderate ambient temperatures.", "edges": [{"description": "Low temperature reduces membrane fluidity, requiring compensation.", "evidence": [{"notes": "Supports cold-end membrane stress as the physical challenge for psychrotolerant growth.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "decreased membrane fluidity"}], "id": "edge-1", "is_orphan": false, "predicate": "decreases", "predicate_id": "RO:0002212", "source": "low_temperature", "target": "membrane_fluidity"}, {"description": "Facultative lipid remodeling maintains workable membrane fluidity at low temperature.", "evidence": [{"notes": "Supports homoviscous adaptation as the mechanism employed under cold exposure.", "reference": "DOI:10.1146/annurev-micro-091313-103612", "snippet": "more unsaturated fatty acids"}], "id": "edge-2", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "facultative_lipid_remodeling", "target": "membrane_fluidity"}, {"description": "The cold-shock response enables acclimation to low temperature without obligate cold dedication.", "evidence": [{"notes": "Supports cold-shock proteins as a hallmark facultative-cold adaptation.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "Cold-shock proteins have also been described"}], "id": "edge-3", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "cold_shock_response", "target": "psychrotolerant_trait"}, {"description": "Facultative lipid remodeling at low temperature manifests the psychrotolerant trait in representative organisms.", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1099/ijs.0.65141-0", "snippet": "Pseudomonas guineae sp. nov., a novel psychrotolerant bacterium"}], "id": "edge-4", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "facultative_lipid_remodeling", "target": "psychrotolerant_trait"}, {"description": "A low-temperature shift causes membrane rigidification and thickening toward a gel-phase transition.", "evidence": [{"notes": "Cold shock causes membrane rigidification and concomitant thickening, potentially culminating in a gel-phase transition.", "reference": "DOI:10.1128/spectrum.03925-23"}], "id": "edge-5", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "low_temperature", "target": "membrane_rigidification"}, {"description": "Decreasing growth temperature increases the unsaturated hopanoid fraction as a compositional cold adaptation.", "evidence": [{"notes": "As the growth temperature decreased from 20 to 4 C, the total percent of unsaturated hopanoids increased from 27 to 49%.", "reference": "DOI:10.1007/s42770-023-01057-4"}], "id": "edge-6", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "low_temperature", "target": "unsaturated_hopanoids"}, {"description": "Compatible solute accumulation stabilizes proteins and membranes during low-temperature stress.", "evidence": [{"notes": "Compatible solutes depress freezing point, stabilize proteins and membranes, scavenge radicals, and act as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "id": "edge-7", "is_orphan": false, "predicate": "protects", "predicate_id": null, "source": "compatible_solute_accumulation", "target": "protein_membrane_stability"}, {"description": "EPS surrounding cells provide cryoprotection against freeze-thaw cycles.", "evidence": [{"notes": "EPS surrounding cells play a critical role in cold adaptation by providing protection against freeze-thaw cycles and acting as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "id": "edge-8", "is_orphan": false, "predicate": "provides", "predicate_id": null, "source": "extracellular_polymeric_substances", "target": "freeze_thaw_cryoprotection"}], "evidence_rows": [{"description": "Low temperature reduces membrane fluidity, requiring compensation.", "edge_id": "edge-1", "evidence": [{"notes": "Supports cold-end membrane stress as the physical challenge for psychrotolerant growth.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "decreased membrane fluidity"}], "predicate": "decreases", "predicate_id": "RO:0002212", "source": "low temperature", "target": "membrane fluidity"}, {"description": "Facultative lipid remodeling maintains workable membrane fluidity at low temperature.", "edge_id": "edge-2", "evidence": [{"notes": "Supports homoviscous adaptation as the mechanism employed under cold exposure.", "reference": "DOI:10.1146/annurev-micro-091313-103612", "snippet": "more unsaturated fatty acids"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "facultative lipid remodeling", "target": "membrane fluidity"}, {"description": "The cold-shock response enables acclimation to low temperature without obligate cold dedication.", "edge_id": "edge-3", "evidence": [{"notes": "Supports cold-shock proteins as a hallmark facultative-cold adaptation.", "reference": "DOI:10.1038/sj.embor.7400662", "snippet": "Cold-shock proteins have also been described"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "cold-shock response", "target": "psychrotolerant"}, {"description": "Facultative lipid remodeling at low temperature manifests the psychrotolerant trait in representative organisms.", "edge_id": "edge-4", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1099/ijs.0.65141-0", "snippet": "Pseudomonas guineae sp. nov., a novel psychrotolerant bacterium"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "facultative lipid remodeling", "target": "psychrotolerant"}, {"description": "A low-temperature shift causes membrane rigidification and thickening toward a gel-phase transition.", "edge_id": "edge-5", "evidence": [{"notes": "Cold shock causes membrane rigidification and concomitant thickening, potentially culminating in a gel-phase transition.", "reference": "DOI:10.1128/spectrum.03925-23"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "low temperature", "target": "membrane rigidification and thickening"}, {"description": "Decreasing growth temperature increases the unsaturated hopanoid fraction as a compositional cold adaptation.", "edge_id": "edge-6", "evidence": [{"notes": "As the growth temperature decreased from 20 to 4 C, the total percent of unsaturated hopanoids increased from 27 to 49%.", "reference": "DOI:10.1007/s42770-023-01057-4"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "low temperature", "target": "unsaturated hopanoids"}, {"description": "Compatible solute accumulation stabilizes proteins and membranes during low-temperature stress.", "edge_id": "edge-7", "evidence": [{"notes": "Compatible solutes depress freezing point, stabilize proteins and membranes, scavenge radicals, and act as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "predicate": "protects", "predicate_id": null, "source": "compatible solute accumulation", "target": "protein and membrane stability under cold stress"}, {"description": "EPS surrounding cells provide cryoprotection against freeze-thaw cycles.", "edge_id": "edge-8", "evidence": [{"notes": "EPS surrounding cells play a critical role in cold adaptation by providing protection against freeze-thaw cycles and acting as cryoprotectants.", "reference": "DOI:10.37256/amtt.5220244537"}], "predicate": "provides", "predicate_id": null, "source": "extracellular polymeric substances (EPS)", "target": "cryoprotection against freeze-thaw cycles"}], "graph_id": "psychrotolerant_facultative_cold_adaptation", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Cold-shock-protein induction supporting transient low-temperature acclimation.", "grounding": null, "id": "cold_shock_response", "is_orphan": false, "label": "cold-shock response", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Accumulation of compatible solutes that stabilize proteins and membranes under cold stress.", "grounding": null, "id": "compatible_solute_accumulation", "is_orphan": false, "label": "compatible solute accumulation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Secreted polymeric matrix surrounding cells that acts as a cryoprotectant.", "grounding": null, "id": "extracellular_polymeric_substances", "is_orphan": false, "label": "extracellular polymeric substances (EPS)", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Cold-induced shifts in lipid composition without obligate low-temperature specialization.", "grounding": null, "id": "facultative_lipid_remodeling", "is_orphan": false, "label": "facultative lipid remodeling", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Protection of cells from damage during freeze-thaw cycling.", "grounding": null, "id": "freeze_thaw_cryoprotection", "is_orphan": false, "label": "cryoprotection against freeze-thaw cycles", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dcfce7", "description": "Ambient temperature below the mesophile optimum range.", "grounding": "PATO:0001306", "id": "low_temperature", "is_orphan": false, "label": "low temperature", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#f3f4f6", "description": "Physical state of the cytoplasmic membrane supporting transport and bioenergetics.", "grounding": "METPO:1007505", "id": "membrane_fluidity", "is_orphan": false, "label": "membrane fluidity", "node_type": "QUALITY", "xrefs": []}, {"color": "#f3f4f6", "description": "Cold-induced increase in membrane order and bilayer thickness approaching a gel-phase transition.", "grounding": null, "id": "membrane_rigidification", "is_orphan": false, "label": "membrane rigidification and thickening", "node_type": "QUALITY", "xrefs": []}, {"color": "#f3f4f6", "description": "Maintained integrity of proteins and membranes during low-temperature stress.", "grounding": null, "id": "protein_membrane_stability", "is_orphan": false, "label": "protein and membrane stability under cold stress", "node_type": "QUALITY", "xrefs": []}, {"color": "#dbeafe", "description": "Growth at low temperatures without an obligate low-temperature preference.", "grounding": "METPO:1000618", "id": "psychrotolerant_trait", "is_orphan": false, "label": "psychrotolerant", "node_type": "TRAIT", "xrefs": []}, {"color": "#fef3c7", "description": "Hopanoid lipids whose unsaturation rises at low temperature, aiding membrane homeostasis.", "grounding": null, "id": "unsaturated_hopanoids", "is_orphan": false, "label": "unsaturated hopanoids", "node_type": "CHEMICAL", "xrefs": []}], "title": "Psychrotolerant facultative cold-adaptation mechanism"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -891,7 +880,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 00:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/environment/slightly_halophilic.html b/pages/traits/environment/slightly_halophilic.html index 0a48d358..724960c7 100644 --- a/pages/traits/environment/slightly_halophilic.html +++ b/pages/traits/environment/slightly_halophilic.html @@ -161,7 +161,7 @@

    Edge evidence

  • ectoine increases - salt tolerance + slightly halophilic RO:0002213

    Accumulation of ectoine as a compatible solute increases salt tolerance.

  • @@ -868,7 +874,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "Evidence-backed causal sketch linking slight halophily to low or moderate NaCl and compatible-solute osmoprotection.", "edges": [{"description": "Slight halophily is a salt-growth preference at lower salinity than moderate or extreme halophily.", "evidence": [{"notes": "Review supports halophily as a continuum of salt growth requirements.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "minimum salt concentration required for growth"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "low_moderate_nacl", "target": "slightly_halophilic_trait"}, {"description": "Even lower salinity preferences involve osmotic adjustment to environmental salt.", "evidence": [{"notes": "Review describes growth in relation to minimum, optimum, and upper salt limits.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "salt relationships"}], "id": "edge-2", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "low_moderate_nacl", "target": "osmotic_stress"}, {"description": "Compatible solutes provide osmotic balance without disrupting metabolism.", "evidence": [{"notes": "Supports compatible solutes as non-disruptive osmoprotectants.", "reference": "DOI:10.1371/journal.pone.0168818", "snippet": "do not disturb the cell\u0027s metabolism"}], "id": "edge-3", "is_orphan": false, "predicate": "mitigates", "predicate_id": "METPO:2007407", "source": "compatible_solutes", "target": "osmotic_stress"}, {"description": "Uptake systems can accumulate compatible solutes for salt adaptation.", "evidence": [{"notes": "Review supports accumulation of organic osmotic solutes in bacterial osmoadaptation.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "organic osmotic solutes"}], "id": "edge-4", "is_orphan": false, "predicate": "accumulates", "predicate_id": "METPO:2007810", "source": "osmoprotectant_transport", "target": "compatible_solutes"}, {"description": "The ect gene cluster encodes the enzymes that carry out ectoine biosynthesis.", "evidence": [{"notes": "ectoine biosynthesis genes are denoted by ectABC; ectBACD up-regulated as an osmoadaptation system.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-5", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "ect_gene_cluster", "target": "ectoine_biosynthesis"}, {"description": "Ectoine biosynthesis produces the compatible solute ectoine.", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte via the ectABC pathway.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-6", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "ectoine_biosynthesis", "target": "ectoine"}, {"description": "Accumulation of ectoine as a compatible solute increases salt tolerance.", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte while the ectABC-deleted strain is salt-sensitive.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-7", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "ectoine", "target": "salt_tolerance"}, {"description": "Uptake of compatible solutes is a general salt-out osmoadaptation strategy that raises salt tolerance.", "evidence": [{"notes": "Salt-out strategists exclude salt and/or synthesize or uptake compatible solutes (e.g. glycine betaine); dominant strategy in many halophilic bacteria.", "reference": "DOI:10.1093/femsre/fuy026"}], "id": "edge-8", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "osmoprotectant_transport", "target": "salt_tolerance"}, {"description": "Coordinated induction of Na+/K+ transcription supports ion homeostasis during salt stress.", "evidence": [{"notes": "Coordinated induction of Na+/K+ transcription and ectoine, proline, and betaine biosynthesis under salt stress.", "reference": "DOI:10.1038/s42003-022-04319-3"}], "id": "edge-9", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "na_k_transcription", "target": "ion_homeostasis"}], "evidence_rows": [{"description": "Slight halophily is a salt-growth preference at lower salinity than moderate or extreme halophily.", "edge_id": "edge-1", "evidence": [{"notes": "Review supports halophily as a continuum of salt growth requirements.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "minimum salt concentration required for growth"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "low to moderate NaCl", "target": "slightly halophilic"}, {"description": "Even lower salinity preferences involve osmotic adjustment to environmental salt.", "edge_id": "edge-2", "evidence": [{"notes": "Review describes growth in relation to minimum, optimum, and upper salt limits.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "salt relationships"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "low to moderate NaCl", "target": "osmotic stress"}, {"description": "Compatible solutes provide osmotic balance without disrupting metabolism.", "edge_id": "edge-3", "evidence": [{"notes": "Supports compatible solutes as non-disruptive osmoprotectants.", "reference": "DOI:10.1371/journal.pone.0168818", "snippet": "do not disturb the cell\u0027s metabolism"}], "predicate": "mitigates", "predicate_id": "METPO:2007407", "source": "compatible solutes", "target": "osmotic stress"}, {"description": "Uptake systems can accumulate compatible solutes for salt adaptation.", "edge_id": "edge-4", "evidence": [{"notes": "Review supports accumulation of organic osmotic solutes in bacterial osmoadaptation.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "organic osmotic solutes"}], "predicate": "accumulates", "predicate_id": "METPO:2007810", "source": "osmoprotectant transport", "target": "compatible solutes"}, {"description": "The ect gene cluster encodes the enzymes that carry out ectoine biosynthesis.", "edge_id": "edge-5", "evidence": [{"notes": "ectoine biosynthesis genes are denoted by ectABC; ectBACD up-regulated as an osmoadaptation system.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "ectABC/ectBACD gene cluster", "target": "ectoine biosynthesis"}, {"description": "Ectoine biosynthesis produces the compatible solute ectoine.", "edge_id": "edge-6", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte via the ectABC pathway.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "ectoine biosynthesis", "target": "ectoine"}, {"description": "Accumulation of ectoine as a compatible solute increases salt tolerance.", "edge_id": "edge-7", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte while the ectABC-deleted strain is salt-sensitive.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "ectoine", "target": "salt tolerance"}, {"description": "Uptake of compatible solutes is a general salt-out osmoadaptation strategy that raises salt tolerance.", "edge_id": "edge-8", "evidence": [{"notes": "Salt-out strategists exclude salt and/or synthesize or uptake compatible solutes (e.g. glycine betaine); dominant strategy in many halophilic bacteria.", "reference": "DOI:10.1093/femsre/fuy026"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "osmoprotectant transport", "target": "salt tolerance"}, {"description": "Coordinated induction of Na+/K+ transcription supports ion homeostasis during salt stress.", "edge_id": "edge-9", "evidence": [{"notes": "Coordinated induction of Na+/K+ transcription and ectoine, proline, and betaine biosynthesis under salt stress.", "reference": "DOI:10.1038/s42003-022-04319-3"}], "predicate": "supports", "predicate_id": null, "source": "Na+/K+ transcriptional induction", "target": "ion homeostasis during salt stress"}], "graph_id": "slight_halophile_low_salt_osmoadaptation", "issues": [], "nodes": [{"color": "#fef3c7", "description": "Organic osmoprotectants accumulated or synthesized in response to salt.", "grounding": "CHEBI:25728", "id": "compatible_solutes", "is_orphan": false, "label": "compatible solutes", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Ectoine biosynthesis operon encoding the ectoine pathway enzymes.", "grounding": null, "id": "ect_gene_cluster", "is_orphan": false, "label": "ectABC/ectBACD gene cluster", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#fef3c7", "description": "A major compatible solute (osmolyte) accumulated under salt stress.", "grounding": "CHEBI:27592", "id": "ectoine", "is_orphan": false, "label": "ectoine", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Biosynthesis of the compatible solute ectoine via the ectABC/ectBACD pathway.", "grounding": "GO:0019491", "id": "ectoine_biosynthesis", "is_orphan": false, "label": "ectoine biosynthesis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of Na+/K+ balance under salt stress.", "grounding": null, "id": "ion_homeostasis", "is_orphan": false, "label": "ion homeostasis during salt stress", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dcfce7", "description": "Salinity range below that of moderate and extreme halophiles.", "grounding": null, "id": "low_moderate_nacl", "is_orphan": false, "label": "low to moderate NaCl", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#ecfccb", "description": "Coordinated induction of sodium/potassium transport transcription under salt stress.", "grounding": null, "id": "na_k_transcription", "is_orphan": false, "label": "Na+/K+ transcriptional induction", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#cffafe", "description": "Uptake of compatible solutes such as glycine betaine.", "grounding": null, "id": "osmoprotectant_transport", "is_orphan": false, "label": "osmoprotectant transport", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Osmotic challenge caused by environmental salt.", "grounding": "GO:0006970", "id": "osmotic_stress", "is_orphan": false, "label": "osmotic stress", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3f4f6", "description": "Capacity to grow and survive under elevated salinity / salt stress.", "grounding": null, "id": "salt_tolerance", "is_orphan": false, "label": "salt tolerance", "node_type": "CAPACITY", "xrefs": []}, {"color": "#dbeafe", "description": "Optimal growth requires low to moderate salt concentrations.", "grounding": "METPO:1000625", "id": "slightly_halophilic_trait", "is_orphan": false, "label": "slightly halophilic", "node_type": "TRAIT", "xrefs": []}], "title": "Slight halophile low-salt osmoadaptation mechanism"}]; + var graphs = [{"description": "Evidence-backed causal sketch linking slight halophily to low or moderate NaCl and compatible-solute osmoprotection.", "edges": [{"description": "Slight halophily is a salt-growth preference at lower salinity than moderate or extreme halophily.", "evidence": [{"notes": "Review supports halophily as a continuum of salt growth requirements.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "minimum salt concentration required for growth"}], "id": "edge-1", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "low_moderate_nacl", "target": "slightly_halophilic_trait"}, {"description": "Even lower salinity preferences involve osmotic adjustment to environmental salt.", "evidence": [{"notes": "Review describes growth in relation to minimum, optimum, and upper salt limits.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "salt relationships"}], "id": "edge-2", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "low_moderate_nacl", "target": "osmotic_stress"}, {"description": "Compatible solutes provide osmotic balance without disrupting metabolism.", "evidence": [{"notes": "Supports compatible solutes as non-disruptive osmoprotectants.", "reference": "DOI:10.1371/journal.pone.0168818", "snippet": "do not disturb the cell\u0027s metabolism"}], "id": "edge-3", "is_orphan": false, "predicate": "mitigates", "predicate_id": "METPO:2007407", "source": "compatible_solutes", "target": "osmotic_stress"}, {"description": "Uptake systems can accumulate compatible solutes for salt adaptation.", "evidence": [{"notes": "Review supports accumulation of organic osmotic solutes in bacterial osmoadaptation.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "organic osmotic solutes"}], "id": "edge-4", "is_orphan": false, "predicate": "accumulates", "predicate_id": "METPO:2007810", "source": "osmoprotectant_transport", "target": "compatible_solutes"}, {"description": "The ect gene cluster encodes the enzymes that carry out ectoine biosynthesis.", "evidence": [{"notes": "ectoine biosynthesis genes are denoted by ectABC; ectBACD up-regulated as an osmoadaptation system.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-5", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "ect_gene_cluster", "target": "ectoine_biosynthesis"}, {"description": "Ectoine biosynthesis produces the compatible solute ectoine.", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte via the ectABC pathway.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-6", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "ectoine_biosynthesis", "target": "ectoine"}, {"description": "Accumulation of ectoine as a compatible solute increases salt tolerance.", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte while the ectABC-deleted strain is salt-sensitive.", "reference": "DOI:10.1128/aem.01905-23"}], "id": "edge-7", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "ectoine", "target": "slightly_halophilic_trait"}, {"description": "Uptake of compatible solutes is a general salt-out osmoadaptation strategy that raises salt tolerance.", "evidence": [{"notes": "Salt-out strategists exclude salt and/or synthesize or uptake compatible solutes (e.g. glycine betaine); dominant strategy in many halophilic bacteria.", "reference": "DOI:10.1093/femsre/fuy026"}], "id": "edge-8", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "osmoprotectant_transport", "target": "slightly_halophilic_trait"}, {"description": "Coordinated induction of Na+/K+ transcription supports ion homeostasis during salt stress.", "evidence": [{"notes": "Coordinated induction of Na+/K+ transcription and ectoine, proline, and betaine biosynthesis under salt stress.", "reference": "DOI:10.1038/s42003-022-04319-3"}], "id": "edge-9", "is_orphan": false, "predicate": "supports", "predicate_id": null, "source": "na_k_transcription", "target": "ion_homeostasis"}], "evidence_rows": [{"description": "Slight halophily is a salt-growth preference at lower salinity than moderate or extreme halophily.", "edge_id": "edge-1", "evidence": [{"notes": "Review supports halophily as a continuum of salt growth requirements.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "minimum salt concentration required for growth"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "low to moderate NaCl", "target": "slightly halophilic"}, {"description": "Even lower salinity preferences involve osmotic adjustment to environmental salt.", "edge_id": "edge-2", "evidence": [{"notes": "Review describes growth in relation to minimum, optimum, and upper salt limits.", "reference": "DOI:10.1186/1746-1448-4-2", "snippet": "salt relationships"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "low to moderate NaCl", "target": "osmotic stress"}, {"description": "Compatible solutes provide osmotic balance without disrupting metabolism.", "edge_id": "edge-3", "evidence": [{"notes": "Supports compatible solutes as non-disruptive osmoprotectants.", "reference": "DOI:10.1371/journal.pone.0168818", "snippet": "do not disturb the cell\u0027s metabolism"}], "predicate": "mitigates", "predicate_id": "METPO:2007407", "source": "compatible solutes", "target": "osmotic stress"}, {"description": "Uptake systems can accumulate compatible solutes for salt adaptation.", "edge_id": "edge-4", "evidence": [{"notes": "Review supports accumulation of organic osmotic solutes in bacterial osmoadaptation.", "reference": "DOI:10.1093/femsre/fuy009", "snippet": "organic osmotic solutes"}], "predicate": "accumulates", "predicate_id": "METPO:2007810", "source": "osmoprotectant transport", "target": "compatible solutes"}, {"description": "The ect gene cluster encodes the enzymes that carry out ectoine biosynthesis.", "edge_id": "edge-5", "evidence": [{"notes": "ectoine biosynthesis genes are denoted by ectABC; ectBACD up-regulated as an osmoadaptation system.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "ectABC/ectBACD gene cluster", "target": "ectoine biosynthesis"}, {"description": "Ectoine biosynthesis produces the compatible solute ectoine.", "edge_id": "edge-6", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte via the ectABC pathway.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "ectoine biosynthesis", "target": "ectoine"}, {"description": "Accumulation of ectoine as a compatible solute increases salt tolerance.", "edge_id": "edge-7", "evidence": [{"notes": "Wild-type accumulates ectoine as its major osmolyte while the ectABC-deleted strain is salt-sensitive.", "reference": "DOI:10.1128/aem.01905-23"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "ectoine", "target": "slightly halophilic"}, {"description": "Uptake of compatible solutes is a general salt-out osmoadaptation strategy that raises salt tolerance.", "edge_id": "edge-8", "evidence": [{"notes": "Salt-out strategists exclude salt and/or synthesize or uptake compatible solutes (e.g. glycine betaine); dominant strategy in many halophilic bacteria.", "reference": "DOI:10.1093/femsre/fuy026"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "osmoprotectant transport", "target": "slightly halophilic"}, {"description": "Coordinated induction of Na+/K+ transcription supports ion homeostasis during salt stress.", "edge_id": "edge-9", "evidence": [{"notes": "Coordinated induction of Na+/K+ transcription and ectoine, proline, and betaine biosynthesis under salt stress.", "reference": "DOI:10.1038/s42003-022-04319-3"}], "predicate": "supports", "predicate_id": null, "source": "Na+/K+ transcriptional induction", "target": "ion homeostasis during salt stress"}], "graph_id": "slight_halophile_low_salt_osmoadaptation", "issues": [], "nodes": [{"color": "#fef3c7", "description": "Organic osmoprotectants accumulated or synthesized in response to salt.", "grounding": "CHEBI:25728", "id": "compatible_solutes", "is_orphan": false, "label": "compatible solutes", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Ectoine biosynthesis operon encoding the ectoine pathway enzymes.", "grounding": null, "id": "ect_gene_cluster", "is_orphan": false, "label": "ectABC/ectBACD gene cluster", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#fef3c7", "description": "A major compatible solute (osmolyte) accumulated under salt stress.", "grounding": "CHEBI:27592", "id": "ectoine", "is_orphan": false, "label": "ectoine", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Biosynthesis of the compatible solute ectoine via the ectABC/ectBACD pathway.", "grounding": "GO:0019491", "id": "ectoine_biosynthesis", "is_orphan": false, "label": "ectoine biosynthesis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Maintenance of Na+/K+ balance under salt stress.", "grounding": null, "id": "ion_homeostasis", "is_orphan": false, "label": "ion homeostasis during salt stress", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dcfce7", "description": "Salinity range below that of moderate and extreme halophiles.", "grounding": null, "id": "low_moderate_nacl", "is_orphan": false, "label": "low to moderate NaCl", "node_type": "ENVIRONMENTAL_FACTOR", "xrefs": []}, {"color": "#ecfccb", "description": "Coordinated induction of sodium/potassium transport transcription under salt stress.", "grounding": null, "id": "na_k_transcription", "is_orphan": false, "label": "Na+/K+ transcriptional induction", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#cffafe", "description": "Uptake of compatible solutes such as glycine betaine.", "grounding": null, "id": "osmoprotectant_transport", "is_orphan": false, "label": "osmoprotectant transport", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Osmotic challenge caused by environmental salt.", "grounding": "GO:0006970", "id": "osmotic_stress", "is_orphan": false, "label": "osmotic stress", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Optimal growth requires low to moderate salt concentrations.", "grounding": "METPO:1000625", "id": "slightly_halophilic_trait", "is_orphan": false, "label": "slightly halophilic", "node_type": "TRAIT", "xrefs": []}], "title": "Slight halophile low-salt osmoadaptation mechanism"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -891,7 +897,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 02:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/morphology/non_spore_forming.html b/pages/traits/morphology/non_spore_forming.html index d0647189..56b13616 100644 --- a/pages/traits/morphology/non_spore_forming.html +++ b/pages/traits/morphology/non_spore_forming.html @@ -144,7 +144,7 @@

    Edge evidence

  • low or absent Spo0A activity causes - loss of sporulation capacity + non-spore forming biolink:causes

    Low or absent Spo0A activity abolishes sporulation capacity.

  • -
  • +
  • dephosphorylation of Spo0F decreases activation of low or absent Spo0A activity @@ -209,7 +192,7 @@

    Edge evidence

  • -
  • +
  • Spo0A phosphorelay disruption prevents no entry into sporulation @@ -226,7 +209,7 @@

    Edge evidence

  • -
  • +
  • no entry into sporulation manifests as non-spore forming @@ -496,6 +479,12 @@

    Curation history

    Grounded 5 causal-edge predicate_id field(s) via mappings/predicate_grounding.tsv (biolink:causes×2, METPO:2007400×2, RO:0002212×1).

  • +
  • + · + MERGE_CAUSAL_NODE · claude +

    Merged node loss_sporulation_capacity into non_spore_forming_trait and repointed its edges. Issue 352. 'Loss of the capacity to undergo sporulation' IS the record's own trait (METPO:1000872, non-spore forming), so the only correct grounding duplicates the anchor. Collapsing leaves low_spo0a_activity -causes-> non_spore_forming_trait, which is the shape loss_sporulation_genes already uses in this graph.

    +
  • +
    @@ -853,7 +842,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "DOI-backed graph linking absence or non-functionality of the Spo0A-initiated sporulation regulatory cascade to inability to form endospores.", "edges": [{"description": "Without the Spo0A/sigma cascade, asymmetric septation cannot be initiated.", "evidence": [{"notes": "Supports the Spo0A/sigma cascade as the gatekeeper of sporulation morphogenesis.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "id": "edge-1", "is_orphan": false, "predicate": "prevents", "predicate_id": "RO:0002212", "source": "absent_spo0a_cascade", "target": "no_asymmetric_septation"}, {"description": "Without asymmetric septation, the forespore compartment and subsequent endospore cannot be produced.", "evidence": [{"notes": "Supports asymmetric septation as a required step for endospore formation.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "id": "edge-2", "is_orphan": false, "predicate": "prevents", "predicate_id": "RO:0002212", "source": "no_asymmetric_septation", "target": "no_endospore_formation"}, {"description": "Failure to produce endospores manifests the non-spore-forming trait.", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1155/2013/898106", "snippet": "S. aureus does not form spores"}], "id": "edge-3", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no_endospore_formation", "target": "non_spore_forming_trait"}, {"description": "Absence of spo0A is an excellent predictor of inability to sporulate.", "evidence": [{"notes": "Comparative genomics of 180 genomes: spo0A present in all 76 sporeformers; its absence predicts non-sporulation.", "reference": "DOI:10.1128/jb.00079-22"}], "id": "edge-4", "is_orphan": false, "predicate": "predicts", "predicate_id": null, "source": "absent_spo0a_gene", "target": "non_spore_forming_trait"}, {"description": "Loss of a considerable fraction of sporulation genes yields an asporogenic phenotype.", "evidence": [{"notes": "Asporogenic phenotypes can result from inactivation or loss of a considerable fraction of sporulation genes (generic edge).", "reference": "DOI:10.1111/1462-2920.16145"}], "id": "edge-5", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "loss_sporulation_genes", "target": "non_spore_forming_trait"}, {"description": "Low or absent Spo0A activity abolishes sporulation capacity.", "evidence": [{"notes": "Spo0A is the master regulator of endospore formation; elevated Spo0A~P is required to trigger sporulation.", "reference": "DOI:10.3389/fmicb.2021.630573"}], "id": "edge-6", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "low_spo0a_activity", "target": "loss_sporulation_capacity"}, {"description": "Loss of sporulation capacity manifests the non-spore-forming phenotype.", "evidence": [{"notes": "Failure to produce/activate Spo0A prevents sporulation, yielding the non-spore-forming trait.", "reference": "DOI:10.3389/fmicb.2021.630573"}], "id": "edge-7", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "loss_sporulation_capacity", "target": "non_spore_forming_trait"}, {"description": "Rap phosphatases directly dephosphorylate Spo0F.", "evidence": [{"notes": "Rap phosphatases directly dephosphorylate Spo0F (generic to Bacillus phosphorelay logic).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "id": "edge-8", "is_orphan": false, "predicate": "dephosphorylates", "predicate_id": null, "source": "rap_phosphatases", "target": "spo0f_dephosphorylation"}, {"description": "Dephosphorylation of Spo0F reduces phosphate flow to Spo0A, decreasing its activation.", "evidence": [{"notes": "Reduced phosphate flow to Spo0A in the sporulation phosphorelay (corroborated by DOI:10.3390/microorganisms11081928).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "id": "edge-9", "is_orphan": false, "predicate": "decreases activation of", "predicate_id": null, "source": "spo0f_dephosphorylation", "target": "low_spo0a_activity"}, {"description": "Disruption of the KinA/KinB -\u003e Spo0F -\u003e Spo0B -\u003e Spo0A phosphorelay arrests entry into sporulation.", "evidence": [{"notes": "The phosphorelay signals the start of sporulation; mutants arrest at stages 0/I when initiation fails.", "reference": "DOI:10.3390/microorganisms11081928"}], "id": "edge-10", "is_orphan": false, "predicate": "prevents", "predicate_id": "RO:0002212", "source": "phosphorelay_disruption", "target": "no_sporulation_entry"}, {"description": "Failure to enter sporulation manifests the non-spore-forming phenotype.", "evidence": [{"notes": "Arrest at sporulation initiation produces the non-spore-forming endpoint.", "reference": "DOI:10.3390/microorganisms11081928"}], "id": "edge-11", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no_sporulation_entry", "target": "non_spore_forming_trait"}], "evidence_rows": [{"description": "Without the Spo0A/sigma cascade, asymmetric septation cannot be initiated.", "edge_id": "edge-1", "evidence": [{"notes": "Supports the Spo0A/sigma cascade as the gatekeeper of sporulation morphogenesis.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "predicate": "prevents", "predicate_id": "RO:0002212", "source": "absent Spo0A regulatory cascade", "target": "no asymmetric septation"}, {"description": "Without asymmetric septation, the forespore compartment and subsequent endospore cannot be produced.", "edge_id": "edge-2", "evidence": [{"notes": "Supports asymmetric septation as a required step for endospore formation.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "predicate": "prevents", "predicate_id": "RO:0002212", "source": "no asymmetric septation", "target": "no endospore formation"}, {"description": "Failure to produce endospores manifests the non-spore-forming trait.", "edge_id": "edge-3", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1155/2013/898106", "snippet": "S. aureus does not form spores"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no endospore formation", "target": "non-spore forming"}, {"description": "Absence of spo0A is an excellent predictor of inability to sporulate.", "edge_id": "edge-4", "evidence": [{"notes": "Comparative genomics of 180 genomes: spo0A present in all 76 sporeformers; its absence predicts non-sporulation.", "reference": "DOI:10.1128/jb.00079-22"}], "predicate": "predicts", "predicate_id": null, "source": "absence of spo0A gene", "target": "non-spore forming"}, {"description": "Loss of a considerable fraction of sporulation genes yields an asporogenic phenotype.", "edge_id": "edge-5", "evidence": [{"notes": "Asporogenic phenotypes can result from inactivation or loss of a considerable fraction of sporulation genes (generic edge).", "reference": "DOI:10.1111/1462-2920.16145"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "loss of sporulation genes", "target": "non-spore forming"}, {"description": "Low or absent Spo0A activity abolishes sporulation capacity.", "edge_id": "edge-6", "evidence": [{"notes": "Spo0A is the master regulator of endospore formation; elevated Spo0A~P is required to trigger sporulation.", "reference": "DOI:10.3389/fmicb.2021.630573"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "low or absent Spo0A activity", "target": "loss of sporulation capacity"}, {"description": "Loss of sporulation capacity manifests the non-spore-forming phenotype.", "edge_id": "edge-7", "evidence": [{"notes": "Failure to produce/activate Spo0A prevents sporulation, yielding the non-spore-forming trait.", "reference": "DOI:10.3389/fmicb.2021.630573"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "loss of sporulation capacity", "target": "non-spore forming"}, {"description": "Rap phosphatases directly dephosphorylate Spo0F.", "edge_id": "edge-8", "evidence": [{"notes": "Rap phosphatases directly dephosphorylate Spo0F (generic to Bacillus phosphorelay logic).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "predicate": "dephosphorylates", "predicate_id": null, "source": "Rap phosphatases", "target": "dephosphorylation of Spo0F"}, {"description": "Dephosphorylation of Spo0F reduces phosphate flow to Spo0A, decreasing its activation.", "edge_id": "edge-9", "evidence": [{"notes": "Reduced phosphate flow to Spo0A in the sporulation phosphorelay (corroborated by DOI:10.3390/microorganisms11081928).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "predicate": "decreases activation of", "predicate_id": null, "source": "dephosphorylation of Spo0F", "target": "low or absent Spo0A activity"}, {"description": "Disruption of the KinA/KinB -\u003e Spo0F -\u003e Spo0B -\u003e Spo0A phosphorelay arrests entry into sporulation.", "edge_id": "edge-10", "evidence": [{"notes": "The phosphorelay signals the start of sporulation; mutants arrest at stages 0/I when initiation fails.", "reference": "DOI:10.3390/microorganisms11081928"}], "predicate": "prevents", "predicate_id": "RO:0002212", "source": "Spo0A phosphorelay disruption", "target": "no entry into sporulation"}, {"description": "Failure to enter sporulation manifests the non-spore-forming phenotype.", "edge_id": "edge-11", "evidence": [{"notes": "Arrest at sporulation initiation produces the non-spore-forming endpoint.", "reference": "DOI:10.3390/microorganisms11081928"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no entry into sporulation", "target": "non-spore forming"}], "graph_id": "non_spore_forming_absent_spo0a_cascade", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Absence or non-functionality of the Spo0A-initiated sporulation regulatory program (Spo0A master regulator and downstream sigma factors).", "grounding": null, "id": "absent_spo0a_cascade", "is_orphan": false, "label": "absent Spo0A regulatory cascade", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Lack of the spo0A master regulator gene; an excellent predictor of inability to sporulate.", "grounding": null, "id": "absent_spo0a_gene", "is_orphan": false, "label": "absence of spo0A gene", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3f4f6", "description": "Loss of the capacity to undergo sporulation.", "grounding": null, "id": "loss_sporulation_capacity", "is_orphan": false, "label": "loss of sporulation capacity", "node_type": "CAPACITY", "xrefs": []}, {"color": "#ecfccb", "description": "Inactivation or loss of a considerable fraction of core sporulation genes.", "grounding": null, "id": "loss_sporulation_genes", "is_orphan": false, "label": "loss of sporulation genes", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#cffafe", "description": "Reduced or absent activity of the Spo0A master regulator of endospore formation.", "grounding": null, "id": "low_spo0a_activity", "is_orphan": false, "label": "low or absent Spo0A activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Lack of the polar division step that generates a forespore compartment.", "grounding": null, "id": "no_asymmetric_septation", "is_orphan": false, "label": "no asymmetric septation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Failure to produce a dormant, resistant endospore.", "grounding": null, "id": "no_endospore_formation", "is_orphan": false, "label": "no endospore formation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Failure to enter the sporulation developmental program (arrest at stages 0/I).", "grounding": null, "id": "no_sporulation_entry", "is_orphan": false, "label": "no entry into sporulation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Inability to produce endospores.", "grounding": "METPO:1000872", "id": "non_spore_forming_trait", "is_orphan": false, "label": "non-spore forming", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Disruption of the KinA/KinB -\u003e Spo0F -\u003e Spo0B -\u003e Spo0A phosphorelay that initiates sporulation.", "grounding": null, "id": "phosphorelay_disruption", "is_orphan": false, "label": "Spo0A phosphorelay disruption", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Rap family phosphatases that dephosphorylate Spo0F in the sporulation phosphorelay.", "grounding": null, "id": "rap_phosphatases", "is_orphan": false, "label": "Rap phosphatases", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Dephosphorylation of Spo0F reducing phosphate flow to Spo0A in the phosphorelay.", "grounding": null, "id": "spo0f_dephosphorylation", "is_orphan": false, "label": "dephosphorylation of Spo0F", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}], "title": "Non-spore-forming absent Spo0A cascade"}]; + var graphs = [{"description": "DOI-backed graph linking absence or non-functionality of the Spo0A-initiated sporulation regulatory cascade to inability to form endospores.", "edges": [{"description": "Without the Spo0A/sigma cascade, asymmetric septation cannot be initiated.", "evidence": [{"notes": "Supports the Spo0A/sigma cascade as the gatekeeper of sporulation morphogenesis.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "id": "edge-1", "is_orphan": false, "predicate": "prevents", "predicate_id": "RO:0002212", "source": "absent_spo0a_cascade", "target": "no_asymmetric_septation"}, {"description": "Without asymmetric septation, the forespore compartment and subsequent endospore cannot be produced.", "evidence": [{"notes": "Supports asymmetric septation as a required step for endospore formation.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "id": "edge-2", "is_orphan": false, "predicate": "prevents", "predicate_id": "RO:0002212", "source": "no_asymmetric_septation", "target": "no_endospore_formation"}, {"description": "Failure to produce endospores manifests the non-spore-forming trait.", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1155/2013/898106", "snippet": "S. aureus does not form spores"}], "id": "edge-3", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no_endospore_formation", "target": "non_spore_forming_trait"}, {"description": "Absence of spo0A is an excellent predictor of inability to sporulate.", "evidence": [{"notes": "Comparative genomics of 180 genomes: spo0A present in all 76 sporeformers; its absence predicts non-sporulation.", "reference": "DOI:10.1128/jb.00079-22"}], "id": "edge-4", "is_orphan": false, "predicate": "predicts", "predicate_id": null, "source": "absent_spo0a_gene", "target": "non_spore_forming_trait"}, {"description": "Loss of a considerable fraction of sporulation genes yields an asporogenic phenotype.", "evidence": [{"notes": "Asporogenic phenotypes can result from inactivation or loss of a considerable fraction of sporulation genes (generic edge).", "reference": "DOI:10.1111/1462-2920.16145"}], "id": "edge-5", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "loss_sporulation_genes", "target": "non_spore_forming_trait"}, {"description": "Low or absent Spo0A activity abolishes sporulation capacity.", "evidence": [{"notes": "Spo0A is the master regulator of endospore formation; elevated Spo0A~P is required to trigger sporulation.", "reference": "DOI:10.3389/fmicb.2021.630573"}], "id": "edge-6", "is_orphan": false, "predicate": "causes", "predicate_id": "biolink:causes", "source": "low_spo0a_activity", "target": "non_spore_forming_trait"}, {"description": "Rap phosphatases directly dephosphorylate Spo0F.", "evidence": [{"notes": "Rap phosphatases directly dephosphorylate Spo0F (generic to Bacillus phosphorelay logic).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "id": "edge-7", "is_orphan": false, "predicate": "dephosphorylates", "predicate_id": null, "source": "rap_phosphatases", "target": "spo0f_dephosphorylation"}, {"description": "Dephosphorylation of Spo0F reduces phosphate flow to Spo0A, decreasing its activation.", "evidence": [{"notes": "Reduced phosphate flow to Spo0A in the sporulation phosphorelay (corroborated by DOI:10.3390/microorganisms11081928).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "id": "edge-8", "is_orphan": false, "predicate": "decreases activation of", "predicate_id": null, "source": "spo0f_dephosphorylation", "target": "low_spo0a_activity"}, {"description": "Disruption of the KinA/KinB -\u003e Spo0F -\u003e Spo0B -\u003e Spo0A phosphorelay arrests entry into sporulation.", "evidence": [{"notes": "The phosphorelay signals the start of sporulation; mutants arrest at stages 0/I when initiation fails.", "reference": "DOI:10.3390/microorganisms11081928"}], "id": "edge-9", "is_orphan": false, "predicate": "prevents", "predicate_id": "RO:0002212", "source": "phosphorelay_disruption", "target": "no_sporulation_entry"}, {"description": "Failure to enter sporulation manifests the non-spore-forming phenotype.", "evidence": [{"notes": "Arrest at sporulation initiation produces the non-spore-forming endpoint.", "reference": "DOI:10.3390/microorganisms11081928"}], "id": "edge-10", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no_sporulation_entry", "target": "non_spore_forming_trait"}], "evidence_rows": [{"description": "Without the Spo0A/sigma cascade, asymmetric septation cannot be initiated.", "edge_id": "edge-1", "evidence": [{"notes": "Supports the Spo0A/sigma cascade as the gatekeeper of sporulation morphogenesis.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "predicate": "prevents", "predicate_id": "RO:0002212", "source": "absent Spo0A regulatory cascade", "target": "no asymmetric septation"}, {"description": "Without asymmetric septation, the forespore compartment and subsequent endospore cannot be produced.", "edge_id": "edge-2", "evidence": [{"notes": "Supports asymmetric septation as a required step for endospore formation.", "reference": "DOI:10.1146/annurev.genet.30.1.297", "snippet": "activation of these sigma factors to landmark events in morphogenesis"}], "predicate": "prevents", "predicate_id": "RO:0002212", "source": "no asymmetric septation", "target": "no endospore formation"}, {"description": "Failure to produce endospores manifests the non-spore-forming trait.", "edge_id": "edge-3", "evidence": [{"notes": "Supports the trait endpoint in a representative organism.", "reference": "DOI:10.1155/2013/898106", "snippet": "S. aureus does not form spores"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no endospore formation", "target": "non-spore forming"}, {"description": "Absence of spo0A is an excellent predictor of inability to sporulate.", "edge_id": "edge-4", "evidence": [{"notes": "Comparative genomics of 180 genomes: spo0A present in all 76 sporeformers; its absence predicts non-sporulation.", "reference": "DOI:10.1128/jb.00079-22"}], "predicate": "predicts", "predicate_id": null, "source": "absence of spo0A gene", "target": "non-spore forming"}, {"description": "Loss of a considerable fraction of sporulation genes yields an asporogenic phenotype.", "edge_id": "edge-5", "evidence": [{"notes": "Asporogenic phenotypes can result from inactivation or loss of a considerable fraction of sporulation genes (generic edge).", "reference": "DOI:10.1111/1462-2920.16145"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "loss of sporulation genes", "target": "non-spore forming"}, {"description": "Low or absent Spo0A activity abolishes sporulation capacity.", "edge_id": "edge-6", "evidence": [{"notes": "Spo0A is the master regulator of endospore formation; elevated Spo0A~P is required to trigger sporulation.", "reference": "DOI:10.3389/fmicb.2021.630573"}], "predicate": "causes", "predicate_id": "biolink:causes", "source": "low or absent Spo0A activity", "target": "non-spore forming"}, {"description": "Rap phosphatases directly dephosphorylate Spo0F.", "edge_id": "edge-7", "evidence": [{"notes": "Rap phosphatases directly dephosphorylate Spo0F (generic to Bacillus phosphorelay logic).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "predicate": "dephosphorylates", "predicate_id": null, "source": "Rap phosphatases", "target": "dephosphorylation of Spo0F"}, {"description": "Dephosphorylation of Spo0F reduces phosphate flow to Spo0A, decreasing its activation.", "edge_id": "edge-8", "evidence": [{"notes": "Reduced phosphate flow to Spo0A in the sporulation phosphorelay (corroborated by DOI:10.3390/microorganisms11081928).", "reference": "DOI:10.1038/s41522-024-00594-6"}], "predicate": "decreases activation of", "predicate_id": null, "source": "dephosphorylation of Spo0F", "target": "low or absent Spo0A activity"}, {"description": "Disruption of the KinA/KinB -\u003e Spo0F -\u003e Spo0B -\u003e Spo0A phosphorelay arrests entry into sporulation.", "edge_id": "edge-9", "evidence": [{"notes": "The phosphorelay signals the start of sporulation; mutants arrest at stages 0/I when initiation fails.", "reference": "DOI:10.3390/microorganisms11081928"}], "predicate": "prevents", "predicate_id": "RO:0002212", "source": "Spo0A phosphorelay disruption", "target": "no entry into sporulation"}, {"description": "Failure to enter sporulation manifests the non-spore-forming phenotype.", "edge_id": "edge-10", "evidence": [{"notes": "Arrest at sporulation initiation produces the non-spore-forming endpoint.", "reference": "DOI:10.3390/microorganisms11081928"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "no entry into sporulation", "target": "non-spore forming"}], "graph_id": "non_spore_forming_absent_spo0a_cascade", "issues": [], "nodes": [{"color": "#ecfccb", "description": "Absence or non-functionality of the Spo0A-initiated sporulation regulatory program (Spo0A master regulator and downstream sigma factors).", "grounding": null, "id": "absent_spo0a_cascade", "is_orphan": false, "label": "absent Spo0A regulatory cascade", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Lack of the spo0A master regulator gene; an excellent predictor of inability to sporulate.", "grounding": null, "id": "absent_spo0a_gene", "is_orphan": false, "label": "absence of spo0A gene", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Inactivation or loss of a considerable fraction of core sporulation genes.", "grounding": null, "id": "loss_sporulation_genes", "is_orphan": false, "label": "loss of sporulation genes", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#cffafe", "description": "Reduced or absent activity of the Spo0A master regulator of endospore formation.", "grounding": null, "id": "low_spo0a_activity", "is_orphan": false, "label": "low or absent Spo0A activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Lack of the polar division step that generates a forespore compartment.", "grounding": null, "id": "no_asymmetric_septation", "is_orphan": false, "label": "no asymmetric septation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Failure to produce a dormant, resistant endospore.", "grounding": null, "id": "no_endospore_formation", "is_orphan": false, "label": "no endospore formation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Failure to enter the sporulation developmental program (arrest at stages 0/I).", "grounding": null, "id": "no_sporulation_entry", "is_orphan": false, "label": "no entry into sporulation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Inability to produce endospores.", "grounding": "METPO:1000872", "id": "non_spore_forming_trait", "is_orphan": false, "label": "non-spore forming", "node_type": "TRAIT", "xrefs": []}, {"color": "#ecfccb", "description": "Disruption of the KinA/KinB -\u003e Spo0F -\u003e Spo0B -\u003e Spo0A phosphorelay that initiates sporulation.", "grounding": null, "id": "phosphorelay_disruption", "is_orphan": false, "label": "Spo0A phosphorelay disruption", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Rap family phosphatases that dephosphorylate Spo0F in the sporulation phosphorelay.", "grounding": null, "id": "rap_phosphatases", "is_orphan": false, "label": "Rap phosphatases", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Dephosphorylation of Spo0F reducing phosphate flow to Spo0A in the phosphorelay.", "grounding": null, "id": "spo0f_dephosphorylation", "is_orphan": false, "label": "dephosphorylation of Spo0F", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}], "title": "Non-spore-forming absent Spo0A cascade"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -876,7 +865,7 @@

    kg-microbe

    METPO
    - Record as of 2026-06-24 17:21 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/morphology/sphere_shaped.html b/pages/traits/morphology/sphere_shaped.html index 4a500491..7c943068 100644 --- a/pages/traits/morphology/sphere_shaped.html +++ b/pages/traits/morphology/sphere_shaped.html @@ -144,7 +144,7 @@

    Edge evidence

  • MreB-mediated elongation machinery causally upstream of - elongation capacity + lateral cell-wall elongation

    Loss of the MreB cytoskeleton removes the elongation capacity that lengthens rods.

  • -
  • +
  • FtsZ treadmilling regulates septal peptidoglycan synthesis @@ -209,7 +192,7 @@

    Edge evidence

  • -
  • +
  • FtsW lipid II flippase transports lipid II @@ -226,7 +209,7 @@

    Edge evidence

  • -
  • +
  • lipid II enables septal peptidoglycan synthesis @@ -520,6 +503,12 @@

    Curation history

    Edge ftsW_flippase -> lipid_ii in graph sphere_shaped_septal_peptidoglycan: re-grounded it from enables/RO:0002327 to transports/METPO:2007812. Issue 334. biolink declares enables range 'biological process or activity', which of CausalNodeTypeEnum only BIOLOGICAL_PROCESS, PATHWAY and MOLECULAR_FUNCTION satisfy, so this edge entailed a false type on its object. 'FtsW FLIPS lipid II to the outer septal face' -- a flippase moves its substrate across the membrane, which is transport, not enablement. Needs GENE_OR_PROTEIN added to `transports`' subject_types, which is a deliberate widening recorded there.

  • +
  • + · + MERGE_CAUSAL_NODE · claude +

    Merged node elongation_capacity into lateral_elongation and repointed its edges. Issue 352. 'Capacity of a cell to elongate into a rod via sidewall growth' against lateral_elongation's 'Sidewall growth mode that lengthens rods' -- the same claim twice, and both already carried `reduced in -> sphere_shaped_trait`.

    +
  • +
    @@ -877,7 +866,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "Evidence-backed causal sketch linking spherical cell shape to FtsZ-associated septal synthesis, peptidoglycan remodeling, and limited lateral elongation.", "edges": [{"description": "The FtsZ division ring organizes septal wall synthesis.", "evidence": [{"notes": "Supports FtsZ-PBP cooperation in division-associated shape generation.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "FtsZ collaborates with penicillin binding proteins"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "ftsZ_division_ring", "target": "septal_peptidoglycan_synthesis"}, {"description": "Septal synthesis builds and remodels the spherical cell wall.", "evidence": [{"notes": "Supports septal-only PG synthesis in spherical cocci.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "synthesize peptidoglycan only at the division septum"}], "id": "edge-2", "is_orphan": false, "predicate": "builds", "predicate_id": "biolink:produces", "source": "septal_peptidoglycan_synthesis", "target": "peptidoglycan_cell_wall"}, {"description": "Reduced lateral elongation helps preserve a sphere rather than a rod.", "evidence": [{"notes": "Broad review supports different growth mechanisms for coccoid versus rod-shaped bacteria.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "mechanisms controlling growth and division of coccoid bacteria"}], "id": "edge-3", "is_orphan": false, "predicate": "reduced in", "predicate_id": null, "source": "lateral_elongation", "target": "sphere_shaped_trait"}, {"description": "Peptidoglycan wall geometry maintains the spherical shape.", "evidence": [{"notes": "Supports the cell wall as central to bacterial shape maintenance.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "primary role in maintaining cell shape"}], "id": "edge-4", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "peptidoglycan_cell_wall", "target": "sphere_shaped_trait"}, {"description": "Septal-only peptidoglycan synthesis in cocci produces spherical morphology.", "evidence": [{"notes": "spherical cocci synthesize peptidoglycan only at the division septum", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-5", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "septal_peptidoglycan_synthesis", "target": "sphere_shaped_trait"}, {"description": "Loss of the MreB cytoskeleton removes the elongation capacity that lengthens rods.", "evidence": [{"notes": "loss of the MreB cytoskeleton is the main factor that prevents cocci from elongating into rods", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-6", "is_orphan": false, "predicate": "causally upstream of", "predicate_id": null, "source": "mreB_elongation_machinery", "target": "elongation_capacity"}, {"description": "Loss of elongation capacity prevents cocci from elongating into rods, favoring a sphere.", "evidence": [{"notes": "prevents cocci from elongating into rods", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-7", "is_orphan": false, "predicate": "reduced in", "predicate_id": null, "source": "elongation_capacity", "target": "sphere_shaped_trait"}, {"description": "FtsZ assembly into a mid-cell Z ring recruits PBPs and divisome components.", "evidence": [{"notes": "cell division is initiated by FtsZ assembly into a mid-cell Z ring that recruits PBPs and divisome components", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-8", "is_orphan": false, "predicate": "recruits", "predicate_id": null, "source": "ftsZ_division_ring", "target": "divisome_pbps"}, {"description": "FtsZ treadmilling distributes the PG synthases that form the septum.", "evidence": [{"notes": "The FtsZ polymers undergo treadmilling around the Z-ring to distribute the PG synthases forming the septum", "reference": "DOI:10.1042/bsr20221664"}], "id": "edge-9", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "ftsZ_treadmilling", "target": "septal_peptidoglycan_synthesis"}, {"description": "FtsW flips lipid II to the outer septal face for PG synthesis.", "evidence": [{"notes": "lipid II is flipped to the outside by the septally localized flippase FtsW", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-10", "is_orphan": false, "predicate": "transports", "predicate_id": "METPO:2007812", "source": "ftsW_flippase", "target": "lipid_ii"}, {"description": "Lipid II serves as the PBP substrate for septal peptidoglycan synthesis.", "evidence": [{"notes": "PG synthesis uses lipid II as the PBP substrate", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-11", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "lipid_ii", "target": "septal_peptidoglycan_synthesis"}], "evidence_rows": [{"description": "The FtsZ division ring organizes septal wall synthesis.", "edge_id": "edge-1", "evidence": [{"notes": "Supports FtsZ-PBP cooperation in division-associated shape generation.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "FtsZ collaborates with penicillin binding proteins"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "FtsZ division ring", "target": "septal peptidoglycan synthesis"}, {"description": "Septal synthesis builds and remodels the spherical cell wall.", "edge_id": "edge-2", "evidence": [{"notes": "Supports septal-only PG synthesis in spherical cocci.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "synthesize peptidoglycan only at the division septum"}], "predicate": "builds", "predicate_id": "biolink:produces", "source": "septal peptidoglycan synthesis", "target": "peptidoglycan cell wall"}, {"description": "Reduced lateral elongation helps preserve a sphere rather than a rod.", "edge_id": "edge-3", "evidence": [{"notes": "Broad review supports different growth mechanisms for coccoid versus rod-shaped bacteria.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "mechanisms controlling growth and division of coccoid bacteria"}], "predicate": "reduced in", "predicate_id": null, "source": "lateral cell-wall elongation", "target": "sphere shaped"}, {"description": "Peptidoglycan wall geometry maintains the spherical shape.", "edge_id": "edge-4", "evidence": [{"notes": "Supports the cell wall as central to bacterial shape maintenance.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "primary role in maintaining cell shape"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "peptidoglycan cell wall", "target": "sphere shaped"}, {"description": "Septal-only peptidoglycan synthesis in cocci produces spherical morphology.", "edge_id": "edge-5", "evidence": [{"notes": "spherical cocci synthesize peptidoglycan only at the division septum", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "septal peptidoglycan synthesis", "target": "sphere shaped"}, {"description": "Loss of the MreB cytoskeleton removes the elongation capacity that lengthens rods.", "edge_id": "edge-6", "evidence": [{"notes": "loss of the MreB cytoskeleton is the main factor that prevents cocci from elongating into rods", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "causally upstream of", "predicate_id": null, "source": "MreB-mediated elongation machinery", "target": "elongation capacity"}, {"description": "Loss of elongation capacity prevents cocci from elongating into rods, favoring a sphere.", "edge_id": "edge-7", "evidence": [{"notes": "prevents cocci from elongating into rods", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "reduced in", "predicate_id": null, "source": "elongation capacity", "target": "sphere shaped"}, {"description": "FtsZ assembly into a mid-cell Z ring recruits PBPs and divisome components.", "edge_id": "edge-8", "evidence": [{"notes": "cell division is initiated by FtsZ assembly into a mid-cell Z ring that recruits PBPs and divisome components", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "recruits", "predicate_id": null, "source": "FtsZ division ring", "target": "divisome and PBPs"}, {"description": "FtsZ treadmilling distributes the PG synthases that form the septum.", "edge_id": "edge-9", "evidence": [{"notes": "The FtsZ polymers undergo treadmilling around the Z-ring to distribute the PG synthases forming the septum", "reference": "DOI:10.1042/bsr20221664"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "FtsZ treadmilling", "target": "septal peptidoglycan synthesis"}, {"description": "FtsW flips lipid II to the outer septal face for PG synthesis.", "edge_id": "edge-10", "evidence": [{"notes": "lipid II is flipped to the outside by the septally localized flippase FtsW", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "transports", "predicate_id": "METPO:2007812", "source": "FtsW lipid II flippase", "target": "lipid II"}, {"description": "Lipid II serves as the PBP substrate for septal peptidoglycan synthesis.", "edge_id": "edge-11", "evidence": [{"notes": "PG synthesis uses lipid II as the PBP substrate", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "lipid II", "target": "septal peptidoglycan synthesis"}], "graph_id": "sphere_shaped_septal_peptidoglycan", "issues": [], "nodes": [{"color": "#f3e8ff", "description": "Division machinery and penicillin-binding proteins recruited to mid-cell.", "grounding": null, "id": "divisome_pbps", "is_orphan": false, "label": "divisome and PBPs", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3f4f6", "description": "Capacity of a cell to elongate into a rod via sidewall growth.", "grounding": null, "id": "elongation_capacity", "is_orphan": false, "label": "elongation capacity", "node_type": "CAPACITY", "xrefs": []}, {"color": "#f3e8ff", "description": "Septally localized flippase that translocates lipid II across the membrane.", "grounding": null, "id": "ftsW_flippase", "is_orphan": false, "label": "FtsW lipid II flippase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3e8ff", "description": "Tubulin-like division scaffold.", "grounding": null, "id": "ftsZ_division_ring", "is_orphan": false, "label": "FtsZ division ring", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Treadmilling of FtsZ polymers distributing PG synthases around the Z-ring.", "grounding": null, "id": "ftsZ_treadmilling", "is_orphan": false, "label": "FtsZ treadmilling", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Sidewall growth mode that lengthens rods.", "grounding": null, "id": "lateral_elongation", "is_orphan": false, "label": "lateral cell-wall elongation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Membrane-bound peptidoglycan precursor and PBP substrate.", "grounding": "CHEBI:27692", "id": "lipid_ii", "is_orphan": false, "label": "lipid II", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Actin-like MreB cytoskeleton directing lateral (rod) elongation.", "grounding": null, "id": "mreB_elongation_machinery", "is_orphan": false, "label": "MreB-mediated elongation machinery", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ede9fe", "description": "Cell-wall polymer network maintaining bacterial shape.", "grounding": "GO:0009274", "id": "peptidoglycan_cell_wall", "is_orphan": false, "label": "peptidoglycan cell wall", "node_type": "CELLULAR_LOCALIZATION", "xrefs": []}, {"color": "#ecfccb", "description": "Cell-wall synthesis localized to the division septum.", "grounding": null, "id": "septal_peptidoglycan_synthesis", "is_orphan": false, "label": "septal peptidoglycan synthesis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Spherical bacterial cell morphology.", "grounding": "METPO:1000683", "id": "sphere_shaped_trait", "is_orphan": false, "label": "sphere shaped", "node_type": "TRAIT", "xrefs": []}], "title": "Spherical shape septal peptidoglycan mechanism"}]; + var graphs = [{"description": "Evidence-backed causal sketch linking spherical cell shape to FtsZ-associated septal synthesis, peptidoglycan remodeling, and limited lateral elongation.", "edges": [{"description": "The FtsZ division ring organizes septal wall synthesis.", "evidence": [{"notes": "Supports FtsZ-PBP cooperation in division-associated shape generation.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "FtsZ collaborates with penicillin binding proteins"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "ftsZ_division_ring", "target": "septal_peptidoglycan_synthesis"}, {"description": "Septal synthesis builds and remodels the spherical cell wall.", "evidence": [{"notes": "Supports septal-only PG synthesis in spherical cocci.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "synthesize peptidoglycan only at the division septum"}], "id": "edge-2", "is_orphan": false, "predicate": "builds", "predicate_id": "biolink:produces", "source": "septal_peptidoglycan_synthesis", "target": "peptidoglycan_cell_wall"}, {"description": "Reduced lateral elongation helps preserve a sphere rather than a rod.", "evidence": [{"notes": "Broad review supports different growth mechanisms for coccoid versus rod-shaped bacteria.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "mechanisms controlling growth and division of coccoid bacteria"}], "id": "edge-3", "is_orphan": false, "predicate": "reduced in", "predicate_id": null, "source": "lateral_elongation", "target": "sphere_shaped_trait"}, {"description": "Peptidoglycan wall geometry maintains the spherical shape.", "evidence": [{"notes": "Supports the cell wall as central to bacterial shape maintenance.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "primary role in maintaining cell shape"}], "id": "edge-4", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "peptidoglycan_cell_wall", "target": "sphere_shaped_trait"}, {"description": "Septal-only peptidoglycan synthesis in cocci produces spherical morphology.", "evidence": [{"notes": "spherical cocci synthesize peptidoglycan only at the division septum", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-5", "is_orphan": false, "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "septal_peptidoglycan_synthesis", "target": "sphere_shaped_trait"}, {"description": "Loss of the MreB cytoskeleton removes the elongation capacity that lengthens rods.", "evidence": [{"notes": "loss of the MreB cytoskeleton is the main factor that prevents cocci from elongating into rods", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-6", "is_orphan": false, "predicate": "causally upstream of", "predicate_id": null, "source": "mreB_elongation_machinery", "target": "lateral_elongation"}, {"description": "FtsZ assembly into a mid-cell Z ring recruits PBPs and divisome components.", "evidence": [{"notes": "cell division is initiated by FtsZ assembly into a mid-cell Z ring that recruits PBPs and divisome components", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-7", "is_orphan": false, "predicate": "recruits", "predicate_id": null, "source": "ftsZ_division_ring", "target": "divisome_pbps"}, {"description": "FtsZ treadmilling distributes the PG synthases that form the septum.", "evidence": [{"notes": "The FtsZ polymers undergo treadmilling around the Z-ring to distribute the PG synthases forming the septum", "reference": "DOI:10.1042/bsr20221664"}], "id": "edge-8", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "ftsZ_treadmilling", "target": "septal_peptidoglycan_synthesis"}, {"description": "FtsW flips lipid II to the outer septal face for PG synthesis.", "evidence": [{"notes": "lipid II is flipped to the outside by the septally localized flippase FtsW", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-9", "is_orphan": false, "predicate": "transports", "predicate_id": "METPO:2007812", "source": "ftsW_flippase", "target": "lipid_ii"}, {"description": "Lipid II serves as the PBP substrate for septal peptidoglycan synthesis.", "evidence": [{"notes": "PG synthesis uses lipid II as the PBP substrate", "reference": "DOI:10.1038/nrmicro3088"}], "id": "edge-10", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "lipid_ii", "target": "septal_peptidoglycan_synthesis"}], "evidence_rows": [{"description": "The FtsZ division ring organizes septal wall synthesis.", "edge_id": "edge-1", "evidence": [{"notes": "Supports FtsZ-PBP cooperation in division-associated shape generation.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "FtsZ collaborates with penicillin binding proteins"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "FtsZ division ring", "target": "septal peptidoglycan synthesis"}, {"description": "Septal synthesis builds and remodels the spherical cell wall.", "edge_id": "edge-2", "evidence": [{"notes": "Supports septal-only PG synthesis in spherical cocci.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "synthesize peptidoglycan only at the division septum"}], "predicate": "builds", "predicate_id": "biolink:produces", "source": "septal peptidoglycan synthesis", "target": "peptidoglycan cell wall"}, {"description": "Reduced lateral elongation helps preserve a sphere rather than a rod.", "edge_id": "edge-3", "evidence": [{"notes": "Broad review supports different growth mechanisms for coccoid versus rod-shaped bacteria.", "reference": "DOI:10.1038/nrmicro3088", "snippet": "mechanisms controlling growth and division of coccoid bacteria"}], "predicate": "reduced in", "predicate_id": null, "source": "lateral cell-wall elongation", "target": "sphere shaped"}, {"description": "Peptidoglycan wall geometry maintains the spherical shape.", "edge_id": "edge-4", "evidence": [{"notes": "Supports the cell wall as central to bacterial shape maintenance.", "reference": "DOI:10.1038/nrmicro1205", "snippet": "primary role in maintaining cell shape"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "peptidoglycan cell wall", "target": "sphere shaped"}, {"description": "Septal-only peptidoglycan synthesis in cocci produces spherical morphology.", "edge_id": "edge-5", "evidence": [{"notes": "spherical cocci synthesize peptidoglycan only at the division septum", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "contributes to", "predicate_id": "RO:0002326", "source": "septal peptidoglycan synthesis", "target": "sphere shaped"}, {"description": "Loss of the MreB cytoskeleton removes the elongation capacity that lengthens rods.", "edge_id": "edge-6", "evidence": [{"notes": "loss of the MreB cytoskeleton is the main factor that prevents cocci from elongating into rods", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "causally upstream of", "predicate_id": null, "source": "MreB-mediated elongation machinery", "target": "lateral cell-wall elongation"}, {"description": "FtsZ assembly into a mid-cell Z ring recruits PBPs and divisome components.", "edge_id": "edge-7", "evidence": [{"notes": "cell division is initiated by FtsZ assembly into a mid-cell Z ring that recruits PBPs and divisome components", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "recruits", "predicate_id": null, "source": "FtsZ division ring", "target": "divisome and PBPs"}, {"description": "FtsZ treadmilling distributes the PG synthases that form the septum.", "edge_id": "edge-8", "evidence": [{"notes": "The FtsZ polymers undergo treadmilling around the Z-ring to distribute the PG synthases forming the septum", "reference": "DOI:10.1042/bsr20221664"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "FtsZ treadmilling", "target": "septal peptidoglycan synthesis"}, {"description": "FtsW flips lipid II to the outer septal face for PG synthesis.", "edge_id": "edge-9", "evidence": [{"notes": "lipid II is flipped to the outside by the septally localized flippase FtsW", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "transports", "predicate_id": "METPO:2007812", "source": "FtsW lipid II flippase", "target": "lipid II"}, {"description": "Lipid II serves as the PBP substrate for septal peptidoglycan synthesis.", "edge_id": "edge-10", "evidence": [{"notes": "PG synthesis uses lipid II as the PBP substrate", "reference": "DOI:10.1038/nrmicro3088"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "lipid II", "target": "septal peptidoglycan synthesis"}], "graph_id": "sphere_shaped_septal_peptidoglycan", "issues": [], "nodes": [{"color": "#f3e8ff", "description": "Division machinery and penicillin-binding proteins recruited to mid-cell.", "grounding": null, "id": "divisome_pbps", "is_orphan": false, "label": "divisome and PBPs", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3e8ff", "description": "Septally localized flippase that translocates lipid II across the membrane.", "grounding": null, "id": "ftsW_flippase", "is_orphan": false, "label": "FtsW lipid II flippase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#f3e8ff", "description": "Tubulin-like division scaffold.", "grounding": null, "id": "ftsZ_division_ring", "is_orphan": false, "label": "FtsZ division ring", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Treadmilling of FtsZ polymers distributing PG synthases around the Z-ring.", "grounding": null, "id": "ftsZ_treadmilling", "is_orphan": false, "label": "FtsZ treadmilling", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#ecfccb", "description": "Sidewall growth mode that lengthens rods.", "grounding": null, "id": "lateral_elongation", "is_orphan": false, "label": "lateral cell-wall elongation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Membrane-bound peptidoglycan precursor and PBP substrate.", "grounding": "CHEBI:27692", "id": "lipid_ii", "is_orphan": false, "label": "lipid II", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Actin-like MreB cytoskeleton directing lateral (rod) elongation.", "grounding": null, "id": "mreB_elongation_machinery", "is_orphan": false, "label": "MreB-mediated elongation machinery", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ede9fe", "description": "Cell-wall polymer network maintaining bacterial shape.", "grounding": "GO:0009274", "id": "peptidoglycan_cell_wall", "is_orphan": false, "label": "peptidoglycan cell wall", "node_type": "CELLULAR_LOCALIZATION", "xrefs": []}, {"color": "#ecfccb", "description": "Cell-wall synthesis localized to the division septum.", "grounding": null, "id": "septal_peptidoglycan_synthesis", "is_orphan": false, "label": "septal peptidoglycan synthesis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#dbeafe", "description": "Spherical bacterial cell morphology.", "grounding": "METPO:1000683", "id": "sphere_shaped_trait", "is_orphan": false, "label": "sphere shaped", "node_type": "TRAIT", "xrefs": []}], "title": "Spherical shape septal peptidoglycan mechanism"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -900,7 +889,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-07 18:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/physiology/catalase_activity.html b/pages/traits/physiology/catalase_activity.html index fcf57c4a..649737d9 100644 --- a/pages/traits/physiology/catalase_activity.html +++ b/pages/traits/physiology/catalase_activity.html @@ -518,6 +518,12 @@

    Curation history

    Re-grounded 2 causal edge(s) off microbe-domain METPO predicates (2 to has output), issue 301. The previous predicates are transitively rdfs:subPropertyOf METPO:2000001, whose rdfs:domain is METPO:1000525 (microbe), so a causal-graph subject entailed that the subject IS a microbe; CausalNodeTypeEnum has no organism member, so no such edge could ever satisfy the domain. Edge directions are unchanged - this pass only relabels and re-grounds. RO:0002234 (has output) is used where the subject is an activity, since biolink gives it the domain 'biological process or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them.

    +
  • + · + UNGROUND_CAUSAL_NODE · claude +

    Dropped the grounding GO:0004096 from node catalase. Issue 352. GO:0004096 is 'catalase ACTIVITY' -- a molecular function, which is what catalase_function is. A protein is not its activity, and the graph already says so correctly: catalase -enables-> catalase_function. Dropped from the protein, kept on the function.

    +
  • +
    @@ -875,7 +881,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "Evidence-backed causal sketch linking catalase to dismutation of hydrogen peroxide into water and molecular oxygen.", "edges": [{"description": "Catalase carries out the catalase molecular function.", "evidence": [{"notes": "Chelikani et al. characterize catalases as the enzymes performing this dismutation.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "catalase", "target": "catalase_function"}, {"description": "The catalase reaction consumes hydrogen peroxide.", "evidence": [{"notes": "Imlay supports catalase as a primary hydrogen-peroxide scavenging defense.", "reference": "DOI:10.1038/nrmicro3032"}], "id": "edge-2", "is_orphan": false, "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "catalase_function", "target": "hydrogen_peroxide"}, {"description": "The catalase reaction produces molecular oxygen.", "evidence": [{"notes": "Catalase dismutation yields O2 (2 H2O2 to O2 + 2 H2O).", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-3", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase_function", "target": "molecular_oxygen"}, {"description": "The catalase reaction produces water.", "evidence": [{"notes": "Catalase dismutation yields water.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-4", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase_function", "target": "water"}, {"description": "Production of catalase confers the catalase-activity phenotype.", "evidence": [{"notes": "Supports catalase possession as the basis of the catalase-activity phenotype.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-5", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "catalase", "target": "catalase_activity_trait"}, {"description": "Catalase activity rapidly decomposes hydrogen peroxide into water and molecular oxygen.", "evidence": [{"notes": "Catalase rapidly decomposes hydrogen peroxide into water and molecular oxygen (canonical enzymology).", "reference": "DOI:10.3390/biom14060697"}], "id": "edge-6", "is_orphan": false, "predicate": "decomposes", "predicate_id": null, "source": "catalase_activity_trait", "target": "hydrogen_peroxide"}, {"description": "Hydrogen peroxide activates the OxyR peroxide-sensing regulator.", "evidence": [{"notes": "An intracellular H2O2 concentration of ~200 nM is sufficient to drive OxyR into a disulfide-bonded (active) form.", "reference": "DOI:10.1038/nrmicro3032"}], "id": "edge-7", "is_orphan": false, "predicate": "activates", "predicate_id": "RO:0002213", "source": "hydrogen_peroxide", "target": "oxyr_regulator"}, {"description": "High hydrogen peroxide concentrations favor scavenging by catalases, which turn over much faster than alkyl hydroperoxide reductase.", "evidence": [{"notes": "Organisms rely on catalases when H2O2 levels are high; catalases turn over much more quickly than Ahp. Likely general across aerobes/facultative anaerobes.", "reference": "DOI:10.1038/nrmicro3032"}], "id": "edge-8", "is_orphan": false, "predicate": "favors scavenging by", "predicate_id": null, "source": "hydrogen_peroxide", "target": "catalase_activity_trait"}, {"description": "OxyR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "id": "edge-9", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "oxyr_regulator", "target": "peroxide_defense_systems"}, {"description": "PerR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "id": "edge-10", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "perr_regulator", "target": "peroxide_defense_systems"}, {"description": "Heme biosynthesis is required for catalase activation; impaired heme synthesis delays peroxide degradation.", "evidence": [{"notes": "Ferrochelatase (hemH) function is required for timely induction of catalase (KatG) activity; loss delays H2O2 degradation and growth.", "reference": "DOI:10.1111/mmi.12967"}], "id": "edge-11", "is_orphan": false, "predicate": "required for", "predicate_id": null, "source": "heme_biosynthesis", "target": "catalase"}], "evidence_rows": [{"description": "Catalase carries out the catalase molecular function.", "edge_id": "edge-1", "evidence": [{"notes": "Chelikani et al. characterize catalases as the enzymes performing this dismutation.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "catalase", "target": "catalase activity"}, {"description": "The catalase reaction consumes hydrogen peroxide.", "edge_id": "edge-2", "evidence": [{"notes": "Imlay supports catalase as a primary hydrogen-peroxide scavenging defense.", "reference": "DOI:10.1038/nrmicro3032"}], "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "catalase activity", "target": "hydrogen peroxide"}, {"description": "The catalase reaction produces molecular oxygen.", "edge_id": "edge-3", "evidence": [{"notes": "Catalase dismutation yields O2 (2 H2O2 to O2 + 2 H2O).", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase activity", "target": "molecular oxygen"}, {"description": "The catalase reaction produces water.", "edge_id": "edge-4", "evidence": [{"notes": "Catalase dismutation yields water.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase activity", "target": "water"}, {"description": "Production of catalase confers the catalase-activity phenotype.", "edge_id": "edge-5", "evidence": [{"notes": "Supports catalase possession as the basis of the catalase-activity phenotype.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "catalase", "target": "catalase activity"}, {"description": "Catalase activity rapidly decomposes hydrogen peroxide into water and molecular oxygen.", "edge_id": "edge-6", "evidence": [{"notes": "Catalase rapidly decomposes hydrogen peroxide into water and molecular oxygen (canonical enzymology).", "reference": "DOI:10.3390/biom14060697"}], "predicate": "decomposes", "predicate_id": null, "source": "catalase activity", "target": "hydrogen peroxide"}, {"description": "Hydrogen peroxide activates the OxyR peroxide-sensing regulator.", "edge_id": "edge-7", "evidence": [{"notes": "An intracellular H2O2 concentration of ~200 nM is sufficient to drive OxyR into a disulfide-bonded (active) form.", "reference": "DOI:10.1038/nrmicro3032"}], "predicate": "activates", "predicate_id": "RO:0002213", "source": "hydrogen peroxide", "target": "OxyR"}, {"description": "High hydrogen peroxide concentrations favor scavenging by catalases, which turn over much faster than alkyl hydroperoxide reductase.", "edge_id": "edge-8", "evidence": [{"notes": "Organisms rely on catalases when H2O2 levels are high; catalases turn over much more quickly than Ahp. Likely general across aerobes/facultative anaerobes.", "reference": "DOI:10.1038/nrmicro3032"}], "predicate": "favors scavenging by", "predicate_id": null, "source": "hydrogen peroxide", "target": "catalase activity"}, {"description": "OxyR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "edge_id": "edge-9", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "OxyR", "target": "peroxide defense systems"}, {"description": "PerR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "edge_id": "edge-10", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "PerR", "target": "peroxide defense systems"}, {"description": "Heme biosynthesis is required for catalase activation; impaired heme synthesis delays peroxide degradation.", "edge_id": "edge-11", "evidence": [{"notes": "Ferrochelatase (hemH) function is required for timely induction of catalase (KatG) activity; loss delays H2O2 degradation and growth.", "reference": "DOI:10.1111/mmi.12967"}], "predicate": "required for", "predicate_id": null, "source": "heme biosynthesis", "target": "catalase"}], "graph_id": "catalase_activity_h2o2_detoxification", "issues": [], "nodes": [{"color": "#f3e8ff", "description": "Heme enzyme that dismutates hydrogen peroxide.", "grounding": "GO:0004096", "id": "catalase", "is_orphan": false, "label": "catalase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#dbeafe", "description": "Capacity to decompose hydrogen peroxide via catalase.", "grounding": "traitmech:000075", "id": "catalase_activity_trait", "is_orphan": false, "label": "catalase activity", "node_type": "TRAIT", "xrefs": []}, {"color": "#cffafe", "description": "Catalysis of 2 H2O2 = O2 + 2 H2O.", "grounding": "GO:0004096", "id": "catalase_function", "is_orphan": false, "label": "catalase activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Synthesis of the heme cofactor required for catalase maturation and activity.", "grounding": "GO:0006783", "id": "heme_biosynthesis", "is_orphan": false, "label": "heme biosynthesis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Reactive oxygen species detoxified by catalase.", "grounding": "CHEBI:16240", "id": "hydrogen_peroxide", "is_orphan": false, "label": "hydrogen peroxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#fef3c7", "description": "Product of hydrogen peroxide dismutation.", "grounding": "CHEBI:15379", "id": "molecular_oxygen", "is_orphan": false, "label": "molecular oxygen", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Peroxide-sensing transcriptional regulator activated by hydrogen peroxide.", "grounding": null, "id": "oxyr_regulator", "is_orphan": false, "label": "OxyR", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Antioxidant defense systems (e.g. catalases, peroxidases) that detoxify hydrogen peroxide.", "grounding": null, "id": "peroxide_defense_systems", "is_orphan": false, "label": "peroxide defense systems", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Fe-dependent peroxide-sensing transcriptional repressor inactivated by hydrogen peroxide.", "grounding": "UniProtKB:A0A097ASJ8", "id": "perr_regulator", "is_orphan": false, "label": "PerR", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#fef3c7", "description": "Product of hydrogen peroxide dismutation.", "grounding": "CHEBI:15377", "id": "water", "is_orphan": false, "label": "water", "node_type": "CHEMICAL", "xrefs": []}], "title": "Catalase hydrogen-peroxide detoxification"}]; + var graphs = [{"description": "Evidence-backed causal sketch linking catalase to dismutation of hydrogen peroxide into water and molecular oxygen.", "edges": [{"description": "Catalase carries out the catalase molecular function.", "evidence": [{"notes": "Chelikani et al. characterize catalases as the enzymes performing this dismutation.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "catalase", "target": "catalase_function"}, {"description": "The catalase reaction consumes hydrogen peroxide.", "evidence": [{"notes": "Imlay supports catalase as a primary hydrogen-peroxide scavenging defense.", "reference": "DOI:10.1038/nrmicro3032"}], "id": "edge-2", "is_orphan": false, "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "catalase_function", "target": "hydrogen_peroxide"}, {"description": "The catalase reaction produces molecular oxygen.", "evidence": [{"notes": "Catalase dismutation yields O2 (2 H2O2 to O2 + 2 H2O).", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-3", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase_function", "target": "molecular_oxygen"}, {"description": "The catalase reaction produces water.", "evidence": [{"notes": "Catalase dismutation yields water.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-4", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase_function", "target": "water"}, {"description": "Production of catalase confers the catalase-activity phenotype.", "evidence": [{"notes": "Supports catalase possession as the basis of the catalase-activity phenotype.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "id": "edge-5", "is_orphan": false, "predicate": "confers", "predicate_id": "METPO:2007700", "source": "catalase", "target": "catalase_activity_trait"}, {"description": "Catalase activity rapidly decomposes hydrogen peroxide into water and molecular oxygen.", "evidence": [{"notes": "Catalase rapidly decomposes hydrogen peroxide into water and molecular oxygen (canonical enzymology).", "reference": "DOI:10.3390/biom14060697"}], "id": "edge-6", "is_orphan": false, "predicate": "decomposes", "predicate_id": null, "source": "catalase_activity_trait", "target": "hydrogen_peroxide"}, {"description": "Hydrogen peroxide activates the OxyR peroxide-sensing regulator.", "evidence": [{"notes": "An intracellular H2O2 concentration of ~200 nM is sufficient to drive OxyR into a disulfide-bonded (active) form.", "reference": "DOI:10.1038/nrmicro3032"}], "id": "edge-7", "is_orphan": false, "predicate": "activates", "predicate_id": "RO:0002213", "source": "hydrogen_peroxide", "target": "oxyr_regulator"}, {"description": "High hydrogen peroxide concentrations favor scavenging by catalases, which turn over much faster than alkyl hydroperoxide reductase.", "evidence": [{"notes": "Organisms rely on catalases when H2O2 levels are high; catalases turn over much more quickly than Ahp. Likely general across aerobes/facultative anaerobes.", "reference": "DOI:10.1038/nrmicro3032"}], "id": "edge-8", "is_orphan": false, "predicate": "favors scavenging by", "predicate_id": null, "source": "hydrogen_peroxide", "target": "catalase_activity_trait"}, {"description": "OxyR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "id": "edge-9", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "oxyr_regulator", "target": "peroxide_defense_systems"}, {"description": "PerR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "id": "edge-10", "is_orphan": false, "predicate": "regulates", "predicate_id": "RO:0002211", "source": "perr_regulator", "target": "peroxide_defense_systems"}, {"description": "Heme biosynthesis is required for catalase activation; impaired heme synthesis delays peroxide degradation.", "evidence": [{"notes": "Ferrochelatase (hemH) function is required for timely induction of catalase (KatG) activity; loss delays H2O2 degradation and growth.", "reference": "DOI:10.1111/mmi.12967"}], "id": "edge-11", "is_orphan": false, "predicate": "required for", "predicate_id": null, "source": "heme_biosynthesis", "target": "catalase"}], "evidence_rows": [{"description": "Catalase carries out the catalase molecular function.", "edge_id": "edge-1", "evidence": [{"notes": "Chelikani et al. characterize catalases as the enzymes performing this dismutation.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "catalase", "target": "catalase activity"}, {"description": "The catalase reaction consumes hydrogen peroxide.", "edge_id": "edge-2", "evidence": [{"notes": "Imlay supports catalase as a primary hydrogen-peroxide scavenging defense.", "reference": "DOI:10.1038/nrmicro3032"}], "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "catalase activity", "target": "hydrogen peroxide"}, {"description": "The catalase reaction produces molecular oxygen.", "edge_id": "edge-3", "evidence": [{"notes": "Catalase dismutation yields O2 (2 H2O2 to O2 + 2 H2O).", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase activity", "target": "molecular oxygen"}, {"description": "The catalase reaction produces water.", "edge_id": "edge-4", "evidence": [{"notes": "Catalase dismutation yields water.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "catalase activity", "target": "water"}, {"description": "Production of catalase confers the catalase-activity phenotype.", "edge_id": "edge-5", "evidence": [{"notes": "Supports catalase possession as the basis of the catalase-activity phenotype.", "reference": "DOI:10.1007/s00018-003-3206-5"}], "predicate": "confers", "predicate_id": "METPO:2007700", "source": "catalase", "target": "catalase activity"}, {"description": "Catalase activity rapidly decomposes hydrogen peroxide into water and molecular oxygen.", "edge_id": "edge-6", "evidence": [{"notes": "Catalase rapidly decomposes hydrogen peroxide into water and molecular oxygen (canonical enzymology).", "reference": "DOI:10.3390/biom14060697"}], "predicate": "decomposes", "predicate_id": null, "source": "catalase activity", "target": "hydrogen peroxide"}, {"description": "Hydrogen peroxide activates the OxyR peroxide-sensing regulator.", "edge_id": "edge-7", "evidence": [{"notes": "An intracellular H2O2 concentration of ~200 nM is sufficient to drive OxyR into a disulfide-bonded (active) form.", "reference": "DOI:10.1038/nrmicro3032"}], "predicate": "activates", "predicate_id": "RO:0002213", "source": "hydrogen peroxide", "target": "OxyR"}, {"description": "High hydrogen peroxide concentrations favor scavenging by catalases, which turn over much faster than alkyl hydroperoxide reductase.", "edge_id": "edge-8", "evidence": [{"notes": "Organisms rely on catalases when H2O2 levels are high; catalases turn over much more quickly than Ahp. Likely general across aerobes/facultative anaerobes.", "reference": "DOI:10.1038/nrmicro3032"}], "predicate": "favors scavenging by", "predicate_id": null, "source": "hydrogen peroxide", "target": "catalase activity"}, {"description": "OxyR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "edge_id": "edge-9", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "OxyR", "target": "peroxide defense systems"}, {"description": "PerR regulates peroxide defense systems; most bacteria sense H2O2 via OxyR or PerR.", "edge_id": "edge-10", "evidence": [{"notes": "Most bacteria sense H2O2 via OxyR or PerR transcription factors that control peroxide defense systems.", "reference": "DOI:10.3389/fimmu.2021.667343"}], "predicate": "regulates", "predicate_id": "RO:0002211", "source": "PerR", "target": "peroxide defense systems"}, {"description": "Heme biosynthesis is required for catalase activation; impaired heme synthesis delays peroxide degradation.", "edge_id": "edge-11", "evidence": [{"notes": "Ferrochelatase (hemH) function is required for timely induction of catalase (KatG) activity; loss delays H2O2 degradation and growth.", "reference": "DOI:10.1111/mmi.12967"}], "predicate": "required for", "predicate_id": null, "source": "heme biosynthesis", "target": "catalase"}], "graph_id": "catalase_activity_h2o2_detoxification", "issues": [], "nodes": [{"color": "#f3e8ff", "description": "Heme enzyme that dismutates hydrogen peroxide.", "grounding": null, "id": "catalase", "is_orphan": false, "label": "catalase", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#dbeafe", "description": "Capacity to decompose hydrogen peroxide via catalase.", "grounding": "traitmech:000075", "id": "catalase_activity_trait", "is_orphan": false, "label": "catalase activity", "node_type": "TRAIT", "xrefs": []}, {"color": "#cffafe", "description": "Catalysis of 2 H2O2 = O2 + 2 H2O.", "grounding": "GO:0004096", "id": "catalase_function", "is_orphan": false, "label": "catalase activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#ecfccb", "description": "Synthesis of the heme cofactor required for catalase maturation and activity.", "grounding": "GO:0006783", "id": "heme_biosynthesis", "is_orphan": false, "label": "heme biosynthesis", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "Reactive oxygen species detoxified by catalase.", "grounding": "CHEBI:16240", "id": "hydrogen_peroxide", "is_orphan": false, "label": "hydrogen peroxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#fef3c7", "description": "Product of hydrogen peroxide dismutation.", "grounding": "CHEBI:15379", "id": "molecular_oxygen", "is_orphan": false, "label": "molecular oxygen", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Peroxide-sensing transcriptional regulator activated by hydrogen peroxide.", "grounding": null, "id": "oxyr_regulator", "is_orphan": false, "label": "OxyR", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#ecfccb", "description": "Antioxidant defense systems (e.g. catalases, peroxidases) that detoxify hydrogen peroxide.", "grounding": null, "id": "peroxide_defense_systems", "is_orphan": false, "label": "peroxide defense systems", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#f3e8ff", "description": "Fe-dependent peroxide-sensing transcriptional repressor inactivated by hydrogen peroxide.", "grounding": "UniProtKB:A0A097ASJ8", "id": "perr_regulator", "is_orphan": false, "label": "PerR", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#fef3c7", "description": "Product of hydrogen peroxide dismutation.", "grounding": "CHEBI:15377", "id": "water", "is_orphan": false, "label": "water", "node_type": "CHEMICAL", "xrefs": []}], "title": "Catalase hydrogen-peroxide detoxification"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -898,7 +904,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 01:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/traits/physiology/urease_activity.html b/pages/traits/physiology/urease_activity.html index 335689ff..f158988c 100644 --- a/pages/traits/physiology/urease_activity.html +++ b/pages/traits/physiology/urease_activity.html @@ -501,6 +501,12 @@

    Curation history

    Re-grounded 3 causal edge(s) off microbe-domain METPO predicates (3 to has output), issue 301. The previous predicates are transitively rdfs:subPropertyOf METPO:2000001, whose rdfs:domain is METPO:1000525 (microbe), so a causal-graph subject entailed that the subject IS a microbe; CausalNodeTypeEnum has no organism member, so no such edge could ever satisfy the domain. Edge directions are unchanged - this pass only relabels and re-grounds. RO:0002234 (has output) is used where the subject is an activity, since biolink gives it the domain 'biological process or activity'; the METPO replacements are proposed in proposals/metpo_traitmech_v8 and v9 and are placeholder ids until METPO mints them.

    +
  • + · + UNGROUND_CAUSAL_NODE · claude +

    Dropped the grounding GO:0009039 from node urease. Issue 352. GO:0009039 is 'urease ACTIVITY'. Same as catalase: kept on urease_function, dropped from the protein that enables it.

    +
  • +
    @@ -858,7 +864,7 @@

    kg-microbe

    } (function() { - var graphs = [{"description": "Evidence-backed causal sketch linking urease to hydrolysis of urea into ammonia, the basis of the urease test.", "edges": [{"description": "Urease carries out urea hydrolysis.", "evidence": [{"notes": "Mobley, Island \u0026 Hausinger review microbial ureases.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "urease", "target": "urease_function"}, {"description": "The urease reaction consumes urea.", "evidence": [{"notes": "Supports urea as the hydrolysis substrate.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "id": "edge-2", "is_orphan": false, "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "urease_function", "target": "urea"}, {"description": "Urea hydrolysis produces ammonia.", "evidence": [{"notes": "Mobley \u0026 Hausinger support ammonia release from urea hydrolysis.", "reference": "DOI:10.1128/mr.53.1.85-108.1989"}], "id": "edge-3", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease_function", "target": "ammonia"}, {"description": "Urease enzymatic activity manifests as the observable urease-activity phenotype scored by the diagnostic urease test.", "evidence": [{"notes": "Urease activity (urea-to-ammonia hydrolysis raising local pH) is the assayable phenotype used to score urease-positive organisms.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "id": "edge-4", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "urease_function", "target": "urease_activity_trait"}, {"description": "Urea hydrolysis produces hydroxide, mechanistically explaining alkalinization.", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "id": "edge-5", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease_function", "target": "hydroxide"}, {"description": "Urea hydrolysis produces carbon dioxide.", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "id": "edge-6", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease_function", "target": "carbon_dioxide"}, {"description": "Urea hydrolysis (NH4+/OH- production) increases local pH, the basis of the urease test color change.", "evidence": [{"notes": "Urea hydrolysis produces NH4+ and OH-, causing a pH increase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-7", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "urease_function", "target": "ph_quality"}, {"description": "CO2 from urea hydrolysis is hydrated by carbonic anhydrase.", "evidence": [{"notes": "Hydration of CO2 to HCO3- by carbonic anhydrase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-8", "is_orphan": false, "predicate": "is substrate of", "predicate_id": null, "source": "carbon_dioxide", "target": "carbonic_anhydrase_function"}, {"description": "Carbonic anhydrase hydrates CO2, increasing bicarbonate.", "evidence": [{"notes": "Increase in [HCO3-] following the hydration of CO2 to HCO3- by CA.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-9", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "carbonic_anhydrase_function", "target": "bicarbonate"}, {"description": "CA-driven buffering enhances solubility trapping and affects the CaCO3 phase formed.", "evidence": [{"notes": "CA physiologically promotes buffering, which enhances solubility trapping and affects the phase of the CaCO3 mineral formed.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-10", "is_orphan": false, "predicate": "affects", "predicate_id": null, "source": "carbonic_anhydrase_function", "target": "calcium_carbonate_precipitation"}], "evidence_rows": [{"description": "Urease carries out urea hydrolysis.", "edge_id": "edge-1", "evidence": [{"notes": "Mobley, Island \u0026 Hausinger review microbial ureases.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "urease", "target": "urease activity"}, {"description": "The urease reaction consumes urea.", "edge_id": "edge-2", "evidence": [{"notes": "Supports urea as the hydrolysis substrate.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "urease activity", "target": "urea"}, {"description": "Urea hydrolysis produces ammonia.", "edge_id": "edge-3", "evidence": [{"notes": "Mobley \u0026 Hausinger support ammonia release from urea hydrolysis.", "reference": "DOI:10.1128/mr.53.1.85-108.1989"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease activity", "target": "ammonia"}, {"description": "Urease enzymatic activity manifests as the observable urease-activity phenotype scored by the diagnostic urease test.", "edge_id": "edge-4", "evidence": [{"notes": "Urease activity (urea-to-ammonia hydrolysis raising local pH) is the assayable phenotype used to score urease-positive organisms.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "urease activity", "target": "urease activity"}, {"description": "Urea hydrolysis produces hydroxide, mechanistically explaining alkalinization.", "edge_id": "edge-5", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease activity", "target": "hydroxide"}, {"description": "Urea hydrolysis produces carbon dioxide.", "edge_id": "edge-6", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease activity", "target": "carbon dioxide"}, {"description": "Urea hydrolysis (NH4+/OH- production) increases local pH, the basis of the urease test color change.", "edge_id": "edge-7", "evidence": [{"notes": "Urea hydrolysis produces NH4+ and OH-, causing a pH increase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "urease activity", "target": "pH"}, {"description": "CO2 from urea hydrolysis is hydrated by carbonic anhydrase.", "edge_id": "edge-8", "evidence": [{"notes": "Hydration of CO2 to HCO3- by carbonic anhydrase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "is substrate of", "predicate_id": null, "source": "carbon dioxide", "target": "carbonic anhydrase activity"}, {"description": "Carbonic anhydrase hydrates CO2, increasing bicarbonate.", "edge_id": "edge-9", "evidence": [{"notes": "Increase in [HCO3-] following the hydration of CO2 to HCO3- by CA.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "carbonic anhydrase activity", "target": "bicarbonate"}, {"description": "CA-driven buffering enhances solubility trapping and affects the CaCO3 phase formed.", "edge_id": "edge-10", "evidence": [{"notes": "CA physiologically promotes buffering, which enhances solubility trapping and affects the phase of the CaCO3 mineral formed.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "affects", "predicate_id": null, "source": "carbonic anhydrase activity", "target": "calcium carbonate precipitation"}], "graph_id": "urease_activity_urea_hydrolysis", "issues": [], "nodes": [{"color": "#fef3c7", "description": "Product that raises local pH.", "grounding": "CHEBI:16134", "id": "ammonia", "is_orphan": false, "label": "ammonia", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#fef3c7", "description": "Bicarbonate produced from CO2 hydration by carbonic anhydrase.", "grounding": "CHEBI:17544", "id": "bicarbonate", "is_orphan": false, "label": "bicarbonate", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Precipitation of CaCO3 mineral, influenced by buffering chemistry.", "grounding": null, "id": "calcium_carbonate_precipitation", "is_orphan": false, "label": "calcium carbonate precipitation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "CO2 product of urea hydrolysis; feeds carbonate chemistry.", "grounding": "CHEBI:16526", "id": "carbon_dioxide", "is_orphan": false, "label": "carbon dioxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#cffafe", "description": "Hydration of CO2 to bicarbonate.", "grounding": "GO:0004089", "id": "carbonic_anhydrase_function", "is_orphan": false, "label": "carbonic anhydrase activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#fef3c7", "description": "Hydroxide ion produced by urea hydrolysis, raising local pH.", "grounding": "CHEBI:16234", "id": "hydroxide", "is_orphan": false, "label": "hydroxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3f4f6", "description": "Local pH, increased by urease-driven alkalinization.", "grounding": null, "id": "ph_quality", "is_orphan": false, "label": "pH", "node_type": "QUALITY", "xrefs": []}, {"color": "#fef3c7", "description": "Substrate hydrolyzed by urease.", "grounding": "CHEBI:16199", "id": "urea", "is_orphan": false, "label": "urea", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Nickel metalloenzyme hydrolyzing urea.", "grounding": "GO:0009039", "id": "urease", "is_orphan": false, "label": "urease", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#dbeafe", "description": "Possession of urease.", "grounding": "traitmech:000077", "id": "urease_activity_trait", "is_orphan": false, "label": "urease activity", "node_type": "TRAIT", "xrefs": []}, {"color": "#cffafe", "description": "Hydrolysis of urea to ammonia and carbon dioxide.", "grounding": "GO:0009039", "id": "urease_function", "is_orphan": false, "label": "urease activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}], "title": "Urease-catalyzed urea hydrolysis"}]; + var graphs = [{"description": "Evidence-backed causal sketch linking urease to hydrolysis of urea into ammonia, the basis of the urease test.", "edges": [{"description": "Urease carries out urea hydrolysis.", "evidence": [{"notes": "Mobley, Island \u0026 Hausinger review microbial ureases.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "id": "edge-1", "is_orphan": false, "predicate": "enables", "predicate_id": "RO:0002327", "source": "urease", "target": "urease_function"}, {"description": "The urease reaction consumes urea.", "evidence": [{"notes": "Supports urea as the hydrolysis substrate.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "id": "edge-2", "is_orphan": false, "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "urease_function", "target": "urea"}, {"description": "Urea hydrolysis produces ammonia.", "evidence": [{"notes": "Mobley \u0026 Hausinger support ammonia release from urea hydrolysis.", "reference": "DOI:10.1128/mr.53.1.85-108.1989"}], "id": "edge-3", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease_function", "target": "ammonia"}, {"description": "Urease enzymatic activity manifests as the observable urease-activity phenotype scored by the diagnostic urease test.", "evidence": [{"notes": "Urease activity (urea-to-ammonia hydrolysis raising local pH) is the assayable phenotype used to score urease-positive organisms.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "id": "edge-4", "is_orphan": false, "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "urease_function", "target": "urease_activity_trait"}, {"description": "Urea hydrolysis produces hydroxide, mechanistically explaining alkalinization.", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "id": "edge-5", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease_function", "target": "hydroxide"}, {"description": "Urea hydrolysis produces carbon dioxide.", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "id": "edge-6", "is_orphan": false, "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease_function", "target": "carbon_dioxide"}, {"description": "Urea hydrolysis (NH4+/OH- production) increases local pH, the basis of the urease test color change.", "evidence": [{"notes": "Urea hydrolysis produces NH4+ and OH-, causing a pH increase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-7", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "urease_function", "target": "ph_quality"}, {"description": "CO2 from urea hydrolysis is hydrated by carbonic anhydrase.", "evidence": [{"notes": "Hydration of CO2 to HCO3- by carbonic anhydrase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-8", "is_orphan": false, "predicate": "is substrate of", "predicate_id": null, "source": "carbon_dioxide", "target": "carbonic_anhydrase_function"}, {"description": "Carbonic anhydrase hydrates CO2, increasing bicarbonate.", "evidence": [{"notes": "Increase in [HCO3-] following the hydration of CO2 to HCO3- by CA.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-9", "is_orphan": false, "predicate": "increases", "predicate_id": "RO:0002213", "source": "carbonic_anhydrase_function", "target": "bicarbonate"}, {"description": "CA-driven buffering enhances solubility trapping and affects the CaCO3 phase formed.", "evidence": [{"notes": "CA physiologically promotes buffering, which enhances solubility trapping and affects the phase of the CaCO3 mineral formed.", "reference": "DOI:10.1021/acs.est.3c06617"}], "id": "edge-10", "is_orphan": false, "predicate": "affects", "predicate_id": null, "source": "carbonic_anhydrase_function", "target": "calcium_carbonate_precipitation"}], "evidence_rows": [{"description": "Urease carries out urea hydrolysis.", "edge_id": "edge-1", "evidence": [{"notes": "Mobley, Island \u0026 Hausinger review microbial ureases.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "predicate": "enables", "predicate_id": "RO:0002327", "source": "urease", "target": "urease activity"}, {"description": "The urease reaction consumes urea.", "edge_id": "edge-2", "evidence": [{"notes": "Supports urea as the hydrolysis substrate.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "predicate": "consumes", "predicate_id": "biolink:consumes", "source": "urease activity", "target": "urea"}, {"description": "Urea hydrolysis produces ammonia.", "edge_id": "edge-3", "evidence": [{"notes": "Mobley \u0026 Hausinger support ammonia release from urea hydrolysis.", "reference": "DOI:10.1128/mr.53.1.85-108.1989"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease activity", "target": "ammonia"}, {"description": "Urease enzymatic activity manifests as the observable urease-activity phenotype scored by the diagnostic urease test.", "edge_id": "edge-4", "evidence": [{"notes": "Urease activity (urea-to-ammonia hydrolysis raising local pH) is the assayable phenotype used to score urease-positive organisms.", "reference": "DOI:10.1128/mr.59.3.451-480.1995"}], "predicate": "manifests as", "predicate_id": "METPO:2007400", "source": "urease activity", "target": "urease activity"}, {"description": "Urea hydrolysis produces hydroxide, mechanistically explaining alkalinization.", "edge_id": "edge-5", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease activity", "target": "hydroxide"}, {"description": "Urea hydrolysis produces carbon dioxide.", "edge_id": "edge-6", "evidence": [{"notes": "(NH2)2CO + 2H2O + urease -\u003e 2 NH4+ + 2 OH- + CO2 + urease.", "reference": "DOI:10.24263/2304-974x-2024-13-2-10"}], "predicate": "has output", "predicate_id": "RO:0002234", "source": "urease activity", "target": "carbon dioxide"}, {"description": "Urea hydrolysis (NH4+/OH- production) increases local pH, the basis of the urease test color change.", "edge_id": "edge-7", "evidence": [{"notes": "Urea hydrolysis produces NH4+ and OH-, causing a pH increase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "urease activity", "target": "pH"}, {"description": "CO2 from urea hydrolysis is hydrated by carbonic anhydrase.", "edge_id": "edge-8", "evidence": [{"notes": "Hydration of CO2 to HCO3- by carbonic anhydrase.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "is substrate of", "predicate_id": null, "source": "carbon dioxide", "target": "carbonic anhydrase activity"}, {"description": "Carbonic anhydrase hydrates CO2, increasing bicarbonate.", "edge_id": "edge-9", "evidence": [{"notes": "Increase in [HCO3-] following the hydration of CO2 to HCO3- by CA.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "increases", "predicate_id": "RO:0002213", "source": "carbonic anhydrase activity", "target": "bicarbonate"}, {"description": "CA-driven buffering enhances solubility trapping and affects the CaCO3 phase formed.", "edge_id": "edge-10", "evidence": [{"notes": "CA physiologically promotes buffering, which enhances solubility trapping and affects the phase of the CaCO3 mineral formed.", "reference": "DOI:10.1021/acs.est.3c06617"}], "predicate": "affects", "predicate_id": null, "source": "carbonic anhydrase activity", "target": "calcium carbonate precipitation"}], "graph_id": "urease_activity_urea_hydrolysis", "issues": [], "nodes": [{"color": "#fef3c7", "description": "Product that raises local pH.", "grounding": "CHEBI:16134", "id": "ammonia", "is_orphan": false, "label": "ammonia", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#fef3c7", "description": "Bicarbonate produced from CO2 hydration by carbonic anhydrase.", "grounding": "CHEBI:17544", "id": "bicarbonate", "is_orphan": false, "label": "bicarbonate", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#ecfccb", "description": "Precipitation of CaCO3 mineral, influenced by buffering chemistry.", "grounding": null, "id": "calcium_carbonate_precipitation", "is_orphan": false, "label": "calcium carbonate precipitation", "node_type": "BIOLOGICAL_PROCESS", "xrefs": []}, {"color": "#fef3c7", "description": "CO2 product of urea hydrolysis; feeds carbonate chemistry.", "grounding": "CHEBI:16526", "id": "carbon_dioxide", "is_orphan": false, "label": "carbon dioxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#cffafe", "description": "Hydration of CO2 to bicarbonate.", "grounding": "GO:0004089", "id": "carbonic_anhydrase_function", "is_orphan": false, "label": "carbonic anhydrase activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}, {"color": "#fef3c7", "description": "Hydroxide ion produced by urea hydrolysis, raising local pH.", "grounding": "CHEBI:16234", "id": "hydroxide", "is_orphan": false, "label": "hydroxide", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3f4f6", "description": "Local pH, increased by urease-driven alkalinization.", "grounding": null, "id": "ph_quality", "is_orphan": false, "label": "pH", "node_type": "QUALITY", "xrefs": []}, {"color": "#fef3c7", "description": "Substrate hydrolyzed by urease.", "grounding": "CHEBI:16199", "id": "urea", "is_orphan": false, "label": "urea", "node_type": "CHEMICAL", "xrefs": []}, {"color": "#f3e8ff", "description": "Nickel metalloenzyme hydrolyzing urea.", "grounding": null, "id": "urease", "is_orphan": false, "label": "urease", "node_type": "GENE_OR_PROTEIN", "xrefs": []}, {"color": "#dbeafe", "description": "Possession of urease.", "grounding": "traitmech:000077", "id": "urease_activity_trait", "is_orphan": false, "label": "urease activity", "node_type": "TRAIT", "xrefs": []}, {"color": "#cffafe", "description": "Hydrolysis of urea to ammonia and carbon dioxide.", "grounding": "GO:0009039", "id": "urease_function", "is_orphan": false, "label": "urease activity", "node_type": "MOLECULAR_FUNCTION", "xrefs": []}], "title": "Urease-catalyzed urea hydrolysis"}]; graphs.forEach(function(graph, index) { renderPathograph("pathograph-" + (index + 1), graph); }); @@ -881,7 +887,7 @@

    kg-microbe

    METPO
    - Record as of 2026-08-06 01:00 UTC from + Record as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/pages/umap.html b/pages/umap.html index 85898e02..fae9734d 100644 --- a/pages/umap.html +++ b/pages/umap.html @@ -238,7 +238,7 @@

    Trait embedding space

    METPO
    - Corpus as of 2026-08-07 18:00 UTC from + Corpus as of 2026-08-08 05:00 UTC from METPO 2025-11-25 · 477 TraitRecords · embedding coverage 100.0% diff --git a/reports/biolink_coverage.tsv b/reports/biolink_coverage.tsv index 9bcc1892..16a763f8 100644 --- a/reports/biolink_coverage.tsv +++ b/reports/biolink_coverage.tsv @@ -201,7 +201,6 @@ residual has quality 3 residual feed into 3 residual polymerizes into 3 residual disrupts biolink:disrupts 3 -residual reduced in 3 residual carries out 3 residual scaffolds 3 residual encapsulates 3 @@ -274,6 +273,7 @@ residual gives rise to 2 residual localizes 2 residual polymerizes to 2 residual attaches 2 +residual reduced in 2 residual incomplete separation yields 2 residual combines with 2 residual dephosphorylates 2 @@ -403,7 +403,6 @@ residual cause 1 residual causes increase in 1 residual induces transcription of 1 residual expands 1 -residual has capability 1 residual acts as antioxidant against 1 residual exceeds tolerance of 1 residual resists 1 diff --git a/reports/causal_graph_audit.tsv b/reports/causal_graph_audit.tsv index 1a5db78e..156f7496 100644 --- a/reports/causal_graph_audit.tsv +++ b/reports/causal_graph_audit.tsv @@ -224,7 +224,6 @@ data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline UNREACHABLE_FROM_TRAIT WARN node_id='hypersaline_environment' label='hypersaline environment' type=ENVIRONMENTAL_FACTOR — in an island with no path to nacl_delta_high_trait/nacl_delta data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline UNREACHABLE_FROM_TRAIT WARN node_id='halophilic_osmoadaptation' label='halophilic osmoadaptation strategies' type=BIOLOGICAL_PROCESS — in an island with no path to nacl_delta_high_trait/nacl_delta data/traits/environment/nacl_delta_high.yaml nacl_delta_high_extreme_euryhaline FRAGMENTED_GRAPH WARN components=6 of 14 node(s) (sizes: 3, 3, 2, 2, 2, 2) — one record, several unrelated mechanisms -data/traits/environment/nacl_delta_low.yaml nacl_delta_low_stenohaline DISPOSITION_MISTYPED WARN node_id='salt_tolerance_breadth' type=CAPACITY — description reads as a disposition, which is a TRAIT data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth UNREACHABLE_FROM_TRAIT WARN node_id='osmotic_upshift' label='osmotic upshift' type=ENVIRONMENTAL_FACTOR — in an island with no path to nacl_delta_mid1_trait/nacl_delta data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth UNREACHABLE_FROM_TRAIT WARN node_id='k_import' label='potassium import' type=BIOLOGICAL_PROCESS — in an island with no path to nacl_delta_mid1_trait/nacl_delta data/traits/environment/nacl_delta_mid1.yaml nacl_delta_mid1_modest_breadth UNREACHABLE_FROM_TRAIT WARN node_id='compatible_solute_accumulation' label='compatible solute accumulation' type=BIOLOGICAL_PROCESS — in an island with no path to nacl_delta_mid1_trait/nacl_delta @@ -326,38 +325,27 @@ data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phe data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor UNREACHABLE_FROM_TRAIT WARN node_id='amino_acid_decarboxylation' label='amino-acid decarboxylation' type=BIOLOGICAL_PROCESS — in an island with no path to optimum_phenotype_trait/nacl_optimum/ph_optimum/temperature_optimum data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor UNREACHABLE_FROM_TRAIT WARN node_id='proton_motive_force' label='proton motive force' type=BIOLOGICAL_PROCESS — in an island with no path to optimum_phenotype_trait/nacl_optimum/ph_optimum/temperature_optimum data/traits/environment/optimum_phenotype_with_numerical_limits.yaml optimum_phenotype_descriptor FRAGMENTED_GRAPH WARN components=4 of 14 node(s) (sizes: 5, 5, 2, 2) — one record, several unrelated mechanisms -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='reactive_oxygen_species_stress' label='oxygen / reactive oxygen species stress' type=ENVIRONMENTAL_FACTOR — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='detoxifying_enzyme_expression' label='detoxifying-enzyme gene expression' type=BIOLOGICAL_PROCESS — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='catalase' label='catalase' type=GENE_OR_PROTEIN — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='hydrogen_peroxide' label='hydrogen peroxide' type=CHEMICAL — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='superoxide_dismutase' label='superoxide dismutase' type=GENE_OR_PROTEIN — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis UNREACHABLE_FROM_TRAIT WARN node_id='oxygen_tolerance' label='oxygen tolerance' type=CAPACITY — in an island with no path to oxygen_preference_trait/aerobic_phenotype/anaerobic_phenotype/microaerophilic_phenotype/facultative_phenotype -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis DISPOSITION_MISTYPED WARN node_id='oxygen_tolerance' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis FRAGMENTED_GRAPH WARN components=3 of 14 node(s) (sizes: 8, 4, 2) — one record, several unrelated mechanisms +data/traits/environment/oxygen_preference.yaml oxygen_preference_o2_availability_axis FRAGMENTED_GRAPH WARN components=2 of 13 node(s) (sizes: 11, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='membrane_lipid_remodeling' label='saturated membrane fatty acid remodeling' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_trait data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='proton_permeability' label='membrane proton permeability' type=QUALITY — in an island with no path to ph_delta_trait -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='amino_acid_decarboxylase_acid_resistance' label='amino-acid decarboxylase acid-resistance system' type=PATHWAY — in an island with no path to ph_delta_trait -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility UNREACHABLE_FROM_TRAIT WARN node_id='low_ph_tolerance' label='low-pH tolerance' type=CAPACITY — in an island with no path to ph_delta_trait -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility DISPOSITION_MISTYPED WARN node_id='low_ph_tolerance' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility FRAGMENTED_GRAPH WARN components=3 of 12 node(s) (sizes: 8, 2, 2) — one record, several unrelated mechanisms +data/traits/environment/ph_delta.yaml ph_delta_homeostasis_flexibility FRAGMENTED_GRAPH WARN components=2 of 11 node(s) (sizes: 9, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='cytoplasmic_ph_homeostasis' label='cytoplasmic pH homeostasis' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='respiratory_proton_pumps' label='respiratory proton-pumping enzymes' type=GENE_OR_PROTEIN — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='cytoplasmic_buffering_capacity' label='cytoplasmic buffering capacity' type=CAPACITY — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='membrane_lipid_porin_changes' label='membrane lipid/porin composition changes' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth UNREACHABLE_FROM_TRAIT WARN node_id='inward_proton_leakage' label='inward proton leakage' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_high_trait/ph_delta/growth_external_ph_5_5_9 -data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth DUPLICATE_GROUNDING WARN nodes=2;grounding=METPO:1000478 (growth_external_ph_5_5_9, ph_delta_high_trait) data/traits/environment/ph_delta_high.yaml ph_delta_high_euryphilic_breadth FRAGMENTED_GRAPH WARN components=4 of 14 node(s) (sizes: 7, 3, 2, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='external_ph_stress' label='external pH stress' type=ENVIRONMENTAL_FACTOR — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='cytoplasmic_ph_homeostasis' label='cytoplasmic pH homeostasis' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='pmf_architecture' label='proton motive force architecture' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='ph_homeostasis_capacity' label='pH homeostasis capacity' type=CAPACITY — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='weak_organic_acids' label='weak organic acids' type=CHEMICAL — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='delta_ph' label='delta pH / cytoplasmic pH' type=STATE — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='electrogenic_na_h_antiport' label='electrogenic Na+/H+ antiport' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='alkaline_ph_homeostasis' label='alkaline pH homeostasis' type=BIOLOGICAL_PROCESS — in an island with no path to ph_delta_low_trait/ph_delta data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth UNREACHABLE_FROM_TRAIT WARN node_id='f1fo_atpase' label='F1Fo-ATPase' type=GENE_OR_PROTEIN — in an island with no path to ph_delta_low_trait/ph_delta -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth DISPOSITION_MISTYPED WARN node_id='ph_homeostasis_capacity' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth FRAGMENTED_GRAPH WARN components=5 of 12 node(s) (sizes: 3, 3, 2, 2, 2) — one record, several unrelated mechanisms +data/traits/environment/ph_delta_low.yaml ph_delta_low_limited_breadth FRAGMENTED_GRAPH WARN components=4 of 11 node(s) (sizes: 4, 3, 2, 2) — one record, several unrelated mechanisms data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth UNREACHABLE_FROM_TRAIT WARN node_id='gln_glu_decarboxylation_pathway' label='glutamine/glutamate decarboxylation pathway' type=PATHWAY — in an island with no path to ph_delta_mid1_trait/ph_delta data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth UNREACHABLE_FROM_TRAIT WARN node_id='intracellular_proton' label='intracellular proton (H+)' type=CHEMICAL — in an island with no path to ph_delta_mid1_trait/ph_delta data/traits/environment/ph_delta_mid1.yaml ph_delta_mid1_moderate_breadth UNREACHABLE_FROM_TRAIT WARN node_id='ybas_glutaminase' label='YbaS glutaminase' type=GENE_OR_PROTEIN — in an island with no path to ph_delta_mid1_trait/ph_delta @@ -503,8 +491,7 @@ data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_ad data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation UNREACHABLE_FROM_TRAIT WARN node_id='protein_membrane_stability' label='protein and membrane stability under cold stress' type=QUALITY — in an island with no path to psychrotolerant_trait data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation UNREACHABLE_FROM_TRAIT WARN node_id='extracellular_polymeric_substances' label='extracellular polymeric substances (EPS)' type=CHEMICAL — in an island with no path to psychrotolerant_trait data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation UNREACHABLE_FROM_TRAIT WARN node_id='freeze_thaw_cryoprotection' label='cryoprotection against freeze-thaw cycles' type=BIOLOGICAL_PROCESS — in an island with no path to psychrotolerant_trait -data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation DISPOSITION_MISTYPED WARN node_id='growth_at_4c' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation FRAGMENTED_GRAPH WARN components=3 of 12 node(s) (sizes: 8, 2, 2) — one record, several unrelated mechanisms +data/traits/environment/psychrotolerant.yaml psychrotolerant_facultative_cold_adaptation FRAGMENTED_GRAPH WARN components=3 of 11 node(s) (sizes: 7, 2, 2) — one record, several unrelated mechanisms data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis UNREACHABLE_FROM_TRAIT WARN node_id='intracellular_osmotic_balance' label='intracellular osmotic balance across salinity' type=BIOLOGICAL_PROCESS — in an island with no path to salinity_phenotype_trait/nacl_optimum/nacl_range/nacl_delta data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis UNREACHABLE_FROM_TRAIT WARN node_id='salt_out_compatible_solute_strategy' label='compatible-solute (salt-out) strategy' type=PATHWAY — in an island with no path to salinity_phenotype_trait/nacl_optimum/nacl_range/nacl_delta data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis UNREACHABLE_FROM_TRAIT WARN node_id='salt_in_strategy' label='salt-in strategy' type=PATHWAY — in an island with no path to salinity_phenotype_trait/nacl_optimum/nacl_range/nacl_delta @@ -512,8 +499,7 @@ data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_p data/traits/environment/salinity_phenotype_with_numerical_limits.yaml salinity_phenotype_numerical_axis FRAGMENTED_GRAPH WARN components=2 of 13 node(s) (sizes: 9, 4) — one record, several unrelated mechanisms data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation UNREACHABLE_FROM_TRAIT WARN node_id='ion_homeostasis' label='ion homeostasis during salt stress' type=BIOLOGICAL_PROCESS — in an island with no path to slightly_halophilic_trait data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation UNREACHABLE_FROM_TRAIT WARN node_id='na_k_transcription' label='Na+/K+ transcriptional induction' type=BIOLOGICAL_PROCESS — in an island with no path to slightly_halophilic_trait -data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation DISPOSITION_MISTYPED WARN node_id='salt_tolerance' type=CAPACITY — description reads as a disposition, which is a TRAIT -data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation FRAGMENTED_GRAPH WARN components=2 of 11 node(s) (sizes: 9, 2) — one record, several unrelated mechanisms +data/traits/environment/slightly_halophilic.yaml slight_halophile_low_salt_osmoadaptation FRAGMENTED_GRAPH WARN components=2 of 10 node(s) (sizes: 8, 2) — one record, several unrelated mechanisms data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance UNREACHABLE_FROM_TRAIT WARN node_id='c_di_amp' label='cyclic di-AMP' type=CHEMICAL — in an island with no path to stenohaline_trait data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance UNREACHABLE_FROM_TRAIT WARN node_id='k_import_systems' label='K+ import systems' type=GENE_OR_PROTEIN — in an island with no path to stenohaline_trait data/traits/environment/stenohaline.yaml stenohaline_narrow_salinity_tolerance UNREACHABLE_FROM_TRAIT WARN node_id='opua_importer' label='compatible-solute importer OpuA' type=GENE_OR_PROTEIN — in an island with no path to stenohaline_trait @@ -1212,7 +1198,6 @@ data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth UNR data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth UNREACHABLE_FROM_TRAIT WARN node_id='ftsz_z_ladders' label='FtsZ Z-ladder arrays' type=GENE_OR_PROTEIN — in an island with no path to mycelial_growth_trait data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth UNREACHABLE_FROM_TRAIT WARN node_id='sporulation_septation' label='sporulation septation and spore-chain formation' type=BIOLOGICAL_PROCESS — in an island with no path to mycelial_growth_trait data/traits/morphology/mycelial_growth.yaml mycelial_branching_hyphal_growth FRAGMENTED_GRAPH WARN components=4 of 13 node(s) (sizes: 5, 4, 2, 2) — one record, several unrelated mechanisms -data/traits/morphology/non_spore_forming.yaml non_spore_forming_absent_spo0a_cascade DISPOSITION_MISTYPED WARN node_id='loss_sporulation_capacity' type=CAPACITY — description reads as a disposition, which is a TRAIT data/traits/morphology/orange_pigmented.yaml orange_pigmented_carotenoid_accumulation UNREACHABLE_FROM_TRAIT WARN node_id='crt_y_lycopene_cyclase' label='lycopene beta-cyclase (CrtY)' type=GENE_OR_PROTEIN — in an island with no path to orange_pigmented_trait data/traits/morphology/orange_pigmented.yaml orange_pigmented_carotenoid_accumulation UNREACHABLE_FROM_TRAIT WARN node_id='lycopene' label='lycopene' type=CHEMICAL — in an island with no path to orange_pigmented_trait data/traits/morphology/orange_pigmented.yaml orange_pigmented_carotenoid_accumulation UNREACHABLE_FROM_TRAIT WARN node_id='beta_carotene' label='beta-carotene' type=CHEMICAL — in an island with no path to orange_pigmented_trait @@ -1285,7 +1270,6 @@ data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_pac data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet UNREACHABLE_FROM_TRAIT WARN node_id='peripheral_pg_bridge' label='peripheral peptidoglycan bridge' type=CELLULAR_LOCALIZATION — in an island with no path to sarcina_trait data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet UNREACHABLE_FROM_TRAIT WARN node_id='daughter_cell_separation' label='daughter-cell separation' type=BIOLOGICAL_PROCESS — in an island with no path to sarcina_trait data/traits/morphology/sarcina_arrangement.yaml sarcina_three_plane_division_packet FRAGMENTED_GRAPH WARN components=5 of 14 node(s) (sizes: 4, 3, 3, 2, 2) — one record, several unrelated mechanisms -data/traits/morphology/sphere_shaped.yaml sphere_shaped_septal_peptidoglycan DISPOSITION_MISTYPED WARN node_id='elongation_capacity' type=CAPACITY — description reads as a disposition, which is a TRAIT data/traits/morphology/spore_forming.yaml spore_forming_endospore_assembly UNREACHABLE_FROM_TRAIT WARN node_id='spoIID' label='SpoIID' type=GENE_OR_PROTEIN — in an island with no path to spore_forming_trait data/traits/morphology/spore_forming.yaml spore_forming_endospore_assembly UNREACHABLE_FROM_TRAIT WARN node_id='spoIIM' label='SpoIIM' type=GENE_OR_PROTEIN — in an island with no path to spore_forming_trait data/traits/morphology/spore_forming.yaml spore_forming_endospore_assembly UNREACHABLE_FROM_TRAIT WARN node_id='spoIIP' label='SpoIIP' type=GENE_OR_PROTEIN — in an island with no path to spore_forming_trait @@ -1366,7 +1350,6 @@ data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation UNREA data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation UNREACHABLE_FROM_TRAIT WARN node_id='coo_operon' label='coo operon' type=GENE_OR_PROTEIN — in an island with no path to carboxydotrophic_trait data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation UNREACHABLE_FROM_TRAIT WARN node_id='cooa_regulator' label='CooA' type=GENE_OR_PROTEIN — in an island with no path to carboxydotrophic_trait data/traits/physiology/carboxydotrophic.yaml carboxydotrophic_co_oxidation FRAGMENTED_GRAPH WARN components=2 of 18 node(s) (sizes: 14, 4) — one record, several unrelated mechanisms -data/traits/physiology/catalase_activity.yaml catalase_activity_h2o2_detoxification DUPLICATE_GROUNDING WARN nodes=2;grounding=GO:0004096 (catalase, catalase_function) data/traits/physiology/chemoheterotrophic.yaml chemoheterotrophic_organic_energy_carbon UNREACHABLE_FROM_TRAIT WARN node_id='mannitol_pts' label='PEP-dependent phosphotransferase system (mannitol PTS)' type=GENE_OR_PROTEIN — in an island with no path to chemoheterotrophic_trait data/traits/physiology/chemoheterotrophic.yaml chemoheterotrophic_organic_energy_carbon UNREACHABLE_FROM_TRAIT WARN node_id='mannitol' label='mannitol' type=CHEMICAL — in an island with no path to chemoheterotrophic_trait data/traits/physiology/chemoheterotrophic.yaml chemoheterotrophic_organic_energy_carbon FRAGMENTED_GRAPH WARN components=2 of 14 node(s) (sizes: 12, 2) — one record, several unrelated mechanisms @@ -1519,7 +1502,6 @@ data/traits/physiology/photoorganoheterotrophic.yaml photoorganoheterotrophic_li data/traits/physiology/phototrophic.yaml phototrophic_light_energy_capture UNREACHABLE_FROM_TRAIT WARN node_id='rhodopsin' label='rhodopsin' type=GENE_OR_PROTEIN — in an island with no path to phototrophic_trait data/traits/physiology/phototrophic.yaml phototrophic_light_energy_capture UNREACHABLE_FROM_TRAIT WARN node_id='ion_transport' label='ion transport across membrane' type=BIOLOGICAL_PROCESS — in an island with no path to phototrophic_trait data/traits/physiology/phototrophic.yaml phototrophic_light_energy_capture FRAGMENTED_GRAPH WARN components=2 of 13 node(s) (sizes: 11, 2) — one record, several unrelated mechanisms -data/traits/physiology/urease_activity.yaml urease_activity_urea_hydrolysis DUPLICATE_GROUNDING WARN nodes=2;grounding=GO:0009039 (urease, urease_function) data/traits/physiology/viable_but_nonculturable_state.yaml vbnc_stress_induced_dormancy UNREACHABLE_FROM_TRAIT WARN node_id='rpos' label='RpoS sigma factor' type=GENE_OR_PROTEIN — in an island with no path to vbnc_trait data/traits/physiology/viable_but_nonculturable_state.yaml vbnc_stress_induced_dormancy UNREACHABLE_FROM_TRAIT WARN node_id='resuscitation' label='resuscitation from VBNC' type=BIOLOGICAL_PROCESS — in an island with no path to vbnc_trait data/traits/physiology/viable_but_nonculturable_state.yaml vbnc_stress_induced_dormancy UNREACHABLE_FROM_TRAIT WARN node_id='atp' label='ATP' type=CHEMICAL — in an island with no path to vbnc_trait diff --git a/reports/node_grounding_residual.tsv b/reports/node_grounding_residual.tsv index 1791bd45..ff08a0f0 100644 --- a/reports/node_grounding_residual.tsv +++ b/reports/node_grounding_residual.tsv @@ -625,7 +625,6 @@ compatible-solute transporters (opu/prou) GENE_OR_PROTEIN 1 data/traits/environm trkh potassium uptake system GENE_OR_PROTEIN 1 data/traits/environment/nacl_delta_low.yaml nhac-family na+/h+ antiporter GENE_OR_PROTEIN 1 data/traits/environment/nacl_delta_low.yaml intracellular proline accumulation CHEMICAL 1 data/traits/environment/nacl_delta_low.yaml -salt-tolerance breadth CAPACITY 1 data/traits/environment/nacl_delta_low.yaml modest osmoadaptive flexibility BIOLOGICAL_PROCESS 1 data/traits/environment/nacl_delta_mid1.yaml osmoadaptation / growth under nacl stress BIOLOGICAL_PROCESS 1 data/traits/environment/nacl_delta_mid1.yaml ectoine biosynthesis (ectb/ecta/ectc) PATHWAY 1 data/traits/environment/nacl_delta_mid1.yaml @@ -745,7 +744,6 @@ ambient molecular oxygen ENVIRONMENTAL_FACTOR 1 data/traits/environment/oxygen_p o2 as terminal electron acceptor MOLECULAR_FUNCTION 1 data/traits/environment/oxygen_preference.yaml oxygen / reactive oxygen species stress ENVIRONMENTAL_FACTOR 1 data/traits/environment/oxygen_preference.yaml detoxifying-enzyme gene expression BIOLOGICAL_PROCESS 1 data/traits/environment/oxygen_preference.yaml -oxygen tolerance CAPACITY 1 data/traits/environment/oxygen_preference.yaml ph-homeostasis flexibility BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta.yaml ph tolerance breadth BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta.yaml external ph homeostasis BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta.yaml @@ -753,7 +751,6 @@ f0f1-atpase activity MOLECULAR_FUNCTION 1 data/traits/environment/ph_delta.yaml monovalent cation:h+ antiporter activity MOLECULAR_FUNCTION 1 data/traits/environment/ph_delta.yaml saturated membrane fatty acid remodeling BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta.yaml amino-acid decarboxylase acid-resistance system PATHWAY 1 data/traits/environment/ph_delta.yaml -low-ph tolerance CAPACITY 1 data/traits/environment/ph_delta.yaml maximal ph-homeostasis flexibility BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta_high.yaml respiratory proton-pumping enzymes GENE_OR_PROTEIN 1 data/traits/environment/ph_delta_high.yaml near-neutral cytoplasmic ph QUALITY 1 data/traits/environment/ph_delta_high.yaml @@ -761,7 +758,6 @@ constant proton motive force BIOLOGICAL_PROCESS 1 data/traits/environment/ph_del membrane lipid/porin composition changes BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta_high.yaml limited ph-homeostasis flexibility BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta_low.yaml proton motive force architecture BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta_low.yaml -ph homeostasis capacity CAPACITY 1 data/traits/environment/ph_delta_low.yaml weak organic acids CHEMICAL 1 data/traits/environment/ph_delta_low.yaml delta ph / cytoplasmic ph STATE 1 data/traits/environment/ph_delta_low.yaml moderate ph-homeostasis flexibility BIOLOGICAL_PROCESS 1 data/traits/environment/ph_delta_mid1.yaml @@ -919,7 +915,6 @@ membrane rigidification and thickening QUALITY 1 data/traits/environment/psychro unsaturated hopanoids CHEMICAL 1 data/traits/environment/psychrotolerant.yaml protein and membrane stability under cold stress QUALITY 1 data/traits/environment/psychrotolerant.yaml cryoprotection against freeze-thaw cycles BIOLOGICAL_PROCESS 1 data/traits/environment/psychrotolerant.yaml -growth at 4 degrees c CAPACITY 1 data/traits/environment/psychrotolerant.yaml ionizing or uv radiation exposure ENVIRONMENTAL_FACTOR 1 data/traits/environment/radiotolerant.yaml manganese-antioxidant proteome protection BIOLOGICAL_PROCESS 1 data/traits/environment/radiotolerant.yaml reactive oxygen species (ros) CHEMICAL 1 data/traits/environment/radiotolerant.yaml @@ -937,7 +932,6 @@ chaotropic ions (mg/ca/li/fe salts) CHEMICAL 1 data/traits/environment/salinity_ water activity ENVIRONMENTAL_FACTOR 1 data/traits/environment/salinity_phenotype_with_numerical_limits.yaml low to moderate nacl ENVIRONMENTAL_FACTOR 1 data/traits/environment/slightly_halophilic.yaml osmoprotectant transport MOLECULAR_FUNCTION 1 data/traits/environment/slightly_halophilic.yaml -salt tolerance CAPACITY 1 data/traits/environment/slightly_halophilic.yaml ectabc/ectbacd gene cluster GENE_OR_PROTEIN 1 data/traits/environment/slightly_halophilic.yaml ion homeostasis during salt stress BIOLOGICAL_PROCESS 1 data/traits/environment/slightly_halophilic.yaml na+/k+ transcriptional induction BIOLOGICAL_PROCESS 1 data/traits/environment/slightly_halophilic.yaml @@ -1850,7 +1844,6 @@ no endospore formation BIOLOGICAL_PROCESS 1 data/traits/morphology/non_spore_for absence of spo0a gene GENE_OR_PROTEIN 1 data/traits/morphology/non_spore_forming.yaml loss of sporulation genes BIOLOGICAL_PROCESS 1 data/traits/morphology/non_spore_forming.yaml low or absent spo0a activity MOLECULAR_FUNCTION 1 data/traits/morphology/non_spore_forming.yaml -loss of sporulation capacity CAPACITY 1 data/traits/morphology/non_spore_forming.yaml rap phosphatases GENE_OR_PROTEIN 1 data/traits/morphology/non_spore_forming.yaml dephosphorylation of spo0f BIOLOGICAL_PROCESS 1 data/traits/morphology/non_spore_forming.yaml spo0a phosphorelay disruption BIOLOGICAL_PROCESS 1 data/traits/morphology/non_spore_forming.yaml @@ -1956,7 +1949,6 @@ peptidoglycan synthetases and hydrolases GENE_OR_PROTEIN 1 data/traits/morpholog cell wall synthesis at division site BIOLOGICAL_PROCESS 1 data/traits/morphology/sarcina_arrangement.yaml peripheral peptidoglycan bridge CELLULAR_LOCALIZATION 1 data/traits/morphology/sarcina_arrangement.yaml mreb-mediated elongation machinery GENE_OR_PROTEIN 1 data/traits/morphology/sphere_shaped.yaml -elongation capacity CAPACITY 1 data/traits/morphology/sphere_shaped.yaml divisome and pbps GENE_OR_PROTEIN 1 data/traits/morphology/sphere_shaped.yaml ftsw lipid ii flippase GENE_OR_PROTEIN 1 data/traits/morphology/sphere_shaped.yaml symmetric polar peptidoglycan growth BIOLOGICAL_PROCESS 1 data/traits/morphology/spindle_shaped.yaml diff --git a/reports/predicate_grounding_residual.tsv b/reports/predicate_grounding_residual.tsv index bc3e94dc..e2889bec 100644 --- a/reports/predicate_grounding_residual.tsv +++ b/reports/predicate_grounding_residual.tsv @@ -91,7 +91,6 @@ has quality 3 unmapped data/traits/metabolism/wood_ljungdahl_pathway.yaml|data/ feed into 3 unmapped data/traits/morphology/black_pigmented.yaml|data/traits/morphology/carotenoid_pigmentation.yaml|data/traits/morphology/pink_pigmented.yaml polymerizes into 3 unmapped data/traits/morphology/black_pigmented.yaml|data/traits/morphology/magnetosome.yaml disrupts 3 unmapped data/traits/morphology/cell_shape.yaml|data/traits/morphology/irregular_shaped.yaml -reduced in 3 unmapped data/traits/morphology/coccus_shaped.yaml|data/traits/morphology/sphere_shaped.yaml carries out 3 unmapped data/traits/morphology/ellipsoidal.yaml|data/traits/upper/biological_process.yaml scaffolds 3 unmapped data/traits/morphology/fusiform_shaped.yaml|data/traits/morphology/tetrad_arrangement.yaml|data/traits/physiology/chemotaxis.yaml encapsulates 3 unmapped data/traits/morphology/intracellular_inclusion.yaml|data/traits/physiology/chemoautotrophic.yaml @@ -164,6 +163,7 @@ gives rise to 2 unmapped data/traits/morphology/bacillus_shaped.yaml|data/trait localizes 2 unmapped data/traits/morphology/branched_shaped.yaml|data/traits/morphology/star_shaped.yaml polymerizes to 2 unmapped data/traits/morphology/brown_pigmented.yaml attaches 2 unmapped data/traits/morphology/cell_length.yaml|data/traits/morphology/sarcina_arrangement.yaml +reduced in 2 unmapped data/traits/morphology/coccus_shaped.yaml|data/traits/morphology/sphere_shaped.yaml incomplete separation yields 2 unmapped data/traits/morphology/diplococcus_shaped.yaml combines with 2 unmapped data/traits/morphology/flask_shaped.yaml|data/traits/morphology/oval_shaped.yaml dephosphorylates 2 unmapped data/traits/morphology/non_spore_forming.yaml|data/traits/physiology/chemotaxis.yaml @@ -293,7 +293,6 @@ cause 1 unmapped data/traits/environment/ph_range_very_low.yaml causes increase in 1 unmapped data/traits/environment/piezotolerant.yaml induces transcription of 1 unmapped data/traits/environment/piezotolerant.yaml expands 1 unmapped data/traits/environment/pressure_range.yaml -has capability 1 unmapped data/traits/environment/psychrotolerant.yaml acts as antioxidant against 1 unmapped data/traits/environment/radiotolerant.yaml exceeds tolerance of 1 unmapped data/traits/environment/stenohaline.yaml resists 1 unmapped data/traits/environment/temperature_delta_high.yaml diff --git a/scripts/migrate_disposition_typing.py b/scripts/migrate_disposition_typing.py new file mode 100644 index 00000000..e900bec5 --- /dev/null +++ b/scripts/migrate_disposition_typing.py @@ -0,0 +1,321 @@ +#!/usr/bin/env python3 +"""Burn down the 11 baselined DISPOSITION_MISTYPED / DUPLICATE_GROUNDING findings (#352). + +#353 shipped the detection and baselined what it found. This is the burn-down. + +THE HEADLINE IS THAT NONE OF THEM WERE RETYPES. #352 framed the fix as "sweep +CAPACITY nodes matching the disposition pattern and retype them". Not one of the +eight survived the attempt, and the thing that killed each one is the grounding: + + every TRAIT node in the corpus is grounded, so retyping a node forces you to + name the term it IS -- and for all eight, the only available term restates + the record, contradicts it, or is narrower than the node it labels. + +Grounding them anyway trades a DISPOSITION_MISTYPED for a DUPLICATE_GROUNDING, +or for a false claim, and calls it progress. Requiring a grounding is what +exposes that, which is #352's own third bullet read strictly. + +It took three rounds to get here, and the count went 4 -> 2 -> 0: + + round 1 called four retypes and four restatements. + round 2 (#360 review) salt_tolerance_breadth was grounded METPO:1000622 while + keeping `is a -> nacl_delta`, asserting halotolerant sub NaCl-delta; + oxygen_tolerance was grounded METPO:1000609, sub the record's own + METPO:1000601 and false of the obligate aerobes it covers. + round 3 (#360 review) salt_tolerance was grounded METPO:1000622, a DIRECT + SIBLING of the record's METPO:1000625 asserting the negation of it + ("does not require salt" vs "requires salt"); low_ph_tolerance was + grounded METPO:1003008, whose definition excludes the acidophiles + the generic pH-delta record covers. + +The lesson worth keeping: "is this term distinct from the record's own?" is the +WRONG test, and it passed all four of the nodes that later failed. The right +test is whether the term is COMPATIBLE with the record and no NARROWER than the +node -- a sibling term is maximally distinct and still wrong. + +MEASURED, NOT ASSERTED: retyping changed the component structure of ZERO of the +eight graphs -- it only ever added an anchor inside what was already there. +Merging improves three of them (oxygen_preference 3 components -> 2, ph_delta +3 -> 2, ph_delta_low 5 -> 4); the other five are pure deduplication and leave +the component count where it was. Both facts are invisible in +UNREACHABLE_FROM_TRAIT, which reads 1296 either way, and that is why #359 +exists. Saying "eight merges, three of them structural" is the honest claim; +saying "merging attaches the islands" would be this migration making exactly +the kind of overclaim it was written to catch. + +#352's third bullet is what made this findable: "retype in one pass, GROUNDING +EACH -- an ungrounded new TRAIT node silently becomes a reachability anchor and +makes UNREACHABLE_FROM_TRAIT fall without the graph actually becoming more +connected." It warns about the anchor effect and suggests requiring a grounding +as the remedy. Requiring one did something better than prevent the anchor: it +made every retype in the sweep fail out loud. + +CAPACITY IS NOT VESTIGIAL, which the issue left open. 24 nodes carry it; these 8 +leave 16, and the survivors are a different sense entirely -- `reducing_power` +(a pool of reductants), `cytoplasmic_buffering_capacity` (a reservoir), +`swimming_velocity` (a rate), `metabolic_versatility` (a breadth). Reservoir and +quantity capacities are not organism dispositions and must stay. That two-senses +split is the same shape `reduces` recorded in mappings/predicate_grounding.tsv, +and it is why #353's heuristic is organism-scoped rather than matching bare +"capacity to". + +Usage: + python scripts/migrate_disposition_typing.py [--dry-run] +""" +from __future__ import annotations + +import argparse +import sys +from pathlib import Path + +import yaml + +REPO_ROOT = Path(__file__).resolve().parent.parent +sys.path.insert(0, str(REPO_ROOT / "src")) + +from traitmech.curate.curation_event import record_curation_event # noqa: E402 +from traitmech.validation.write_validated import emit_trait_yaml # noqa: E402 + +TRAITS = REPO_ROOT / "data" / "traits" + +# Fixed rather than wall-clock, because pages/ derives its "Corpus as of" stamp +# from the latest curation_history entry (#228) and a clock would make every +# re-run of this migration produce a different 477-page diff. +TIMESTAMP = "2026-08-08T05:00:00Z" + +# The first pass logged all eleven events as RETYPE_CAUSAL_NODE, including the +# seven that were not retypes at all. An audit trail that calls a merge a retype +# cannot answer the question it exists to answer, so each kind gets its own +# label. RETYPE_CAUSAL_NODE now goes unused, which is the honest outcome. +ACTIONS = { + "retype": "RETYPE_CAUSAL_NODE", + "merge": "MERGE_CAUSAL_NODE", + "drop": "DROP_CAUSAL_NODE", + "reground": "REGROUND_CAUSAL_NODE", + "unground": "UNGROUND_CAUSAL_NODE", +} + +# --- no retypes ------------------------------------------------------------- +# THIS TABLE IS EMPTY, AND THAT IS THE FINDING. #352 framed the whole issue as +# a retype sweep; three rounds of review took the retype count 4 -> 2 -> 0. Each +# round failed the same test: the grounding a node needs in order to BE a trait +# turned out to restate, contradict, or narrow the record it sits in. Kept as an +# empty table rather than deleted, because "we looked and there were none" and +# "we never modelled retypes" are different claims and only one is true. +RETYPE: dict[tuple[str, str], dict] = { +} + +# --- the eight restatements -------------------------------------------------- +# `into` repoints the node's edges onto an existing node and drops it; `drop` +# removes a leaf outright. +MERGE: dict[tuple[str, str], dict] = { + ("environment/slightly_halophilic.yaml", "salt_tolerance"): { + "into": "slightly_halophilic_trait", + "why": "A SEVENTH restatement, caught in the third review round (#360). I had " + "grounded it METPO:1000622 (halotolerant), reasoning that the record is " + "METPO:1000625 (slightly halophilic) so the term is 'distinct'. It is " + "distinct in the worst way: 1000622 and 1000625 are DIRECT SIBLINGS under " + "1000629 (halophily preference), and 1000622 means 'tolerates high salt " + "but DOES NOT REQUIRE it for growth' while 1000625 means the organism " + "'REQUIRES low to moderate salt for optimal growth'. So the node asserted " + "of this record the negation of what the record's own term says. Distinct " + "is not the test; compatible is. NO CONNECTIVITY CLAIM HERE: the node was " + "already in the trait's component via osmoprotectant_transport -> " + "compatible_solutes -> osmotic_stress, so merging leaves the graph at 2 " + "components and is a correctness fix, not a structural one. METPO has no " + "generic salt-tolerance disposition to reground to: halotolerant and " + "acidotolerant are the only candidate labels and each already anchors its " + "own record. Recorded as issue #364, which proposes a tolerance axis " + "distinct from the preference axis; nothing under proposals/ yet.", + }, + ("environment/ph_delta.yaml", "low_ph_tolerance"): { + "into": "ph_delta_trait", + "why": "An EIGHTH restatement (#360). I had grounded it METPO:1003008 " + "(acidotolerant) and claimed 'no collision' with the record's " + "METPO:1000232 (pH delta). No collision, but the wrong SCOPE: 1003008 is " + "defined as tolerating acid 'WHILE MAINTAINING OPTIMAL GROWTH NEAR NEUTRAL " + "pH', which excludes the acidophiles this generic pH-delta record covers. " + "A grounding narrower than the node it labels is a false claim about every " + "organism in the excluded part. Also a pure sink. Merging repoints " + "amino_acid_decarboxylase_acid_resistance onto ph_delta_trait, which reads " + "correctly: an acid-resistance system widens the growth-supporting pH " + "range, and a pH delta IS that range.", + }, + ("environment/nacl_delta_low.yaml", "salt_tolerance_breadth"): { + "into": "nacl_delta", + "why": "A FIFTH restatement, caught in review (#360). 'Capacity to grow across a " + "range of ambient NaCl concentrations' against nacl_delta's 'Breadth of the " + "growth-supporting NaCl range' -- the same claim, and nacl_delta is in the " + "same graph already TRAIT and already grounded METPO:1000335. I had " + "retyped it and grounded it METPO:1000622 (halotolerant), which is a " + "DEGREE of tolerance, not a breadth: 1000622 is a halophily preference " + "(sub 1000629) while 1000335 is a delta (sub 1000532/1000534), so the " + "node's existing `is a -> nacl_delta` edge asserted halotolerant sub NaCl " + "delta, a subsumption METPO does not have. The absolute-vs-breadth " + "distinction this migration insists on for pH, missed for salt.", + }, + ("environment/oxygen_preference.yaml", "oxygen_tolerance"): { + "into": "oxygen_preference_trait", + "why": "A SIXTH restatement (#360). METPO:1000601's own definition is 'an " + "organism's oxygen requirements OR TOLERANCE for growth', so 'capacity of " + "a cell to survive exposure to molecular oxygen' is part of what the " + "anchor already says. I had grounded it METPO:1000609 (aerotolerant), " + "which METPO defines as 'does NOT USE O2 for growth but tolerates its " + "presence' -- the aerotolerant-anaerobe phenotype, false of the obligate " + "aerobes this node also covers -- and which is itself sub METPO:1000601, " + "making it a sixth child phenotype in a graph that wires the other four " + "in with `is a` and left this one unlinked. aerotolerant.yaml, the record " + "FOR 1000609, has no such node at all: it models the same biology as " + "detoxification processes. Merging attaches the ROS-defence island to the " + "trait, which unlike a retype is a real connectivity gain.", + }, + ("environment/ph_delta_low.yaml", "ph_homeostasis_capacity"): { + "into": "cytoplasmic_ph_homeostasis", + "why": "'Capacity to balance and maintain cytoplasmic pH under pH stress' is " + "cytoplasmic_ph_homeostasis, which is IN THE SAME GRAPH already typed " + "BIOLOGICAL_PROCESS and grounded GO:0051453. Grounding the capacity node " + "to GO:0051453 would have produced a DUPLICATE_GROUNDING against it.", + }, + ("morphology/sphere_shaped.yaml", "elongation_capacity"): { + "into": "lateral_elongation", + "why": "'Capacity of a cell to elongate into a rod via sidewall growth' against " + "lateral_elongation's 'Sidewall growth mode that lengthens rods' -- the " + "same claim twice, and both already carried `reduced in -> " + "sphere_shaped_trait`.", + }, + ("morphology/non_spore_forming.yaml", "loss_sporulation_capacity"): { + "into": "non_spore_forming_trait", + "why": "'Loss of the capacity to undergo sporulation' IS the record's own trait " + "(METPO:1000872, non-spore forming), so the only correct grounding " + "duplicates the anchor. Collapsing leaves low_spo0a_activity -causes-> " + "non_spore_forming_trait, which is the shape loss_sporulation_genes " + "already uses in this graph.", + }, + ("environment/psychrotolerant.yaml", "growth_at_4c"): { + "drop": True, + "why": "'Ability to grow at refrigeration-range low temperature (4 C)' IS " + "METPO:1000618 (psychrotolerant), the record's own term and the grounding " + "of psychrotolerant_trait, which is the node it hangs off. A leaf " + "restating its own parent. The parent keeps two other in-edges " + "(cold_shock_response confers, facultative_lipid_remodeling manifests as), " + "so nothing is stranded.", + }, +} + +# --- duplicate groundings ---------------------------------------------------- +REGROUND: dict[tuple[str, str], dict] = { + ("environment/ph_delta_high.yaml", "growth_external_ph_5_5_9"): { + "grounding": "METPO:1000332", # pH range + "why": "Shared METPO:1000478 with ph_delta_high_trait, but the two say different " + "things: this node is an ABSOLUTE external range ('~5.5-9.0'), while " + "ph_delta_high_trait is a BREADTH ('approximately 5-9 pH units'), which is " + "what a pH DELTA is. 1000478 belongs to the delta; this is a pH range " + "(METPO:1000332).", + }, + ("physiology/catalase_activity.yaml", "catalase"): { + "grounding": None, + "why": "GO:0004096 is 'catalase ACTIVITY' -- a molecular function, which is what " + "catalase_function is. A protein is not its activity, and the graph already " + "says so correctly: catalase -enables-> catalase_function. Dropped from the " + "protein, kept on the function.", + }, + ("physiology/urease_activity.yaml", "urease"): { + "grounding": None, + "why": "GO:0009039 is 'urease ACTIVITY'. Same as catalase: kept on urease_function, " + "dropped from the protein that enables it.", + }, +} + + +def apply(dry_run: bool = False) -> int: + files: dict[str, list] = {} + for kind, table in (("retype", RETYPE), ("merge", MERGE), ("reground", REGROUND)): + for (rel, node_id), spec in table.items(): + files.setdefault(rel, []).append((kind, node_id, spec)) + + for rel, actions in sorted(files.items()): + path = TRAITS / rel + doc = yaml.safe_load(path.read_text()) + events: list[tuple[str, str]] = [] + for kind, node_id, spec in actions: + graph = next((g for g in doc.get("causal_graphs") or [] + if any(n.get("node_id") == node_id for n in g.get("nodes") or [])), + None) + if graph is None: + print(f" MISSING NODE {rel} {node_id}", file=sys.stderr) + return 1 + nodes = graph["nodes"] + node = next(n for n in nodes if n["node_id"] == node_id) + + if kind == "retype": + was = node.get("node_type") + node["node_type"] = "TRAIT" + node["grounding"] = spec["grounding"] + print(f" retype {rel} {node_id} -> TRAIT {spec['grounding']}") + events.append(("retype", f"Retyped node {node_id} from {was} to TRAIT and " + f"grounded it {spec['grounding']}. Issue 352. " + f"{spec['why']}")) + + elif kind == "reground": + if spec["grounding"] is None: + was_grounding = node.pop("grounding", None) + print(f" unground {rel} {node_id}") + events.append(("unground", f"Dropped the grounding {was_grounding} from node " + f"{node_id}. Issue 352. {spec['why']}")) + else: + was_grounding = node.get("grounding") + node["grounding"] = spec["grounding"] + print(f" reground {rel} {node_id} -> {spec['grounding']}") + events.append(("reground", f"Regrounded node {node_id} from {was_grounding} to " + f"{spec['grounding']}. Issue 352. {spec['why']}")) + + else: # merge + target = spec.get("into") + if target and not any(n["node_id"] == target for n in nodes): + print(f" MISSING TARGET {rel} {target}", file=sys.stderr) + return 1 + kept = [] + for e in graph.get("edges") or []: + if node_id not in (e["subject"], e["object"]): + kept.append(e) + continue + if not target: + continue # drop the leaf's edge outright + e["subject"] = target if e["subject"] == node_id else e["subject"] + e["object"] = target if e["object"] == node_id else e["object"] + if e["subject"] == e["object"]: + continue # collapsed onto itself + # An edge identical to one already present is a restatement too. + if any(k["subject"] == e["subject"] and k["object"] == e["object"] + and k.get("predicate") == e.get("predicate") for k in kept): + continue + kept.append(e) + graph["edges"] = kept + graph["nodes"] = [n for n in nodes if n["node_id"] != node_id] + print(f" merge {rel} {node_id} -> {target or '(dropped)'}") + if target: + events.append(("merge", f"Merged node {node_id} into {target} and repointed its " + f"edges. Issue 352. {spec['why']}")) + else: + events.append(("drop", f"Dropped node {node_id} and its edges. Issue 352. " + f"{spec['why']}")) + + for key, changes in events: + record_curation_event(doc, curator="claude", action=ACTIONS[key], + changes=changes, llm_assisted=True, timestamp=TIMESTAMP) + + if not dry_run: + path.write_text(emit_trait_yaml(doc)) + print(f"\n{sum(len(v) for v in files.values())} finding(s) resolved across " + f"{len(files)} file(s){' (dry run)' if dry_run else ''}", file=sys.stderr) + return 0 + + +def main() -> int: + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument("--dry-run", action="store_true") + return apply(ap.parse_args().dry_run) + + +if __name__ == "__main__": + sys.exit(main())