(update 30-9-2019: there are newer versions that can be used with or without the OE book)
Following the invitation by Deshen Moodley from the University of KwaZulu-Natal to give a guest lecture for his Ontology and Knowledge Based Systems fourth year (honours) course, I looked up the African Wildlife Ontology he intended to use and that was introduced in the A Semantic Web Primer book by Grigoris Antoniou and Frank van Harmelen [1]. Given the state of that tutorial ontology, I could not resist fiddling with it to make the tutorial ontology a little more comprehensive.
Googling for an existing version in OWL on the Web, I came across Guy Lapalme’s version that, however, gave me an error loading it in Protégé 4.1-beta due to the use of collection
in the definition of Herbivore. Having removed that and renamed the .xml extension into .owl, this version is renamed AfricanWildlifeOntology0.owl. The ontology has 10 classes and 3 object properties concerning animals such as Lion
, Giraffe
, Plant
, eats
, and is-part-of
. Note the annotations in the ontology that give an idea of what should be modelled (else: see 4.3.1 pages 119-133 in [1]). Upon running the reasoner, it will classify, among others, that Carnivore
is a subclass of Animal
.
All this is not really exciting though, and the tutorial ontology is not of a particularly good quality. First, I added knowledge: I played with proper parthood and added a few more plant parts and animals, such as Impala
, Warthog
, and RockDassie
, and also refined knowledge such that giraffes eat not only leaves but also twigs and there are omnivores, too. This version of the African Wildlife Ontology is named AfricanWildlifeOntology1.owl. With this additional knowledge, warthogs are classified as omnivores, lions as carnivores, giraffes as herbivores, and so on. We still miss out on having impalas classified as herbivores; what can—or should—you add to the ontology to achieve that?
However, adding classes and object properties to an ontology does not necessarily make a better quality ontology. One aspect that does with respect to the subject domain, is to refine the represented knowledge so as to limit the possible models, such as giraffes eating both leaves and twigs and adding more characteristics to the object properties, like that the is-part-of
is not only transitive, but also reflexive, and is-proper-part-of
is transitive and irreflexive or asymmetric (the latter we can add thanks to the increased expressiveness of OWL 2 DL compared to OWL-DL). Another aspect is purely engineering: if you intend to put your ontology online, you should name the ontology (in Protégé select “refactor” and “change ontology URI”) so that its contents can be identified appropriately on the Semantic Web. Third, we can improve the ontology’s quality by using a foundational ontology.
Foundational ontologies provide principal categories of kinds of entities and relations to give a basic structure to a reference or domain ontology. With it, you can avoid reinventing the wheel during ontology development by availing of outcomes from research into the foundations of ontologies and it can guide you to make the modelling process easier to carry out successfully. In addition, it facilitates linking your ontology with other ontologies that also adhere to a foundational ontology. Foundational ontologies contain basic categories such as IndependentContinuant
/Endurant
(roughly: to represent objects) and Occurent
/Perdurant
(informally: processes), and Quality
for representing attributes, and then their respective sub-categories, such as AmountOfMatter
, Feature
, PhysicalObject
, Achievement
, Function
, and SpatialRegion
; see, e.g., DOLCE, BFO, GFO, GUM, and SUMO.
For the sake of example, let us take DOLCE [2] to enrich the African Wildlife Ontology. To do this, we need to import into our wildlife ontology an OWLized version of DOLCE; in this case, we import DOLCE-lite.owl. Then, consider first the taxonomic component of DOLCE (see Wonderweb deliverable D18 Fig 2 p14 and Table 1 p15 or explore the imported ontology with its annotations). Where does Plant
fit in in the DOLCE categorisation? Giraffes drink water: where should we put Water
? Impalas run (fast); where should we put Running
? Lions eat impalas, and in the process, the impalas die; where should we put Death
? The answers can be found in AfricanWildlifeOntology2.owl. DOLCE is more than a taxonomy, and we can also inspect in more detail its object properties and reuse the already defined properties instead of re-inventing them. First, the African Wildlife Ontology’s is-part-of
is the same as DOLCE’s part
, and likewise for their respective inverses. Concerning the subject domain, here are a few modelling questions. The elephant’s Tusk
s (ivory) are made of Apatite
(calcium phosphate, an amount of matter); which DOLCE relation can be reused? Giraffes eat leaves and twigs; how do Plant
and Twig
relate? How would you represent the Size
(Height
, Weight
, etc.) of an average adult elephant; with DOLCE’s Quality
or an OWL data property? Answers to the former two questions are included in AfricanWildlifeOntology2.owl.
How does it work out when we import BFO into AfricanWildlifeOntology1.owl? Aside from minor differences (e.g., Death
is not a type of Achievement
as in DOLCE, but a ProcessBoundary
instead, and animals and plants are subtypes of Object
), there is a major difference with respect to the object properties (BFO has none). A possible outcome of linking the wildlife ontology to BFO is included in AfricanWildlifeOntology3.owl. To do these last two exercises with DOLCE and BFO in a transparent and reusable way, however, we need a mapping between the two foundational ontologies. Even more so: if there was a proper mapping, only one of the two exercises would have sufficed and the software would have taken care of the mappings between the two. But, alas, such a mapping and implementation is yet to be done.
One could take the development a step further by adding types of part-whole relations [3] so as to be more precise than only a generic part-of relation (e.g., Root
is a structural part of some Plant
and NatureReserve
is located-in some Country
) and/or consider a Content Ontology Design Pattern [4], such as being more finicky about names for plants and animals with, perhaps, the Linnaean Taxonomy content pattern or adding some information on the Climatic Zone where the plants and animals live, and so on. (But note that regarding content, one also can take a bottom-up approach to ontology development with resources such as the Environment Ontology or pick and choose from ‘semantified’ Biodiversity Information Standards etc.)
References
[1] Antoniou, G, van Harmelen, F. A Semantic Web Primer. MIT Press, 2003.
[2] Masolo, C., Borgo, S., Gangemi, A., Guarino, N., Oltramari, A. WonderWeb Deliverable D18–Ontology library. WonderWeb. 2003.
[3] Keet, C.M. and Artale, A. Representing and Reasoning over a Taxonomy of Part-Whole Relations. Applied Ontology, IOS Press, 2008, 3(1-2): 91-110.
[4] Presutti, V., Gangemi, A., David, S., de Cea, G. A., Surez-Figueroa, M. C., Montiel-Ponsoda, E., Poveda, M. A library of ontology design patterns: reusable solutions for collaborative design of networked ontologies. NeOn deliverable D2.5.1, Institute of Cognitive Sciences and Technologies (CNR). 2008.
Savanna ecosystems are vital for both economic and biodiversity values. In savannas worldwide, management decisions are based on the concept that wildlife and livestock compete for grassland resources[1-4], yet there are virtually no experimental data to support this assumption
Pingback: Nontransitive vs. intransitive direct part-whole relations in OWL « Keet blog
Pingback: 2010 in (blog) review « Keet blog
Pingback: Better off with foundational ontologies « Keet blog
Pingback: Questionable search terms for my blog « Keet blog
Pingback: Design rationale and overview of the African Wildlife tutorial ontologies | Keet blog