HCLS/OntologyTaskForce/OntologyCovering

Ontologies as Coverings

Description

One alternative to building upper ontologies (UO) first, is to consider constructing a "Covering Map" between apparent overlapping sets of "related" ontologies, which can serve as a guide for an UO at a later date. This concept comes out of Algebraic Topology, and states that disjoint sets of points in some space (ontologies A and B in this case) can all be surjectively (many-to-one) mapped onto a common overlapping space (X). That is, parts of A map into a region U of X where B also maps into: parts of A and B both coincide in U. However, not everything in A maps with B, or vise versa ; they only partially overlap in the covering. This is far less formal than the logical relationships used in first-order logic, but helps identify what should be commonly mapped in the universal (web) space.

To help illustrate this, if BioPax defines protein and Uniprot does so as well, then there is the possibility of (the community) agreeing to have a Covering Map for both of them, let's call it Bio-Cover (BC), that aligns both definitions of "proteins" onto the same covering point. Consequently, some, but not all parts of BioPax and Uniprot, are "stitched" together at agreeable points; the protein class in BioPax is not equal to the protein class in Uniprot, but they are mapped through some relation (R1) to the protein class of B:

R1(bpx:Protein, BC:Protein) && R1(uni:Protein, BC:Protein)

This is not necessarily congruent to owl:equivalentClass, since the classes can be co-covering but not internally consistent. Best to think of it as "tacking" ontological concepts together, which can be implemented using a select set of relations. Eventually (with sufficient numbers of stitched items) BC could evolve towards a more formal UO.

This idea was applied to the BioDash demo based on connecting multiple ontologies via select entity mappings. This allowed us to connect NCBI Gene data with Target classes and Therapeutic topics.