Querying for connections between the GO and FMA

Can we query for connections between FMA and GO? This should be
possible by using a combination of

  • GO
  • Uberon
  • FMA
  • Axioms linking GO and Uberon (x-metazoan-anatomy)
  • Axioms linking FMA and Uberon (uberon-to-fma)

This may seem like more components than is necessary. However,
remember that GO is a multi-species ontology, and “heart development”
in GO covers not only vertebrate hearts, but also (perhaps
controversially) drosophila “hearts”. In contrast, the FMA class for
“heart” represents a canonical adult human heart. This is why we have
to go via Uberon, which covers similar taxonomic territory to GO. The
uberon class called “heart” covers all hearts.

GO to metazoan anatomical structures

http://purl.obolibrary.org/obo/go/extensions/x-metazoan-anatomy.owl contains axioms of the form:

'heart  EquivalentTo 'anatomical structure morphogenesis' and
'results in morphogenesis of' some uberon:heart

(note that sub-properties of ‘results in developmental progression of’
are used here)

Generic metazoan anatomy to FMA

http://purl.obolibrary.org/obo/uberon/bridge/uberon-bridge-to-fma.owl contains axioms of the form:

fma:heart EquivalentTo uberon:heart and part_of some 'Homo sapiens'


Note that there is no existential dependence between go ‘heart
development’ and fma:heart. This is as it should be – if there were no
human hearts then there would still be heart development
processes. This issue is touched in Chimezie Ogbuji‘s presentation at DILS 2012.

This lack of existential dependence has consequences for querying
connections. An OWL query for:

?p SubClassOf ‘results in developmental progression of’ some ?u

Will return GO-Uberon connections only.

We must perform a join in order to get what we want:

?p SubClassOf ‘results in developmental progression of’ some ?u,
?a SubClassOf ?u,
?a part_of some ‘Homo sapiens’

Actually executing this query is not straightforward. Ideally we would
have a way of using OWL syntax, such as the above. To get complete
results, either EL++ or RL reasoning is required. In the next post I’ll present some possible options for issuing this query.


Jim Balhoff has written a nice image depiction plugin for Protege4. Here it is in action showing uberon’s mouth.

uberon mouths

screenshot of uberon/depictions.owl using image depiction plugin

The plugin assumes that images are represent as individuals of type foaf:depicts some <Class>. For example:

Individual: wc:thumb/0/06/Mouth_illustration-Otis_Archives.jpg/180px-Mouth_illustration-Otis_Archives.jpg
Types: foaf:depicts some :UBERON_0000165

The plugin is available from github. You can try it on the uberon depictions owl file, http://purl.obolibrary.org/obo/uberon/depictions.owl.

Images are stored in a somewhat hacky way in uberon right now – as xrefs. There is a hacky way to translate them into the correct OWL – in future they will be stored directly with explicit OWL semantics. We will also include additional metadata about the image; for example (with IDs replaced by labels):

Individual: wc:180px-Mouth_illustration-Otis_Archives.jpg
Types: depicts some ('mouth' and part_of some 'Homo sapiens')
Annotations: description "Medical illustration of a human mouth by Duncan Kenneth Winter. Part of an unpublished manuscript on medical illustration written by Winter."

Individual: uberon/images/lamprey_sucker_rosava_3238889218.jpg
Types: depicts some ('mouth' and part_of some Petromyzontida)

Jim’s plugin makes use of the reasoner, so these species-specific depictions would show up in the generic uberon “mouth” class (unfortunately Elk0.2 doesn’t support individuals, and a fast reasoner like Elk is required for Uberon – however, Elk0.3, due very soon, should support individuals).

Many of the images in uberon were derived automatically by dbpedia SPARQL queries and may not have been verified. Whilst probably SFW, some of the depictions may be a little racy, so exercise caution whilst poking around the nether regions! The images in wikipedia are obviously human centric – it would be nice to have more sources for other animals. If anyone knows any sources that would be easy to mark up let me know.