You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
NOTE: These are abstractions of terms I think should be added, not absolutes. The details of these implementations, especially naming, are definitely up for debate, please give feedback!
Class name: Gene Ontology (GO) Term
Purpose: You have a protein or gene and want to specify one of its GO terms. More specifically, you would want it to point to a URI that describes what the GO term is.
Example use case: You have a ketoreductase enzyme with Uniprot accession P16152, and a GO term GO:0004090. This enzyme would point to a GO Term object using a new hasGOTerm predicate. This GOTerm would then point to that term's GO aspect using a new hasGOAspect predicate, and to its URI: https://www.ebi.ac.uk/QuickGO/term/GO:0004090.
Clashes: At the moment, SyBiOnt has three different classes to describe GO terms, separated into the three main GO aspects: Molecular Function, Cellular Component, and Biological Process. I would argue that having a single GO term class that then points to its respective GO aspect is a better way of representing this. It makes it easier to search for objects with a specific known GO term, because you wouldn't need to know its GO Aspect in the first place.
The text was updated successfully, but these errors were encountered:
So, if you look at the SyBiOnt KB, I think you can do this in the ontology as it stands and the information is in there. Take the following example of a protein in there. Download the turtle file and search for the following:
bo:10695 a
You'll see you the following:
rdfs:subClassOf [ a owl:Restriction ; owl:onProperty sybio:hasFunction ; owl:someValuesFrom <http://purl.org/obo/owl/GO#GO_0003700>
The information is in there, but just not in a way that I'd intuitively know how to use / query over. It's essentially saying that the bo:10695 class has a restriction on the values its sybio:hasFunction property can take to <http://purl.org/obo/owl/GO#GO_0003700>. I think, conceptually, I find it odd because I'd expect the bo:10695 to be an instance, not a subclass -- something like the following:
bo:10695 a bo:374 -- i.e, an instance of the protein class, not a subclass.
Add the predicate you suggested (hasGOAnnotation) or use the existing sybio:hasFunction, so you can say that a Protein hasGOAnnotation GOTerm.
I don't know what implications this has for future work, but I would make an argument that I find the ontology difficult to use because I find the sub-classing non-intuitive (for my dataset). How do others feel?
Let's avoid having the hasGOTerm property. It does not add much useful information. Is it a molecular function or a biological process. Why don't we use sybio:hasFunction, for example?
NOTE: These are abstractions of terms I think should be added, not absolutes. The details of these implementations, especially naming, are definitely up for debate, please give feedback!
Class name: Gene Ontology (GO) Term
Purpose: You have a protein or gene and want to specify one of its GO terms. More specifically, you would want it to point to a URI that describes what the GO term is.
Example use case: You have a ketoreductase enzyme with Uniprot accession P16152, and a GO term GO:0004090. This enzyme would point to a GO Term object using a new hasGOTerm predicate. This GOTerm would then point to that term's GO aspect using a new hasGOAspect predicate, and to its URI: https://www.ebi.ac.uk/QuickGO/term/GO:0004090.
Clashes: At the moment, SyBiOnt has three different classes to describe GO terms, separated into the three main GO aspects: Molecular Function, Cellular Component, and Biological Process. I would argue that having a single GO term class that then points to its respective GO aspect is a better way of representing this. It makes it easier to search for objects with a specific known GO term, because you wouldn't need to know its GO Aspect in the first place.
The text was updated successfully, but these errors were encountered: