Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


#1168 Deleted differentia (in XP editor) sometimes reappear

Nomi Harris
OBO-Edit (934)
Nomi Harris

One time, I got the bug to happen (deleted differentia reappears) using gene_ontology_ext.obo.
The output on the console said:
obo.datamodel.impl.DefaultOperationModel - got warning [Operation Warning] Couldn't delete non-existant relationship regulation of carbohydrate utilization ~~regulates~~> carbohydrate utilization from Deleted GO:0043610 --regulates--> GO:0009758
org.oboedit.controller.SessionManager - SessionManager.doApply [Deleted GO:0043610 --regulates--> GO:0009758] (warnings: [Operation Warning] Couldn't apply macro history item
Couldn't delete non-existant relationship regulation of carbohydrate utilization ~~regulates~~> carbohydrate utilization)

I looked at the ontology file, and was a little suspicious about the fact that regulation of carbohydrate utilization has both a regular relationship "regulates GO:0009758 ! carbohydrate utilization" and also an intersection_of relationship "regulates GO:0009758 ! carbohydrate utilization":
id: GO:0043610
name: regulation of carbohydrate utilization
namespace: biological_process
def: "Any process that modulates the frequency, rate or extent of carbohydrate utilization." [GOC:jl]
synonym: "regulation of sugar utilization" NARROW [GOC:mcc2]
is_a: GO:0050789 ! regulation of biological process
intersection_of: GO:0065007 ! biological regulation
intersection_of: regulates GO:0009758 ! carbohydrate utilization
relationship: regulates GO:0009758 ! carbohydrate utilization

It seemed like maybe it would be problematic to try to delete a differentium that mirrors a regular relationship. So I tried extracting the portion of gene_ontology_ext.obo that includes regulation of carbohydrate utilization. In that subset I could delete the differentium and it stayed gone.

So then I loaded gene_ontology_ext.obo again, and THIS time, the deleted differentium stayed gone (for both terms):
org.oboedit.controller.SessionManager - SessionManager.doApply [Deleted GO:0043610 --regulates--> GO:0009758]
org.oboedit.controller.SessionManager - SessionManager.doApply [Deleted GO:0043609 --regulates--> GO:0015976]

ARGH! I don't know what I did differently. Both times, I didn't make any other edits--I just loaded the ontology file, found the relevant term, and trashcanned its differentium and hit commit.

This is going to be a tough one to track down…


  • Nomi Harris
    Nomi Harris

    Fixed in 2.1.1-b9

  • Nomi Harris
    Nomi Harris

    • assigned_to: nobody --> nomi
    • status: open --> closed-fixed