An Introduction to Ontology Engineering
Total Page:16
File Type:pdf, Size:1020Kb
An Introduction to Ontology Engineering C. Maria Keet v1.5, 2020 i An Introduction to Ontology Engineering C. Maria Keet Keywords: Ontology Engineering, Ontology, ontologies, Knowledge base, Descrip- tion Logics, OWL, Semantic Web, Ontology Development Copyright © 2020 by Maria Keet, except: The copyright of Chapter 11 is held by Zubeida C. Khan and C. Maria Keet The copyright of Appendix A.1 is held by Zola Mahlaza and C. Maria Keet This work is licensed under a Creative Commons Attribution 4.0 International Li- cense (CC BY 4.0). To view a copy of this license, visit https://creativecommons. org/licenses/by/4.0/. This textbook is typeset in LATEX The website for this textbook is https://people.cs.uct.ac.za/~mkeet/OEbook/ Cover design by Maria Keet Cover photo (by the author): A view from Table Mountain, Cape Town, SA Contents Preface vii Preface to v1 ix How to use the book xi 1 Introduction 1 1.1 What does an ontology look like? . .2 1.2 What is an ontology? . .4 1.2.1 The definition game . .4 1.2.2 Some philosophical notes on ontologies . .7 1.2.3 Good, not so good, and bad ontologies . .8 1.3 What is the usefulness of an ontology? . .9 1.3.1 Data and information system integration . 10 1.3.2 Ontologies as part of a solution to other problems . 14 1.3.3 Success stories . 17 1.4 Outline and usage of the book . 20 1.5 Exercises . 21 1.6 Literature and reference material . 22 I Logic foundations for ontologies 23 2 First order logic and automated reasoning in a nutshell 25 2.1 First order logic syntax and semantics . 25 2.1.1 Syntax . 26 2.1.2 Semantics . 29 2.2 Reasoning . 33 2.2.1 Introduction . 33 2.2.2 Basic idea . 35 2.2.3 Deduction, abduction, and induction . 36 iii 2.2.4 Proofs with tableaux . 37 2.3 Exercises . 41 2.4 Literature and reference material . 44 3 Description Logics 45 3.1 DL primer . 46 3.1.1 Basic building blocks of DL ontologies . 47 3.1.2 Constructors for concepts and roles . 49 3.1.3 Description Logic semantics . 53 3.2 Important DLs . 56 3.2.1 A basic DL to start with: ................ 56 3.2.2 The DL ........................ALC 58 3.2.3 ImportantSROIQ fragments of ............... 59 3.3 Reasoning services . .SROIQ . 61 3.3.1 Standard reasoning services . 61 3.3.2 Techniques: a tableau for ................ 63 3.4 Exercises . .ALC . 65 3.5 Literature and reference material . 66 4 The Web Ontology Language OWL 2 67 4.1 Standardising an ontology language . 68 4.1.1 Historical notes . 68 4.1.2 The OWL 1 family of languages . 70 4.2 OWL2.................................. 71 4.2.1 New OWL 2 features . 74 4.2.2 OWL 2 Profiles . 76 4.2.3 OWL 2 syntaxes . 77 4.2.4 Complexity considerations for OWL . 79 4.3 OWL in context . 81 4.3.1 OWL and the Semantic Web . 81 4.3.2 The Distributed ontology, model, and specification language DOL............................... 82 4.3.3 Common Logic . 84 4.4 Exercises . 84 4.5 Literature and reference material . 88 II Developing good ontologies 89 5 Methods and Methodologies 91 5.1 Methodologies for ontology development . 92 5.1.1 Macro-level development methodologies . 93 5.1.2 Micro-level development . 97 5.2 Methods to improve an ontology's quality . 101 5.2.1 Logic-based methods: explanation and justification . 101 5.2.2 Philosophy-based methods: OntoClean to correct a taxonomy 103 iv 5.2.3 Combining logic and philosophy: role hierarchies . 104 5.2.4 Heuristics: OntOlogy Pitfall Scanner OOPS! . 106 5.2.5 Tools . 109 5.3 Exercises . 111 5.4 Literature and reference material . 113 6 Top-down Ontology Development 115 6.1 Foundational ontologies . 115 6.1.1 Typical content of a foundational ontology . 117 6.1.2 Several foundational ontologies . 121 6.1.3 Using a foundational ontology . 124 6.2 Part-whole relations . 130 6.2.1 Mereology . 131 6.2.2 Modelling and reasoning in the context of ontologies . 132 6.3 Exercises . 136 6.4 Literature and reference material . 138 7 Bottom-up Ontology Development 139 7.1 Relational databases and related `legacy' KR . 140 7.2 From spreadsheets to OWL . 144 7.3 Thesauri . 145 7.3.1 Converting a thesaurus into an ontology . 146 7.3.2 Avoiding ontologies with SKOS . 148 7.4 Text processing to extract content for ontologies . 148 7.5 Other semi-automated approaches . 150 7.6 Ontology Design Patterns . 152 7.7 Exercises . 154 7.8 Literature and reference material . 159 III Advanced topics in ontology engineering 161 8 Ontology-Based Data Access 165 8.1 Introduction: Motivations . 166 8.2 OBDA design choices . 167 8.3 An OBDA Architecture . 168 8.4 Principal components . 170 8.5 Exercises . 174 8.6 Literature and reference material . 175 9 Ontologies and natural languages 177 9.1 Toward multilingual ontologies . 178 9.1.1 Linking a lexicon to an ontology . 178 9.1.2 Multiple natural languages . 180 9.1.3 Infrastructure for multilingual, localised, or internationalised ontologies . 183 9.2 Ontology verbalisation . 187 v 9.2.1 Template-based approach . 187 9.2.2 Reusing the results for related activities . 189 9.3 Exercises . 190 9.4 Literature and reference material . 191 10 Advanced Modelling with Additional Language Features 193 10.1 Uncertainty and vagueness . 193 10.1.1 Fuzzy ontologies . 194 10.1.2 Rough ontologies . 197 10.2 Time and Temporal Ontologies . 201 10.2.1 Why temporal ontologies? . 202 10.2.2 Temporal DLs . 203 10.3 Exercises . 207 10.4 Literature and reference material . 208 11 Ontology modularisation 211 11.1 Defining modularisation . 211 11.2 Module dimensions . 213 11.2.1 Use-cases . 213 11.2.2 Types . 214 11.2.3 Properties . 216 11.2.4 Techniques . 217 11.2.5 Evaluation metrics . 218 11.3 Modularisation framework . 223 11.4 Exercises . 225 11.5 Literature and reference material . 227 Bibliography 229 A Tutorials 249 A.1 OntoClean in OWL with a DL reasoner . 249 A.2 An OBDA system for elephants . 256 B Assignments 257 B.1 Practical Assignment: Develop a Domain Ontology . 258 B.2 Project Assignment . 260 C OWL 2 Profiles features list 265 D Complexity recap 269 E Answers of selected exercises 273 About the author 289 vi Preface The first version of this textbook received encouraging feedback and made it into print with the non-profit publisher College Publications. The print version is still actual and relevant. This version 1.5 does have a few additions and corrections that seemed to deserve more than a 0.1-point notch. The main additions consist of about 10% increased main content, consisting main of 10% more exercises in Chapters 2- 9, a new preliminary Chapter 11 on ontology modularisation, and a new section on challenges for multilingualism (§ 9.1.3). The appendix has increased with two new tutorials|on OntoClean and on OBDA|and more answers to selected exercises. Also, typos and related infelicities that have been found were corrected, and in the grey area of copyright issues, I tweaked a few more figures a bit just to be on the safe side. Altogether, this caused an increase of 36 pages. If the reader wants access to v1 nonetheless: the pdf is still available as OEbookV1.pdf. In addition the the book's content in the pdf file, the website accompanying the textbook now has has more materials, notably the slides (in pdf, LATEX source, and ppt), new ontologies for the tutorials and exercises, and additional software for the exercises. This material can be found at https://people.cs.uct.ac.za/~mkeet/ OEbook/. The website also contains a page with instructions for improved accessi- bility for the visually impaired, in particular for low-cost screen reader training to handle the Description Logics symbols. As with the previous v1, more can indeed be added, but there are certain time constraints. For contributions to the additions, I would like to thank former and current students Zubeida Khan, Zola Mahlaza, Frances Gillis-Webber, Michael Harrison, Toky Raboanary, and Joan Byamugisha, as well as the grant from the \Digital Open textbooks for Development" (DOT4D) Project that made some of the additions possible. Also, I would like to thank the constructive feedback on the ontologies by Ludger Jansen, which has led to improvements of the content. Cape Town, South Africa C. Maria Keet February, 2020 vii Preface to v1 This book is my attempt at providing the first textbook for an introduction in on- tology engineering. Indeed, there are books about ontology engineering, but they.