INCATools / ontology-development-kit

Bootstrap an OBO Library ontology
http://incatools.github.io/ontology-development-kit/
BSD 3-Clause "New" or "Revised" License
214 stars 54 forks source link

Wishlist: Include some kind of cycle detection facilities for obo graphs (obo files) #255

Open matentzn opened 5 years ago

cmungall commented 5 years ago

for subclass cycles, just use sparql?

matentzn commented 5 years ago

Yeah I was looking more for something like a verification mechanism that an ontology "is acyclic", which appears to be a requirement for the basic artefact.. sparql is probably the way to go.

cmungall commented 4 years ago

OK, so this is more general that just subclass cycles (which should be flagged automatically, as we will infer equivalence between named classes). You need to query over the basic graph.

Or what about this: if an ontology is basic, then create a root property P that is a superproperty of all object properties in the ontology. Declare P to be irreflexive, transitive. Then query for any C SubClassOf P some D & D SubClassOf P some C. May need EMR