# Connect molecular function to cellular component (occurs_in)
add_fact("gomodel:12345", "mf1", "cc1", "BFO:0000066")
# Connect molecular function to biological process (part_of)
add_fact("gomodel:12345", "mf1", "bp1", "BFO:0000050")
# Add causal relationship between activities
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002411") # causally upstream of
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002629") # directly positively regulates
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002630") # directly negatively regulates
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002413") # provides input for
# Add regulates relationships
add_fact("gomodel:12345", "mf1", "bp1", "RO:0002211") # regulates
add_fact("gomodel:12345", "mf1", "bp1", "RO:0002213") # positively regulates
add_fact("gomodel:12345", "mf1", "bp1", "RO:0002212") # negatively regulates
# Add indirect regulation relationships
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002407") # indirectly positively regulates
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002409") # indirectly negatively regulates
# Add causal relationships with effects
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002304") # causally upstream of, positive effect
add_fact("gomodel:12345", "mf1", "mf2", "RO:0002305") # causally upstream of, negative effect
# Add small molecule regulation relationships
add_fact("gomodel:12345", "sm1", "mf1", "RO:0012005") # is small molecule activator of
add_fact("gomodel:12345", "sm1", "mf1", "RO:0012006") # is small molecule inhibitor of
# Use with existing individual IDs from model
add_fact("gomodel:12345", "gomodel:12345/abc123", "gomodel:12345/def456", "RO:0002333")