Introduction to Ontology Engineering, with emphasis on Semantic Web Technologies



You have arrived at the start page of the course on ontology engineering that will be held from 26-30 July 2010 at the Knowledge Representation and Reasoning Group, Meraka Institute, CSIR, Pretoria, South Africa as part of the Masters Ontology Winter School 2010, and taught by Maria Keet from the KRDB Research Centre, Free University of Bozen-Bolzano, Italy.



Aims of the course


The principal aim of this course is to provide the participant with a comprehensive overview of ontology engineering, so that the participant will be aware of the main topics that influence the development of an ontology. Due to the introductory nature, the scope is breath of the discipline, not depth. Participant with a different background will obtain a sufficient general basis to delve into preferred sub-topics themselves and/or take advanced courses in such sub-topics of ontology engineering.

A secondary aim is to provide hands-on experience in ontology development that illustrate the theory, including language features, reasoning, ontology reuse, and bottom-up ontology development.





This introductory course on ontology engineering for the Semantic Web covers material to understand the notion of what ontologies are, what they can be used for, OWL to represent ontologies, and basic aspects to develop ontologies. Ontology development focuses on the two principled approaches---top-down with Ontology and foundational ontologies and bottom-up using non-ontological resources such as relational databases, natural language or thesauri---and addresses some aspects of methods and methodologies.

Depending on the background, time, and interest of the participants, an elective topic will be chosen, being vagueness, temporal aspects, or modelling and reasoning challenges.



Housekeeping issues


-       This course consists of lectures and exercises that will be carried out in small groups.

-       Following the lectures and gaining the most of the course will be easier when you have read the required reading beforehand, in particular given that the schedule is tight and squeezed into one week.

-       Each lecture takes about 1.5 hours, labs 45 minutes.

-       Details about lab exercises and sample exam questions will be provided during the course.

-       Slides will be made available on this page at the end of the course (but note that they do not suffice as a neat summary of the contents). Download the course slides (14MB) or the handouts (5.5MB, 6 on 1 page)

-       It is assumed the participant is familiar with first order logic and conceptual data modelling, such as UML and ER.

-       The topics covered in this course are of an introductory nature and due to time constraints only a selection of core and elective topics will be addressed. There is a more comprehensive list of topics that can be spread out over an entire MSc degree programme.

-       The following references are required reading: 1, 5, 12, 13, 21, 22 first part or 23, 26, 41, 44, 45 (part), 49, 50, and recommended reading: 7, 8, 10, 24, 31 (part), 43, 49, 57, 60, 65; the remainder of the references are optional reading, depending on one's interests and background knowledge.



Outline of the course

Introduction to Ontology Engineering, with emphasis on Semantic Web Technologies

1. Introduction

1.1 What is an ontology?

1.2 What is the usefulness of an ontology?

1.3 Success stories

2. Ontology languages

2.1 OWL

2.3 OWL 2

3. Foundational and Top-down aspects

3.1 Foundational ontologies

3.2 Part-whole relations

3.3 Ontology Design Patterns

4. Bottom-up ontology development

4.1 Relational databases and related 'legacy' KR

4.2 Natural language processing and ontologies

4.3 Biological models and thesauri

5. Methods and methodologies

5.1 Design parameters and their dependencies

5.2 Methods: OntoClean and Debugging

5.3 Methodologies and tools

6. Extra topics

6.1 Uncertainty and vagueness

6.2 Time and Temporal Ontologies

6.3 Challenges in representation and reasoning over ontologies and social aspects


A. Books and journals about ontologies

B. Course References



Course Schedule

(subject to change)



Mo. July 26

Tue. July 27

Wed. July 28

Thu. July 29

Fri. July 30



Foundational ontologies,



Methods & Tools


Part-whole relations I

Bottom-up, RDBMSs











Part-whole relations II

NLP, biomodels

OntoClean & Debugging

Extra topic: challenges








OWL 2, reasoning


















1. Introduction





2. Ontology languages





3. Top-down: Foundational aspects




4. Bottom-up ontology development




5. Methods and Methodologies




6. Extra topic













1. Introduction


1.1 What is an ontology?


To place an ontology engineering course in its right context, the first two questions one has to ask and answer are: What is an ontology? and What is it good for? (or: what problems does it solve?)

There is no unanimously agreed-upon definition what an ontology is and proposed definitions within computer science have changed over the past 20 years; see e.g., Guarino's landmark paper[1] and here within a broader scope of the ontological level[2] and a more recent overview about definitions of "an ontology" versus Ontology in philosophy[3] that refines in a step-wise and more precise fashion Studer et al's (1998) definition of "An ontology is a formal, explicit specification of a shared conceptualization". For better or worse, currently and in the context of the Semantic Web, the tendency is toward it being equivalent to a logical theory, and a Description Logics knowledge base in particular—even formalizing a thesaurus in OWL then ends up as a simple 'ontology' (e.g., the NCI thesaurus as cancer ontology) and a conceptual data model originally in EER or UML becomes an 'application ontology' by virtue of being formalized in OWL. Salient aspects of the merits of one definition and other will pass the revue during the lecture. Orthogonally, there is a debate about ontology as a representation of a conceptualization and as a representation of reality, among others. For an initial indication of 'things that have to do with an ontology', Figure 1 shows the 2007 Ontology Summit's "Dimension map" that is by its authors intended as a "Template for discourse" about ontologies, which has a brief and longer explanation.


Figure 1. The OntologySummit2007's "Dimension map".


1.2 What is the usefulness of an ontology?


Ontologies for information systems were first proposed to contribute to solving the issues with data integration by means of providing a common vocabulary that is at one level of abstraction higher up than conceptual data models. The orchestration of the principal components will be described during the lecture, given that this is still an important usage area.


Over the years, ontologies have been shown to be useful in a myriad of other application scenarios. For instance, negotiation between software services, mediation between software agents, bringing more quality criteria into conceptual data modelling to develop a better model (hence, a better quality software system), orchestrating the components in semantic scientific workflows, e-learning, ontology-based data access, top-k information retrieval, management of digital libraries, improving the accuracy of question answering systems, and annotation and analysis of electronic health records.


However, this does not mean that ontologies are the panacea for everything, and some ontologies are better suitable to solve one or some of the problems, but not others. Put differently, it is prudent to keep one's approach to engineering: conduct a problem analysis first, collect the requirements and goals, and then assess if an ontology indeed is part of the solution or not. If so, then we enter in the ontology engineering area so as to make it work.


1.3 Success stories


To be able to talk about successes—and challenges—of ontologies, and its incarnation with Semantic Web Technologies in particular, one first needs to establish when something can be deemed a success, when it is a challenge, and when it is an outright failure. Such measures can be devised in an absolute sense (compare technology x with an ontology-mediated one: does it outperform on measure y?) and relative (to whom is technology x deemed successful?). During the lecture, we will illustrate some of the successes, whereas challenges are deferred to later on in the course.


A major success story of the development and use of ontologies for data linking and integration is the Gene Ontology[4], its offspring, and subsequent coordinated evolution of ontologies[5] within the OBO Foundry project. These frontrunners from the Gene Ontology Consortium and their colleagues in bioinformatics were adopters of some of the Semantic Web ideas even before Berners-Lee, Hendler, and Lassila wrote their Scientific American paper in 2001[6], even though they did not formulate their needs and intentions in the same terminology: they did want to have shared, controlled vocabularies with the same syntax, to facilitate data integration—or at least interoperability—across Web-accessible databases, have a common space for identifiers, it needing to be a dynamic, changing system, to organize and query incomplete biological knowledge, and, albeit not stated explicitly, it all still needed to be highly scalable [4]. That is, bioinformaticians and domain experts in genomics already organized themselves together in the Gene Ontology Consortium, which was set up officially in 1998 to realize a solution for these requirements. The results exceeded anyone's expectations in its success for a range of reasons. Many tools for the Gene Ontology (GO) and its common KR format, .obo, have been developed, and other research groups adopted the approach to develop controlled vocabularies either by extending the GO, e.g., rice traits, or adding their own subject domain, such as zebrafish anatomy and mouse developmental stages. This proliferation, as well as the OWL development and standardization process that was going on at about the same time, pushed the goal posts further: new expectations were put on the GO and its siblings and on their tools, and the proliferation had become a bit too wieldy to keep a good overview what was going on and how those ontologies would be put together. Put differently, some people noticed the inferencing possibilities that can be obtained from moving from obo to OWL and others thought that some coordination among all those obo bio-ontologies would be advantageous given that post-hoc integration of ontologies of related and overlapping subject domains is not easy. Thus came into being the OBO Foundry to solve such issues, proposing a methodology for coordinated evolution of ontologies to support biomedical data integration [3].


People in related disciplines, such as ecology, have taken on board experiences of these very early adopters, and instead decided to jump on board after the OWL standardization. They, however, were not only motivated by data(base) integration. Referring to Madin et al's paper[7], I highlight three points they made: "terminological ambiguity slows scientific progress, leads to redundant research efforts, and ultimately impedes advances towards a unified foundation for ecological science", i.e., identification of some serious problems they have in ecological research; "Formal ontologies provide a mechanism to address the drawbacks of terminological ambiguity in ecology", i.e., what they expect that ontologies will solve for them (disambiguation); and "and fill an important gap in the management of ecological data by facilitating powerful data discovery based on rigorously defined, scientifically meaningful terms", i.e., for what purpose they want to use ontologies and any associated computation (discovery using automated reasoning). That is, ontologies not as a—one of many possible—tool in the engineering infrastructure, but as a required part of a method in the scientific investigation that aims to discover new information and knowledge about nature (i.e., in answering the who, what, where, when, and how things are the way they are in nature).



Success in inferring novel biological knowledge has been achieved with classification of protein phosphatases[8], precisely thanks to the expressive ontology and its reasoning services.

Yet a different usage is to link ontologies to data[9] in such a way that is still scalable to GBs of data. This has been made end-user usable through a Web-based interface[10] so that the domain experts can formulate their desired queries at the 'what'-layer (concepts and relations in the ontology) instead of the 'how'-layer, thereby solving issues such as having to learn SQL (or SPARQL), knowing the structure of how the data is stored, and inflexibility of canned queries.


2. Ontology languages


Although perhaps more foundations in ontologies is useful before delving into how to represent what you want to represent, having a basic grasp of logic-based ontology languages also can help understanding the ontologies and ontology engineering better. Therefore, we shall refresh the basics of first order logic (comprehensive introductions can be found elsewhere[11]) and subsequently we will look at the motivations for and features of the Web Ontology Languages OWL and OWL 2. To put the OWL languages in their right location in the prominent technological infrastructure for deploying ontologies, the Semantic Web, you can have a look at the common layer cake picture in Figure 2 (for the beginner in 'modelling knowledge', there is also an OWL primer and for an introductory rationale for a Semantic Web and its technologies, Lee Feigenbaum's slides about the "Semantic Web Landscape" may be of interest).



Figure 2. The Semantic Web layer cake.


2.1 OWL


Before OWL, there were a plethora of ontology languages, such the obo format (directed acyclic graphs) mentioned in the previous section, KL-ONE, and F-logic (frames, and older versions of the Protégé ontology development tool), which, unsurprisingly, causes ontology interoperation problems even on the syntactic level. Within the Semantic Web layer cake, it appeared that RDFS had some problems to function as ontology language—expressive limitations, syntactic and semantic issues—which is what OWL aimed to address so as to provide a comprehensive ontology language for the Semantic Web. In addition to the RDFS issues, several predecessors to OWL had a considerable influence on the final product, most notably SHOE, DAML-ONT, OIL, and DAML+OIL, and, more generally, the fruits of 20 years of research on languages and prototyping of automated reasoners by the Description Logics (DL) community. What makes OWL a Semantic Web language compared to the regular DL languages, is that OWL uses URI references as names (like used in RDF, e.g.,, it gathers information into ontologies stored as documents written in RDF/XML including things like owl:imports, and it adds RDF data types and XML schema data types for the ranges of data properties (attributes).


In addition, there was a document of requirements and objectives that such an ontology langue for the Semantic Web should meet, which we shall address during the lecture. The "making of an ontology language" article[12] gives a general historical view and summary of OWL with its three species (OWL lite, OWL-DL, and OWL full) and the details of the standard can be found here, which will be summarized in the lecture. The article does not give you a clear definition of what an ontology is (other than a DL knowledge base), but instead gives some directions on they purposes it can be used for.


Over the past 5 years, OWL has been used across subject domains, but in particular in the heath care and life sciences disciplines, perhaps also thanks to the W3C interest group dedicated to this topic (the HCLS IG). Experimentation with the standard, however, revealed expected as well as unexpected shortcomings in addition to the ideas mentioned in the "Future extensions" section of  [12] so that a successor to OWL was deemed to be of value. Work towards a standardization of an OWL 2 took shape after the OWL Experiences and Directions workshop in 2007 and a final draft was ready by late 2008. On October 27 2009 it has become the official OWL 2 W3C recommendation.


2.3 OWL 2


What does this OWL 2 consists of, and what does it fix? The language aims to address (to a greater or lesser extent) the issues described in section 2 of[13], which is not quite a super- or subset of [12]'s ideas for possible extensions. For instance, the consideration to cater for the Unique Name Assumption did not make it into OWL 2, despite that it has quite an effect on the complexity of a language[14].


First, you can see the 'orchestration' of the various aspects of OWL 2 in Figure 3 below. The top section indicates several syntaxes that can be used to serialize the ontology, with RDF/XML being required and the other four optional. Then there are mappings between an OWL ontology and RDF graph in the middle, and the lower half depicts that there is both a direct semantics ("OWL 2 DL") and an RDF-based one  ("OWL 2 full").

Figure 3. Orchestration of syntax and semantics of OWL 2 (source).


Second, the OWL 2 DL species is based on the DL language called SROIQ(D)[15], which is more expressive than the base language of OWL-DL (SHOIN(D)) and therewith meeting some of the ontology modellers' requests, such as more properties of properties and qualified number restrictions. Then there is cleaner support for annotations, debatable (from an ontological perspective, that is) punning for metamodelling, and a deceptive 'key' functionality that is not a key in the common and traditional sense of keys in conceptual models and databases. Also, it irons out some difficulties that tool implementers had with the syntaxes of OWL and makes importing ontologies more transparent. To name but a few things.


Third, in addition to the OWL 2 DL version, there are three OWL 2 profiles, which are, strictly speaking, sub-languages of (syntactic restrictions on) OWL 2 DL so as to cater for different purposes of ontology usage in applications. This choice has its consequences that very well can, but may not necessarily, turn out to be a positive one; we shall dwell on this point in the part on ontology engineering methodologies. The three profiles are OWL 2 EL that is based on the EL++ language[16], OWL 2 QL that is based on the DL-LiteR language[17], and OWL 2 RL[18] that is inspired by Description Logic Programs and pD[19], which are intended for use with large relatively simple type-level ontologies, querying large amounts of instances through the ontology, and ontologies with rules and data in the form of RDF triples, respectively. Like with OWL 2 DL, each of these languages has automated reasoners tailored to the language so as to achieve the best performance for the application scenario. Indirectly, the notion of the profiles and automated reasoners says you cannot have it all together in one language and expect to have good performance with your ontology and ontology-driven information system. Such is life with the limitations of computers (why this is so, is taught in a theory of computing course), but one can achieve quite impressive results with the languages and its tools that are practically not really doable with paper-based manual efforts or OWL 2 DL. If you are a novice in computational complexity, you may want to consult an informal explanation of trade-offs between ontology languages and language features[20].


During this second section of the lecture, we discuss the OWL 2 features and profiles more comprehensively and provide context to the rationale how and why things ended up the way they did.



3. Foundational and Top-down aspects


Having an ontology language is one thing, but what to represent, and how, is quite another. Where do you start? How can you avoid reinventing the wheel? What things can guide you to make the process easier to carry it out successfully? How can you make the best of 'legacy' material? There are two principal approaches, being the so-called top-down and bottom-up ontology development; in this section, we focus on the former and in the next section on the latter.


3.1 Foundational ontologies


The basic starting point for top-down ontology development is to think of, and decide about, core principles. For instance, do you commit to a 3D view with objects persisting in time or a perdurantist one with space-time worms, are you concerned with (in OWL terminology) classes or individuals, is your ontology intended to be descriptive or prescriptive (see, e.g. beyond concepts[21], the WonderWeb deliverable[22], and a synopsis of the main design decisions for DOLCE[23])? Practically, the different answers to such questions end up as different foundational ontologies—even with the same answers they may be different. Foundational ontologies provide a high-level categorization about the kinds of things you will model, such as process, non-agentive-physical-object, and (what are and) how to represent 'attributes' such as Colour and Height (e.g., as qualities or some kind of dependent continuant or trope.).


There are several such foundational ontologies, such as DOLCE, BFO, GFO, natural language focused GUM, and SUMO. Within the Wonderweb project, the participants realized it might not be feasible to have one single foundational ontology that pleases everybody; hence, the idea was to have a library of foundational ontologies with appropriate mappings between them so that each modeller can choose his or her pet ontology and the system will sort out the rest regarding the interoperability of ontologies that use different foundational ontologies. The basis for this has been laid with the Wonderweb deliverable D18, but an implementation is yet to be done. One of the hurdles to realize this, is that people who tend to be interested in foundational ontologies start out formalizing the basic categories in a logic of their convenience (which is not OWL). For instance, DOLCE—the Descriptive Ontology for Linguistic and Cognitive Engineering—has a paper-based formalisation in a first order predicate logic, and subsequent trimming down in lite and ultralite OWL versions. BFO—the Basic Formal Ontology—, too, has a version of it in first order logic in Isabelle syntax.


In the meantime, leaner OWL versions of DOLCE and BFO have been made available, which are intended to be used for development of ontologies in one's domain of interest. These files can be found on their respective websites at the LOA and IFOMIS. To read them leisurely and make a comparison—and finding any correspondence—of the two foundational ontologies somewhat easier, I have exported the DOLCE-lite and BFO 1.1 OWL versions in a Description Logics representation and Manchester syntax rendering (generated with the Protégé 4.0 ontology development tool). Whereas DOLCE-Lite is encoded in the DL language that is characterized by SHI, BFO is simpler (in ALC); that is, neither one uses all OWL-DL capabilities of SHOIN(D). Another difference is that BFO-in-owl is only a bare taxonomy (extensions do exist though), whereas DOLCE-Lite makes heavy use of object properties. More aspects of both foundational ontologies will be addressed in the lecture.


DOLCE contains several relations it deems necessary for a foundational ontology. BFO, on the other hand, has a taxonomy, a separate theory of parthood relations, and an extension including the Relation Ontology. The Relation Ontology[24] was developed to assist ontology developers in avoiding errors in modelling and assist users in using the ontology for annotations, and such that several ontologies would use the same set of agreed-upon defined relations to foster interoperability among the ontologies. Philosophically, it is still a debate what then the 'essential' relations are to represent reality, and if those included are good enough, are too many or too few. Currently, several extensions to the RO are under consideration and refinements have been proposed, such as for RO's transformation_of[25] that avails of theory underlying OntoClean (that we address in a later lecture) and the derived_from relation.


3.2 Part-whole relations


A, if not the, essential relation is the part-whole relation. Aside from workarounds mentioned in the Semantic Web best practices document about part-whole relations  and further confusion by OWL developers [13] [15], part-whole relations are deemed essential by the most active adopters of ontologies—i.e., bio- and medical scientist—while its full potential is yet to be discovered by, among others, manufacturing. A few obvious examples are how to represent plant or animal anatomy, geographic information data, and components of devices. And then the need to reason over it. For instance, when we can deduce which part of the device is broken, then only that part has to be replaced instead of the whole it is part of (saving a company money), and one may want to deduce that when I have an injury in my ankle, I have an injury in my limb, but not deduce that if you have an amputation of your toe, you also have an amputation of your foot that the toe is (well, was) part of. If a toddler swallowed a Lego brick, it is spatially contained in his stomach, but one does not deduce it is structurally part of his stomach (normally it will leave the body unchanged through the usual channel). This toddler-with-lego-brick gives a clue why, from an ontological perspective, equation 23 in [13] is incorrect (in addition to being prohibited by OWL 2 DL anyway).


To shed light on part-whole relations and sort out such modelling problems, we will look first at mereology (the Ontology take on part-whole relations), and to a lesser extent meronymy (from linguistics), and subsequently structure the different terms that are perceived to have something to do with part-whole relations into a taxonomy of part-whole relations[26]. This, in turn, is to be put to use, be it with manual or software-supported guidelines to choose the most appropriate part-whole relation for the problem, and subsequently to make sure that is indeed represented correctly in an ontology. The latter can be done by availing of the so-called RBox Reasoning Service. All this will not solve each modelling problem of part-whole relations, but at least provide you with a sound basis.


Various extensions to mereology are being investigated, such as mereotopology, the notion of essential parthood[27], and mereogeometry. We shall touch upon basic aspects for mereotopology; the interested reader may want to consult, among others, ontological foundations[28], the introduction of the RCC8 spatial relations[29], and exploration toward integrating RCC8 with OWL[30].


3.3 Ontology Design Patterns


A different approach to the reuse of principal notions, is to use ontology design patterns (ODPs), which is inspired by the idea of software design patterns. Basically, ODPs provide mini-ontologies with formalised knowledge for how to go about modelling reusable pieces, e.g. an -ary relation or a relation between data type values, in an ontology (in OWL-DL), so that one can do that consistently throughout the ontology development and across ontologies. ODPs for specific subject domains are called content ODPs, such as the 'sales and purchase order contracts' or the 'agent role' to represent agents, the roles they play, and the relations between them, and even an attempt to consistently represent the classification scheme invented by Linnaeus with an ODP.


There are several different types of ODPs, which are summarized in Figure 4, which was taken from the rather comprehensive deliverable about ODPs[31].

Figure 4. Categorisation of types of ontology design patterns.



Other foundational ontology aspects, such as philosophy of language, modal logic, change in time, properties, and dependence, will not be addressed in this course. The free online Stanford Encyclopedia of Philosophy contains comprehensive, entry-level readable, overviews of such foundational issues.


4. Bottom-up ontology development


Bottom-up ontology development starts from the other end of the spectrum, where it may be that the process is at least informed by foundational ontologies. Principally, one can distinguish between (i) transforming information or knowledge represented in one logic into an OWL species, (ii) transforming somewhat structured information into an OWL species, (iii) starting at the base. Practically, this means starting from some 'legacy' material (i.e., not-Semantic Web and, mostly, not-ontology), such as, but not limited to:

1.    Databases

2.    Conceptual models (ER, UML)

3.    Frame-based systems

4.    OBO format

5.    Thesauri

6.    Biological models

7.    Excel sheets

8.    Tagging, folksonomies

9.    Output of text mining, machine learning, clustering

Figure 5 gives an idea as to how far one has to 'travel' from the legacy representation to a 'Semantic Web compliant' one (and, correspondingly, put more effort into realize it).


Figure 5. Various types of less and more comprehensively formalised 'legacy' resources.


Given the limited time available, we shall not discuss all variants. Instead, we shall focus taking databases as source material, biological models, thesauri, and NLP.


4.1 Relational databases and related 'legacy' KR


Some rather informal points about reverse engineering from databases to ontologies  will be structured briefly; a more formal account can be found in, e.g.,[32]. In the best situation, a first pass of reverse engineering a database schema results in one of the possible logical models (i.e., for RDBMSs, the relational model), another pass brings one up to the conceptual data model (such as ER, ORM)[33], and then one can commence with the ontological analysis and conversion to a suitable logic language (in this setting: an OWL species). Among others, the Object Management Group's Ontology definition metamodel is exploring interactions between UML and OWL & RDF.

Imperfect transformations from other languages, such as the common OBO format[34]  and a pure frames-based approach[35], are available as well, which also describe the challenges to create them. While the latter two do serve a user base, their overall impact on widespread bottom-up development is very likely to be less than the potential that might possibly be unlocked with leveraging knowledge of existing (relational) databases. One may be led to assume this holds, too, for text processing (NLP) as starting point for semi-automated ontology development, but the results have not been very encouraging yet.


4.2 Natural language processing and ontologies


There is a lot to be said about how Ontology, ontologies, and natural language interact from a philosophical perspective up to the point that different commitments lead to different features and, moreover, limitations of a (Semantic Web) application[36]. In this lecture, however, more emphasis will be put on the interaction of NLP and ontologies from an engineering perspective.


Natural language processing (NLP) can be useful for ontology development, it can be used as a component in an ontology-driven information system and an NLP application can be enhanced with an ontology. Which approaches and tools suit best depends on the goal (and background) of its developers and prospective users, ontological commitment, and available resources.


Summarising the possibilities for "something natural language text" and ontologies or ontology-like artifacts, we can:

  • Use ontologies to improve NLP: to enhance precision and recall of queries (including enhancing dialogue systems[37]), to sort results of an information retrieval query to the digital library (e.g. GoPubMed[38]), or to navigate literature (which amounts to linked data[39]).
  • Use NLP to develop ontologies (TBox): mainly to search for candidate terms and relations, which is part of the suite of techniques called 'ontology learning'[40].
  • Use NLP to populate ontologies with instances (ABox): e.g., document retrieval enhanced by lexicalised ontologies and biomedical text mining [pdf][41].
  • Use it for natural language generation (NLG) from a formal language: this can be done using a template-based approach that works quite well for English but much less so for grammatically more structured languages such as Italian[42], or with a full-fledged grammar engine as with the Attempto Controlled English and bi-directional mappings (see for a discussion[43]).

Intuitively, one may be led to think that simply taking the generic NLP or NLG tools will do fine also for the bio(medical) domain. Any application does indeed use those techniques and tools—Paul Buitelaar's slides have examples and many references to NLP tools—but, generally, they do not suffice to obtain 'acceptable' results. Domain specific peculiarities are many and wide-ranging. For instance, to deal with the variations of terms (scientific name, variant, common misspellings) and the grounding step (linking a term to an entity in a biological database) in the ontology-NLP preparation and instance classification side [41], to characterize the question in a question answering system correctly (e.g., [26]), and to find ways to deal with the rather long strings that denote a biological entity or concept or universal [40]. Some of such peculiarities actually generate better overall results than in generic or other domain-specific usages of NLP tools, but it requires extra manual preparatory work and a basic understanding of the subject domain and its applications.


4.3 Biological models and thesauri


Two examples that, by basic idea at least, can have a large impact on domain ontology development will be described during the lecture: taking biological models (or any other structured graphical representation) as basis[44]—which amounts to formalizing the graphical vocabulary in textbooks and drawing tools—and the rather more cumbersome one of sorting out thesauri[45],[46], which faces problems such as what to do with its basic notions (e.g., "RT: related term") in a more expressive OWL ontology. Both examples have abundant similar instances in science, medicine, industry, and government, and, undoubtedly, some more automation to realize it would be a welcome addition to ease the efforts to realize the Semantic Web.



5. Methods and methodologies


The previous lectures have given you a basic idea about the two principal approaches for starting to develop an ontology—top-down and bottom-up—but they do not constitute an encompassing methodology to develop them. In fact, there is no proper, up-to-date comprehensive methodology for ontology development like there is for conceptual model development (e.g., Halpin[47]) or 'waterfall' versus 'agile' software development methodologies. There are many methods and, among others, the W3C's Semantic Web best practices, though, which to a greater or lesser extent can form part of a comprehensive ontology development methodology.

5.1 Design parameters and their dependencies


Ontology development methodologies provide scenarios, but they do not address the dependencies between the permutations at the different stages in the development process. As a first step towards methodologies that gives a general scope, we will look at a range of parameters that affect ontology development in one way or another[48]. The parameters considered are: nine main purpose(s) of the ontology, reuse of the three main types of ontologies, eight different ways for bottom-up ontology development, eight ontology languages, and four types of reasoning services. All dependencies between these parameters have been assessed, such as which purpose necessarily limits one to a given language, and useful combinations are motivated[49]. The dependencies are due to, primarily, computational challenges and types and subject domain of the ontologies. This analysis is assessed against a set of ontologies and a survey among ontology developers, whose results concur with the theoretical assessment.



5.2 Methods: OntoClean and Debugging


Methods that help the ontologist in certain tasks of the ontology engineering process include, but are not limited to, assisting the modelling itself, how to integrate ontologies, and supporting software tools. We will take a closer look at OntoClean[50] that contributes to modelling taxonomies. One might ask oneself: who cares, after all we have the reasoner to classify our taxonomy anyway, right? Indeed, but that works only if you have declared many properties for the classes, which is not always the case, and the reasoner sorts out the logical issues, but not the ontological issues. OntoClean uses several notions from philosophy, such as rigidity, identity criteria, and unity[51],[52] to provide modelling guidelines. For instance, that anti-rigid properties cannot subsume rigid properties; e.g., if we have, say, both Student and Person in our ontology, the former is subsumed by the latter. The lecture will go into some detail of OntoClean.


If, on the other hand, you do have a rich ontology and not mostly a bare taxonomy, 'debugging' by availing of an automated reasoner is useful in particular with larger ontologies and ontologies represented in an expressive ontology language. Such 'debugging' goes under terms like glass box reasoning[53], justification[54], explanation[55], and pinpointing errors. While they are useful topics, we will spend comparatively little time on it, because it requires some more knowledge of Description Logics and its (mostly tableaux-based) reasoning algorithms. Those techniques use the automated reasoner to at least locate modelling errors and explain in the most succinct way why this is so, instead of just returning a bunch of inconsistent classes; proposing possible fixes is yet a step further.


5.3 Methodologies and tools


Aside from parameters, methods, and tools, there are only few methodologies, which are even coarse-grained: they do not (yet) contain all the permutations at each step, i.e., what and how to do each step, given the recent developments. A comparatively comprehensive methodology is Methontology[56], which has been applied to various subject domains since its development in the late 1990s (e.g., the chemicals[57] and legal domain[58]). While some practicalities are superseded with more recent[59] and even newer languages, tools, and methodologies[60], some of the core aspects still hold. The five main steps are: specification, conceptualization (with intermediate representations, such as in text or diagrams, like with Object-Role Modeling and pursued by the MOdelling wiKI MOKI that was developed during the APOSDLE project for work-integrated learning[61]), formalization, implementation, and maintenance. Then there are various supporting tasks, such as documentation and version control.


Last, but not least, there are many tools around that help you with one method or another. WebODE aims to support Methontology, the NeOn toolkit aims to support distributed development of ontologies, RacerPlus for sophisticated querying, Protégé-PROMPT for ontology integration (there are many other plug-ins for Protégé), SWOOGLE to search across ontologies, OntoClean with Protégé, and so on and so forth. For much longer listings of tools, see the list of semantic web development tools [html] (updated), the plethora of ontology reasoners and editors, and range of semantic wiki projects engines and features for collaborative ontology development. Finding the right tool to solve the problem at hand (if it exists) is a skill of its own and it is a necessary one to find a feasible solution to the problem at hand. From a technologies viewpoint, the more you know about the goals, features, strengths, and weaknesses of available tools (and have the creativity to develop new ones, if needed), the higher the likelihood you bring a potential solution of a problem to successful completion.



6. Extra topics


There are many topics in ontology engineering that deserve attention, which range form foundational issues, to engineering solely in the scope of the Semantic Web, to application areas with respect to peculiarities of a particular subject domain. For instance, ontology matching and alignment[62] has a 'long' history (since the mid-1990s[63]) whereas modularization is a current hot topic with a flurry of recent papers[64], the interaction of ontology with conceptual data models and reasoning should be, and work toward temporal ontologies is on the rise, whereas the social dimension of ontology engineering is inherent in the endeavour. Here I will briefly describe some of these topics, of which we can choose one, depending on the interest of the participants and remaining time available.


6.1 Uncertainty and vagueness


This advanced ontology engineering topic concerns how to cope with uncertainty and vagueness in ontology languages and their reasoners—and what we can gain from all the extra effort. At the time of writing, this elective topic is mainly focused on theory and research.


Consider, for instance, information retrieval: to which degree is a web site, a page, a text passage, an image, or a video segment relevant to the information need and an acceptable answer to what the user was searching for? Or in the context of ontology alignment, one would want to know (automatically) to which degree the focal concepts of two or more ontologies represent the same thing, or are sufficiently overlapping. In an electronic health record system, one may want to classify patients based on their symptoms, such as throwing up often, having a high blood pressure, and yellowish eye colour. How can software agents do the negotiation for your holiday travel plans that are specified imprecisely, alike "I am looking for a package holiday of preferably less than 1000 euro, but really no more that 1150 euro, for about 12 days in a warm country"?


The main problem to solve, then, is what and how to incorporate such vague or uncertain knowledge in OWL and its reasoners. To clarify these two terms upfront:

  • Uncertainty: statements are true or false, but due to lack of knowledge we can only estimate to which probability / possibility / necessity degree they are true or false;
  • Vagueness: statements involve concepts for which there is no exact definition (such as tall, small, close, far, cheap, expensive), which are then true to some degree, taken from a truth space.

The two principal approaches regarding uncertainty and the Semantic Web are probabilistic and possibilistic languages, ontologies, and reasoning services, where the former way of dealing with uncertainty receives a lot more attention than the latter. The two principal approaches regarding vagueness and the semantic web are fuzzy and rough extensions, where fuzzy receives a lot more attention compared to the rough approach. The lecture will cover all four approaches to a greater (probabilistic, fuzzy) and lesser (possibilistic, rough) extent.


None of the extant languages and automated reasoners that can cope with vague or uncertain knowledge have made it into mainstream Semantic Web tools yet. There was a W3C incubator group on uncertainty, but it remained at that. This has not stopped research in this area; on the contrary. There are two principle strands in these endeavours: one with respect to extending DL languages and its reasoners, such as Pronto that combines the Pellet reasoner with a probabilistic extension and FuzzyDL that is a reasoner for fuzzy SHIF(D), and another strand that uses different techniques underneath OWL, such as Bayesian networks for probabilistic ontologies (e.g., PR-OWL), and Mixed Integer Logic Programming for fuzzy ontologies. Within the former approach, one can make a further distinction between extensions of tableaux algorithms and rewritings to a non-uncertain/non-vague standard OWL language so that one of the generic DL reasoners can be used. For each of these branches, there are differences as to which aspects of probabilistic/possibilistic/fuzzy/rough are actually included.


We shall not cover all such permutations in the lecture, but instead focus on general aspects of the languages and tools. A good introductory overview can be found in[65] (which also has a very long list of references to start delving into the topics (you may skip the DLP section)).  Depending on your background education, you may find the more technical overview[66] useful as well. To get an idea of one of the more recent results on rough DL-based ontologies, you might want to glance over the theory and experimentation[67],[68]. Last, I assume you have a basic knowledge of probability theory and fuzzy sets; if there are many people who do not, I will adjust the lecture somewhat, but you are warmly advised to look it up before the lecture if you do not know about it (even if it is only the respective Wikipedia entry).


6.2 Time and Temporal Ontologies


There are requests for including a temporal dimension in OWL; for instance, you can check the annotations in the OWL files of BFO and DOLCE (or, more conveniently, search for "time" in the pdf) where they mention temporality that cannot be represented in OWL, or SNOMED CT's concepts like "Biopsy, planned" and "Concussion with loss of consciousness for less than one hour" where the loss of consciousness still can be before or after the concussion, or a business rule alike 'RentalCar must be returned before Deposit is reimbursed' or the symptom HairLoss during the treatment Chemotherapy, and Butterfly is a transformation of Caterpillar.


Unfortunately, there is no single (computational) solution to address all these examples at once. Thus far, it is a bit of a patchwork, with, among many aspects, the Allen's interval algebra (qualitative temporal relations, such as before, during, etc.), Linear Temporal Logics (LTL), and Computational Tree Logics (CTL, with branching time), and a W3C Working draft of a time ontology.


If one assumes that recent advances in temporal Description Logics may have the highest chance of making it into a temporal OWL (tOWL)—although there are no proof-of-concept temporal DL modelling tools or reasoners yet—then the following is 'on offer'. A very expressive (undecidable) DL language is DLRus (with the until and since operators), which already has been used for temporal conceptual data modelling[69] and for representing essential and immutable parts and wholes[70]. A much simpler language is TDL-Lite[71], which is a member of the DL-Lite family of DL languages of which one is the basis for OWL 2 QL; but these first results are theoretical, hence no "lite tOWL" yet. It is already known that EL++ (the basis for OWL 2 EL) does not keep the nice computational properties when extended with LTL, and results with EL++ with CTL are not out yet. If you are really interested in the topic, you may want to have a look at a recent survey[72] or take a broader scope with any of the four chapters from the KR handbook[73] (that cover temporal KR&R, situation calculus, event calculus, and temporal action logics), and several people with the KRDB Research Centre work on temporal knowledge representation & reasoning.  Depending on the remaining time during the lecture, more or less about time and temporal ontologies will pass the revue.


6.3 Challenges in representation and reasoning over ontologies and social aspects


The challenges for Semantic Web Technologies (SWT) in general (and for bio-ontologies in particular) are quite diverse, of which some concern the SWT proper and others are by its designers—and W3C core activities on standardization—considered outside their responsibility but still need to be done. Currently, for the software aspects, the onus is put on the software developers and industry to pick up on the proof-of-concept and working-prototype tools that have come out of academia and to transform them into the industry-grade quality that a widespread adoption of SWT requires. Although this aspect should not be ignored, we shall focus on the language and reasoning limitations during the lecture.


In addition to the language and corresponding reasoning limitations that passed the revue in the lectures on OWL, there are language limitations discussed and illustrated at length in various papers, with the most recent take by Schulz and co-authors[74], where it might well be that extensions like the ones about uncertainty, vagueness and time can ameliorate or perhaps even solve the problem. Some of the issues outlined by Schultz and coauthors are modelling pitfalls, whereas others are real challenges that can be approximated to a greater or lesser extent. We shall look at several representation issues that go beyond the earlier examples of SNOMED CT's "brain concussion without loss of consciousness"; e.g. how would you represent in an ontology that in most but not all cases hepatitis has as symptom fever, or how would you formalize the defined concept "Drug abuse prevention", and (provided you are convinced it should be represented in an ontology) that the world-wide prevalence of diabetes mellitus is 2.8%? One has to note, however, the initial outcome of a survey conducted with ontology developers[75]: there were discrepancies between the language features that were actually used in the ontology and the perceived requirements for language features selected by the survey respondents. This goes in both directions, i.e., where more features were requested than have been used in the ontology they were involved in and more features were used than were requested. Given that selecting an ontology language is important for all four other design parameters, it deserves further investigation how to overcome this mismatch.


Concerning challenges for automated reasoning, we shall look at two of the nine identified required reasoning scenarios[76], being the "model checking (violation)" and "finding gaps in an ontology and discovering new relations", thereby reiterating that it is the life scientists' high-level goal-driven approach and desire to use OWL ontologies with reasoning services to, ultimately, discover novel information about nature. You might find it of interest to read about the feedback received from the SWT developers upon presenting that paper: some requirements are met in the meantime and new useful reasoning services were presented.


Some of these issues also have to do with the tension between the "montagues" and the "capulets". That is, social aspects, which are lightly described in[77], which is a write-up of Goble's presentation about the montagues and capulets at the SOFG'04 meeting. It argues that there are, mostly, three different types of people within the SWLS arena (it may just as well be applicable to another subject domain if they were to experiment with SWT, e.g., in public administration): the AI researchers, the philosophers, and the IT-savvy domain experts. They each have their own motivations and goals, which, at times, clash, but with conversation, respect, understanding, compromise, and collaboration, one will, and can, achieve the realisation of theory and ideas in useful applications.




A. Books and journals about ontologies


This is a selection of books on ontologies that focus on different aspects of the endeavour; more books are on sale that specialize in a specific subtopic. However, they are generally specialized books presenting relatively new research, or handbooks at best, but none of them is a real textbook (be they suitable for self-study or not).


Ontology and Ontologies


Steffen Staab and Rudi Studer (Eds.). Handbook on ontologies. 2009.


Zalta (Ed.). Stanford Encyclopedia of Philosophy. 2010.


Ontology Engineering


Gomez-Perez, A., Fernandez-Lopez, M., Corcho, O. Ontological Engineering. Springer Verlag London Ltd. 2004.


Ontologies in specific subject domains


Baker, C.J.O., Cheung, H. (Eds). Semantic Web: revolutionizing knowledge discovery in the life sciences. Springer: New York, 2007, 225-248.


Semantic Web Technologies


Pascal Hitzler, Markus Kroetzsch, Sebastian Rudolph. Foundations of Semantic Web Technologies. Chapman & Hall/CRC, 2009, 455p.


Various subtopics in ontologies


Jerome Euzenat and Pavel Shvaiko. Ontology Matching. Springer. 2007.


Heiner Stuckenschmidt, Christine Parent, Stefano Spaccapietra (Eds.). Modular Ontologies—Concepts, Theories and Techniques for Knowledge Modularization. Springer. 2009.


Chu-ren Huang, Nicoletta Calzolari, Aldo Gangemi, Alessandro Lenci, Alessandro Oltramari, Laurent Prevot (Eds.). Ontology and the lexicon. Cambridge University Press. 2010.


General background material


Frank van Harmelen, Vladimir Lifschitz and Bruce Porter (Eds.). Handbook of Knowledge Representation. Elsevier, 2008, 1034p.


Hedman, S. (2004). A first course in logic—an introduction to model theory, proof theory, computability, and complexity. Oxford: Oxford University Press.


F. Baader, D. Calvanese, D. L. McGuinness, D. Nardi, and P. F. Patel-Schneider (Eds). The Description Logics Handbook – Theory and Applications. Cambridge University Press, 2003.


J. E. Hopcroft, R. Motwani, and J. D. Ullman. Introduction to Automata Theory, Languages, and Computation. Pearson Education, 2nd ed., 2001.


Halpin, T., Morgan, T. Information modeling and relational databases. 2nd Ed. Morgan Kaufmann. 2008.



Selection of journals that publish papers about ontologies



B. Course References


[1] Guarino, N. Formal Ontology in Information Systems. Proceedings of FOIS'98, Trento, Italy, June 6-8, 1998. IOS Press, Amsterdam, pp. 3-15

[2] Nicola Guarino. The Ontological Level: Revisiting 30 Years of Knowledge Representation. In: A.T. Borgida et al. (Eds.), Mylopoulos Festschrift. Springer LNCS 5600, 52–67. 2009.

[3] Nicola Guarino, Daniel Oberle, and Steffen Staab. What Is An Ontology? In: S. Staab and R. Studer, Handbook on Ontologies, Chapter 6. Springer. 2009. pp1-17.

[4] The Gene Ontology Consortium. Gene ontology: tool for the unification of biology. Nature Genetics, May 2000;25(1):25-9.

[5] Barry Smith, Michael Ashburner, Cornelius Rosse, Jonathan Bard, William Bug, Werner Ceusters, Louis J. Goldberg, Karen Eilbeck, Amelia Ireland, Christopher J Mungall, The OBI Consortium, Neocles Leontis, Philippe Rocca-Serra, Alan Ruttenberg, Susanna-Assunta Sansone, Richard H Scheuermann, Nigam Shah, Patricia L. Whetzel, Suzanna Lewis. The OBO Foundry: coordinated evolution of ontologies to support biomedical data integration. Nature Biotechnology 25, 1251-1255 (2007).

[6] Berners-Lee, Tim; James Hendler and Ora Lassila (May 17, 2001). The Semantic Web. Scientific American Magazine.

[7] Joshua S. Madin, Shawn Bowers, Mark P. Schildhauer and Matthew B. Jones. (2008). Advancing ecological research with ontologies. Trends in Ecology & Evolution, 23(3): 159-168

[8] Wolstencroft, K., Stevens, R., Haarslev, V. Applying OWL reasoning to genomic data. In: Semantic Web: revolutionizing knowledge discovery in the life sciences, Baker, C.J.O., Cheung, H. (eds), Springer: New York, 2007, 225-248.

[9] Diego Calvanese, Giuseppe De Giacomo, Domenico Lembo, Maurizio Lenzerini, Antonella Poggi, Mariano Rodriguez-Muro, and Riccardo Rosati. Ontologies and databases: The DL-Lite approach. In Sergio Tessaris and Enrico Franconi, editors, Semantic Technologies for Information Systems - 5th Int. Reasoning Web Summer School (RW 2009), volume 5689 of Lecture Notes in Computer Science, pages 255-356. Springer, 2009.

[10] Calvanese, D., Keet, C.M., Nutt, W., Rodriguez-Muro, M., Stefanoni, G. Web-based Graphical Querying of Databases through an Ontology: the WONDER System. ACM Symposium on Applied Computing (ACM SAC'10), March 22-26 2010, Sierre, Switzerland.

[12] Ian Horrocks, Peter F. Patel-Schneider, and Frank van Harmelen. From SHIQ and RDF to OWL: The making of a web ontology language. Journal of Web Semantics, 1(1):7, 2003.

[13] B. Cuenca Grau, I. Horrocks, B. Motik, B. Parsia, P. Patel-Schneider, and U. Sattler. OWL 2: The next step for OWL. Journal of Web Semantics: Science, Services and Agents on the World Wide Web, 6(4):309-322, 2008.

[14] Alessandro Artale, Diego Calvanese, Roman Kontchakov, and Michael Zakharyaschev. DL-Lite without the unique name assumption. In Proc. of the 22nd Int. Workshop on Description Logic (DL 2009), volume 477 of CEUR Electronic Workshop Proceedings,, 2009.

[15] I. Horrocks, O. Kutz, and U. Sattler. The Even More Irresistible SROIQ. In: Proc. of the 10th International Conference of Knowledge Representation and Reasoning (KR-2006), Lake District UK, 2006

[16] Franz Baader, Sebastian Brandt, and Carsten Lutz. Pushing the EL Envelope. In Proc. of the 19th Joint Int. Conf. on Artificial Intelligence (IJCAI 2005), 2005.

[17] Diego Calvanese, Giuseppe de Giacomo, Domenico Lembo, Maurizio Lenzerini, Riccardo Rosati. Tractable Reasoning and Efficient Query Answering in Description Logics: The DL-Lite Family. J. of Automated Reasoning, 39(3):385-429, 2007

[18] There are slides with more details and examples of OWL 2 RL, which are from the ESWC'09 tutorial given by Hitzler, Krotzsch, and Rudolf.

[19] Benjamin N. Grosof, Ian Horrocks, Raphael Volz, and Stefan Decker. Description Logic Programs: Combining Logic Programs with Description Logic. In Proc. of the 12th Int. World Wide Web Conference (WWW 2003), Budapest, Hungary, 2003. pp. 48-57.

[20] Keet, C.M. and Rodriguez, M. Toward using biomedical ontologies: trade-offs between ontology languages. AAAI 2007 Workshop on Semantic e-Science (SeS'07), 23 July 2007, Vancouver, Canada. AAAI 2007 TR WS-07-11, 65-68.

[21] Barry Smith. Beyond Concepts, or: Ontology as Reality Representation. Achille Varzi and Laure Vieu (eds.), Formal Ontology and Information Systems. Proceedings of the Third International Conference (FOIS 2004), Amsterdam: IOS Press, 2004, 73-84.

[22] Masolo, C., Borgo, S., Gangemi, A., Guarino, N., Oltramari, A. WonderWeb Deliverable D18--Ontology library. WonderWeb. 2003. There are also slides of Guarino's OntoLog seminar for a digest of the material.

[23] Borgo, S., Masolo, C. Foundational choices in DOLCE. In Staab, S., Studer, R. (Eds.), Handbook on Ontologies (Second Edition), Springer Verlag, 2009, p. 361-382.

[24] Smith B, Ceusters W, Klagges B, Kohler J, Kumar A, Lomax J, Mungall CJ, Neuhaus F, Rector A, Rosse C. Relations in Biomedical Ontologies. Genome Biology, 2005, 6:R46.

[25] Keet, C.M. Constraints for representing transforming entities in bio-ontologies. 11th Congress of the Italian Association for Artificial Intelligence (AI*IA'09), R. Serra and R. Cucchiara (Eds.), Reggio Emilia, Italy, Dec. 9-12, 2009. Springer-Verlag Lecture Notes in Artificial Intelligence LNAI 5883, 11-20.

[26] Keet, C.M. and Artale, A. Representing and Reasoning over a Taxonomy of Part-Whole Relations. Applied Ontology, 2008, 3(1-2): 91-110.

[27] Artale, A., Guarino, N., and Keet, C.M. Formalising temporal constraints on part-whole relations. 11th International Conference on Principles of Knowledge Representation and Reasoning (KR'08). Gerhard Brewka, Jerome Lang (Eds.) AAAI Press, pp 673-683. Sydney, Australia, September 16-19, 2008

[28] Varzi, A. Spatial reasoning and ontology: parts, wholes, and locations. In: Handbook of Spatial Logics. Berlin Heidelberg: Springer Verlag (2007) 945-1038.

[29] Randell, D.A., Cui, Z., Cohn, A.G. A spatial logic based on regions and connection. In: Proc. 3rd Int. Conf. on Knowledge Representation and Reasoning, Morgan Kaufmann (1992) 165-176.

[30] Gruetter, R., Bauer-Messmer, B. Combining OWL with RCC for spatioterminological reasoning on environmental data. In: Third international Workshop OWL: Experiences and Directions (OWLED 2007). 6-7 June 2007, Innsbruck, Austria.

[31] 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.

[32] L. Lubyte, S. Tessaris. Automatic Extraction of Ontologies Wrapping Relational Data Sources. In Proc. of the 20th International Conference on Database and Expert Systems Applications (DEXA 2009).

[33] Principal issues are described in Hainaut, J.-L., Chandelon, M., Tonneau, C., and Joris, M. (1993). Contribution to a theory of database reverse engineering. In Reverse Engineering, 1993, Proceedings of Working Conference on, pages 161-170.

[34] Christine Golbreich and Ian Horrocks. The OBO to OWL mapping, GO to OWL 1.1! In Proc. of the Third OWL Experiences and Directions Workshop, number 258 in CEUR (, 2007. See also the wiki page on oboInOwl

[35] Zhang S, Bodenreider O, Golbreich C. Experience in reasoning with the Foundational Model of Anatomy in OWL-DL. In: Pacific Symposium on Biocomputing 2006, Altman RB, Dunker AK, Hunter L, Murray TA, Klein TE, (Eds.). World Scientific, 2006, 200-211.

[36] Keet, C.M. Positionalism of relations and its consequences for fact-oriented modelling. International Workshop on Fact-Oriented Modeling (ORM'09), Vilamoura, Portugal, November 4-6, 2009. Meersman, R., Herrero, P., and Dillon T. (Eds.), OTM Workshops, Springer, LNCS 5872, 735-744.

[37] K. Vila, A. Ferrádez. Developing an Ontology for Improving Question Answering in the Agricultural Domain. In: Proceedings of MTSR'09. Springer CCIS 46, 245-256.

[38] Heiko Dietze, Dimitra Alexopoulou, Michael R. Alvers, Liliana Barrio-Alvers, Bill Andreopoulos, Andreas Doms, Joerg Hakenberg, Jan Moennich, Conrad Plake, Andreas Reischuck, Loic Royer, Thomas Waechter, Matthias Zschunke, and Michael Schroeder. GoPubMed: Exploring PubMed with Ontological Background Knowledge. In Stephen A. Krawetz, editor, Bioinformatics for Systems Biology. Humana Press, 2008.

[39] Allen H. Renear and Carole L. Palmer. Strategic Reading, Ontologies, and the Future of Scientific Publishing. Science 325 (5942), 828. [DOI: 10.1126/science.1157784] (but see also some comments on the paper)

[40] Dimitra Alexopoulou, Thomas Waechter, Laura Pickersgill, Cecilia Eyre, and Michael Schroeder. Terminologies for text-mining: an experiment in the lipoprotein metabolism domain. BMC Bioinformatics, 9(Suppl4):S2, 2008

[41] Witte, R. Kappler, T. And Baker, C.J.O. Ontology design for biomedical text mining. In: Semantic Web: revolutionizing knowledge discovery in the life sciences, Baker, C.J.O., Cheung, H. (eds), Springer: New York, 2007, pp 281-313.

[42] M. Jarrar, C.M. Keet, and P. Dongilli. Multilingual verbalization of ORM conceptual models and axiomatized ontologies. STARLab Technical Report, Vrije Universiteit Brussels, Belgium. February 2006.

[43] R. Schwitter, K. Kaljurand, A. Cregan, C. Dolbear, G. Hart. A comparison of three controlled natural languages for OWL 1.1. Proc. of OWLED 2008 DC. Washington, DC, USA metropolitan area, on 1-2 April 2008.

[44] Keet, C.M. Factors affecting ontology development in ecology. Data Integration in the Life Sciences 2005 (DILS'05), Ludaescher, B, Raschid, L. (eds.). San Diego, USA, 20-22 July 2005. Lecture Notes in Bioinformatics LNBI 3615, Springer Verlag, 2005. pp46-62.

[45] Dagobert Soergel, Boris Lauser, Anita Liang, Frehiwot Fisseha, Johannes Keizer and Stephen Katz. Reengineering thesauri for new applications: the AGROVOC example. Journal of Digital Information 4(4) (2004).

[46] Maria Angela Biasiotti, Meritxell Fern‡ndez-Barrera. Enriching Thesauri with Ontological Information: Eurovoc Thesaurus and DALOS Domain Ontology of Consumer law. Proceedings of the Third Workshop on Legal Ontologies and Artificial Intelligence Techniques (LOAIT 2009). Barcelona, Spain, June 8, 2009.

[47] Halpin, T., Morgan, T. Information modeling and relational databases. 2nd ed. Morgan Kaufmann (2008).

[48] Keet, C.M. Ontology design parameters for aligning agri-informatics with the Semantic Web. 3rd International Conference on Metadata and Semantics (MTSR'09) -- Special Track on Agriculture, Food & Environment, Oct 1-2 2009 Milan, Italy. F. Sartori, M.A. Sicilia, and N. Manouselis (Eds.), Springer CCIS 46, 239-244.

[49] Keet, C.M. Dependencies between Ontology Design Parameters. International Journal of Metadata, Semantics and Ontologies. (in print).

[50] Guarino, N. and Welty, C. An Overview of OntoClean. In S. Staab, R. Studer (eds.), Handbook on Ontologies, Springer Verlag 2009, pp. 201-220.

[51] Guarino, N., Welty, C. A formal ontology of properties. In: Dieng, R., Corby, O. (eds.) EKAW 2000. LNAI, vol. 1937, pp. 97–112. Springer, Heidelberg (2000)

[52] Guarino, N., Welty, C. Identity, unity, and individuality: towards a formal toolkit for ontological analysis. In: Proc. of ECAI 2000. IOS Press, Amsterdam (2000)

[53] Parsia, B., Sirin, E., Kalyanpur, A. Debugging OWL ontologies. World Wide Web Conference (WWW 2005). May 10-14, 2005, Chiba, Japan.

[54] M. Horridge, B. Parsia, and U. Sattler. Laconic and Precise Justifications in OWL. In Proc. of the 7th International Semantic Web Conference (ISWC 2008), Vol. 5318 of LNCS, Springer, 2008.

[55] Alexander Borgida, Diego Calvanese, and Mariano Rodriguez-Muro. Explanation in the DL-Lite family of description logics. In Proc. of the 7th Int. Conf. on Ontologies, DataBases, and Applications of Semantics (ODBASE 2008), LNCS vol 5332, 1440-1457. Springer, 2008.

[56] Gomez-Perez, A.; Fernandez-Lopez, M.; Corcho, O. Ontological Engineering. Springer Verlag London Ltd. 2004

[57] Fernandez, M.; Gomez-Perez, A. Pazos, A.; Pazos, J. Building a Chemical Ontology using METHONTOLOGY and the Ontology Design Environment. IEEE Expert: Special Issue on Uses of Ontologies, January/February 1999, 37-46.

[58] Oscar Corcho, Mariano Fernádez-López, Asunción Gómez-Pérez, Angel López-Cima. Building legal ontologies with METHONTOLOGY and WebODE. Law and the Semantic Web 2005. Springer LNAI 3369, 142-157.

[59] Corcho, O., Fernandez-Lopez, M. and Gomez-Perez, A. (2003). Methodologies, tools and languages for building ontologies. Where is their meeting point? Data & Knowledge Engineering, 46(1): 41-64.

[60] Mari Carmen Suarez-Figueroa, Guadalupe Aguado de Cea, Carlos Buil, Klaas Dellschaft, Mariano Fernandez-Lopez, Andres Garcia, Asuncion Gomez-Perez, German Herrero, Elena Montiel-Ponsoda, Marta Sabou, Boris Villazon-Terrazas, and Zheng Yufei. NeOn Methodology for Building Contextualized Ontology Networks. NeOn Deliverable D5.4.1. 2008.

[61] Ghidini, B. Kump, S. Lindstaedt, N. Mabhub, V. Pammer, M. Rospocher, and L. Serafini. Moki: The enterprise modelling wiki. In Proceedings of the 6th Annual European Semantic Web Conference (ESWC2009), 2009. Heraklion, Greece, 2009 (demo). LNCS 5554, pp. 831-835.

[62] Jerome Euzenat and Pavel Shvaiko. Ontology Matching. Springer. 2007.

[63] Keet, C.M. Aspects of Ontology Integration. Technical Report, Napier University, Edinburgh, Scotland. 2004.

[64] Heiner Stuckenschmidt, Christine Parent, Stefano Spaccapietra (Eds.). Modular Ontologies—Concepts, Theories and Techniques for Knowledge Modularization. Springer. 2009.

[65] Umberto Straccia. Managing Uncertainty and Vagueness in Description Logics, Logic Programs and Description Logic Programs. In Reasoning Web, 4th International Summer School, 2008. See also the extensive AAAI'07 tutorial slides by Umberto Straccia.

[66] Thomas Lukasiewicz and Umberto Straccia. 2008. Managing Uncertainty and Vagueness in Description Logics for the Semantic Web. Journal of Web Semantics, 6:291-308.

[67] Jiang, Y., Wang, J., Tang, S., and Xiao, B. 2009. Reasoning with rough description logics: An approximate concepts approach. Information Sciences, 179:600-612.

[68] Keet, C.M. On the feasibility of Description Logic knowledge bases with rough concepts and vague instances. 23rd International Workshop on Description Logics (DL'10), 4-7 May 2010, Waterloo, Canada.

[69] Alessandro Artale, Christine Parent, and Stefano Spaccapietra. Evolving objects in temporal information systems. Annals of Mathematics and Artificial Intelligence (AMAI), 50:5-38, 2007, Springer.

[70] Artale, A., Guarino, N., and Keet, C.M. Formalising temporal constraints on part-whole relations. 11th International Conference on Principles of Knowledge Representation and Reasoning (KR'08). Gerhard Brewka, Jerome Lang (Eds.) AAAI Press, pp 673-683. Sydney, Australia, September 16-19, 2008

[71] Alessandro Artale, Roman Kontchakov, Carsten Lutz, Frank Wolter and Michael Zakharyaschev. Temporalising Tractable Description Logics. Proc. of the 14th International Symposium on Temporal Representation and Reasoning (TIME-07), Alicante, June 2007.

[72] Carsten Lutz, Frank Wolter, and Michael Zakharyaschev.  Temporal Description Logics: A Survey. In: Proceedings of the Fifteenth International Symposium on Temporal Representation and Reasoning. IEEE Computer Society Press, 2008.

[73] Frank van Harmelen, Vladimir Lifschitz and Bruce Porter (Eds.). Handbook of Knowledge Representation. Elsevier, 2008, 1034p.

[74] Stefan Schulz, Holger Stenzhorn, Martin Boekers and Barry Smith. Strengths and Limitations of Formal Ontologies in the Biomedical Domain. Electronic Journal of Communication, Information and Innovation in Health (Special Issue on Ontologies, Semantic Web and Health), 2009.

[75] R. Alberts, D. Calvanese, G. De Giacomo, A. Gerber, M. Horridge, A. Kaplunova, C. Maria Keet, D. Lembo, M. Lenzerini, M. Milicic, R.Moeller, M. Rodriguez-Muro, R. Rosati, U. Sattler, B. Suntisrivaraporn, G. Stefanoni, A.-Y. Turhan, S. Wandelt, M. Wessel. Analysis of Test Results on Usage Scenarios. Deliverable TONES-D27, v1.0, Oct. 10 2008.

[76] Keet, C.M., Roos, M. and Marshall, M.S. A survey of requirements for automated reasoning services for bio-ontologies in OWL. Third international Workshop OWL: Experiences and Directions (OWLED 2007), 6-7 June 2007, Innsbruck, Austria. CEUR-WS Vol-258.

[77] Carole Goble and Chris Wroe. The Montagues and the Capulets. Comparative and Functional Genomics, 5(8):623-632, 2004. doi:10.1002/cfg.442