190 likes | 303 Vues
This paper discusses the interoperability between OBO (Open Biological and Biomedical Ontologies) and OWL (Web Ontology Language), both crucial in the life sciences domain. By proposing formal specification of OBO syntax through BNF grammar and mapping OBO semantics to OWL 1.1, we aim to improve clarity, facilitate sharing of ontologies, and extend tool capabilities. The advantages include enhanced access to high-quality ontologies and tools across both communities, enabling better collaboration and leveraging the strengths of both languages.
E N D
Mapping OBO to OWL 1.1 Christine Golbreich & Ian Horrocks
OWL: W3C standard ontology language Large user community Many in life sciences Extensive library of ontologies High quality tools Formally specified syntax and semantics OBO: De facto standard ontology language Large user community Mainly in life sciences Extensive library of ontologies High quality tools Informally specified syntax and semantics OWL and OBO
OBO at a Glance • Ontology consists of a set of stanzas (frames) • Term stanzas define terms (classes), e.g. [Term] id: GO:0001555name: oocyte growthis_a: GO:0016049 ! cell growth relationship: part_of GO:0048601 ! oocyte morphogenesis intersection_of: GO:0040007 ! growth intersection_of: has_central_participant CL:0000023
OBO at a Glance • Ontology consists of a set of stanzas (frames) • Typedef stanzas define relationships (properties), e.g. [Typedef] id: propreo:is_described_by domain: propreo:chemical_entity range: __Description177
OBO at a Glance • Ontology consists of a set of stanzas (frames) • Instance stanzas define instances (individuals), e.g. [Instance] id: propreo:water_molecule instance_of: propreo:inorganic_solvent_molecule property_value: propreo:is_described_by propreo:CHEBI_15377
OBO and OWL • OBO$OWL interoperability would be useful • Sharing ontologies • Extending tool sets • Establishing exact relationship is not easy • OBO syntax not formally specified, e.g.: The intersection_of tag “indicates that this term represents the intersection of several other terms. The value is either a term id, or a relationship type id, a space, and a term id. [...]”
OBO and OWL • OBO$OWL interoperability would be useful • Sharing ontologies • Extending tool sets • Establishing exact relationship is not easy • OBO semantics not formally specified, e.g.: The relationship tag “describes a typed relationship between this term and another term. [...] cardinality constraints specify the number of relationships of a given type that may be defined for instances of this term [...]”
Proposed Solution • Formalise OBO syntax using BNF grammar, e.g.: The intersection_of tag “indicates that this term represents the intersection of several other terms. The value is either a term id, or a relationship type id, a space, and a term id. [...]” a intersection := intersection of:termOrRestrtermOrRestr := term-id | restrictionrestriction := relationship-id term-id
Proposed Solution • Formalise OBO semantics via mapping to OWL 1.1 relationship: R C minCardinality=3 a ObjectMinCardinality(3 R C)
Proposed Solution • Formalise OBO semantics via mapping to OWL 1.1 [Term] id: Aname: Example Classis_a: B relationship: R C minCardinality=3 aSubClassOf(A B)SubClassOf(A ObjectMinCardinality(3 R C))EntityAnnotation(OWLClass(A) Label(“Example Class”))
Advantages of Our Approach? • Clarifies and disambiguates OBO syntax • E.g., can a relationship have more than one range? typedef-stanza := ‘[Typedef]’ … [ 'range:' termOrReserved ] …
Advantages of Our Approach? • Clarifies and disambiguates OBO semantics • E.g., is cardinality qualified or not? relationship: R C minCardinality=3 aObjectMinCardinality(3 R C) • and what is the precise semantics? (ObjectMinCardinality(3 R C))I = { x | #{ y | ( x, y ) ∈ RI and y ∈ CI } ≥ 3 }
Advantages of Our Approach? • Can capture almost all of OBO in OWL 1.1, e.g.: [Typedef]id: locationtransitive_over: part_of aSubObjectPropertyOf( SubObjectPropertyChain(location part_of) location)) • Only fails to capture • “cyclic” relations (semantics?) • negative assertions about relations (e.g., not transitive)
Advantages of Our Approach? • Can easily extend OWL infrastructure to handle OBO • OWL API extended with OBO parser and serialiser • All tools built on top of API can now read/write OBO
Advantages of Our Approach? • Can easily extend OWL infrastructure to handle OBO • OWL API extended with OBO parser and serialiser • All tools built on top of API can now read/write OBO
Advantages of Our Approach? • Could easily extend OBO infrastructure to handle OWL • To exploit OWL reasoners • To handle (some) OWL ontologies
Advantages of Our Approach? • Could easily extend OBO infrastructure to handle OWL • To exploit OWL reasoners • To handle (some) OWL ontologies
Advantages of Our Approach? • OWL reasoners can deal with (most) OBO ontologies
Summary • OBO$OWL interoperability would be useful • Proposed solution is • Formalise OBO syntax using BNF grammar • Formalise OBO semantics via mapping to OWL 1.1 • Benefits include • Sharing of tools and ontologies • OWL community gets access to OBO ontologies(and major ongoing development effort) • OBO community gets access to OWL tools(and major ongoing development effort)