Table of Contents

(second edition)


Preface
How to Use the Book

Introduction 1

  1.1 What does an ontology look like? 3
  1.2 What is the usefulness of an ontology? 5
    1.2.1 Data and information system integration 6
    1.2.2 Ontologies as part of a solution to other problems 12
  1.3 What is an ontology? 16
    1.3.1 The definition game 17
    1.3.2 Some philosophical notes on ontologies 20
    1.3.3 Good, not so good, and bad ontologies 21
  1.4 Outline and usage of the book 23
  1.5 Exercises 25
  1.6 Literature and reference material 27

I Part One: Logic Foundations for Ontologies

2 First-Order Logic and Reasoning 31

  2.1 First-order logic syntax and semantics 32
    2.1.1 Syntax of FOL 34
    2.1.2 Semantics 38
  2.2 Reasoning 42
    2.2.1 Introduction: purposes, limitations, and tools 42
    2.2.2 Basic idea of automated reasoning 44
    2.2.3 Deduction, abduction, and induction 45
    2.2.4 Proofs with tableaux 46
  2.3 Exercises 51
  2.4 Literature and reference material 55

3 Description Logics 57

  3.1 A short introduction to DL 59
    3.1.1 Basic building blocks of DL ontologies 59
    3.1.2 Constructors for concepts and roles 62
    3.1.3 Description Logic semantics 66
    3.1.4 Comparing FOL to DL 69
  3.2 Important DLs 69
    3.2.1 A basic DL to start with: ALC 70
    3.2.2 The DL SROIQ 71
    3.2.3 Important fragments of SROIQ 73
  3.3 Automated reasoning services 75
    3.3.1 Standard reasoning services 75
    3.3.2 Techniques: a tableau for ALC 78
  3.4 Exercises 79
  3.5 Literature and reference material 81

4 The Web Ontology Languages 83

  4.1 Standardising an ontology language 84
    4.1.1 How to design an ontology language 85
    4.1.2 Historical notes 87
    4.1.3 The OWL family of languages, first version 88
  4.2 OWL 2 91
    4.2.1 New OWL2 features 95
    4.2.2 OWL2 Profiles 97
    4.2.3 OWL2 syntaxes 98
    4.2.4 Complexity of OWL Species 100
  4.3 OWL in context 102
    4.3.1 OWL and the Semantic Web 102
    4.3.2 Common Logic 103
    4.3.3 The Distributed ontology, model, and specification language DOL 104
  4.4 Exercises 105
  4.5 Literature and reference material 109

II Part Two: Developing Good Ontologies

5 Methods and Methodologies 115

  5.1 Methodologies for ontology development 116
    5.1.1 Macro-level development methodologies 118
    5.1.2 Micro-level development 124
  5.2 Methods to improve an ontology’s quality 128
    5.2.1 Logic-based methods: explanation and justification 128
    5.2.2 Philosophy-based methods: OntoClean to correct a taxonomy 130
    5.2.3 Combining logic and philosophy: role hierarchies 132
    5.2.4 Heuristics: OntOlogy Pitfall Scanner OOPS! 135
    5.2.5 Methods by task: competency questions 138
    5.2.6 Tools 139
  5.3 Exercises 141
  5.4 Literature and reference material 143

6 Top-down Ontology Development 145

  6.1 Foundational ontologies 146
    6.1.1 Typical content of a foundational ontology 147
    6.1.2 Several foundational ontologies 152
    6.1.3 Using a foundational ontology 156
  6.2 Part-whole relations 162
    6.2.1 Mereology 162
    6.2.2 Modelling and reasoning in the context of ontologies 165
  6.3 Exercises 169
  6.4 Literature and reference material 172

7 Bottom-up Ontology Development 173

  7.1 Conceptual data models and databases 175
    7.1.1 Converting and enhancing a conceptual data model 175
    7.1.2 Reverse engineering a relational database 177
    7.1.3 OBO, frames, and OWL 180
  7.2 Exploiting semi-structured data stores 180
    7.2.1 NoSQL/BigData data stores 181
    7.2.2 From spreadsheets to OWL 183
  7.3 Thesauri 184
    7.3.1 Converting a thesaurus into an ontology 185
    7.3.2 Avoiding ontologies with SKOS 186
  7.4 Text processing to extract content for ontologies 187
    7.4.1 Intuition of extracting candidate entities 187
    7.4.2 On the technology 189
    7.4.3 Populating the ABox 190
  7.5 Other semi-automated approaches 191
  7.6 Ontology Patterns 192
    7.6.1 Defining ontology patterns 192
    7.6.2 Types of patterns 194
  7.7 Exercises 195
  7.8 Literature and reference material 199

III Part Three: Advanced Topics

8 Linking Ontologies to Data 205

  8.1 Introduction: Motivations 207
  8.2 Design choices for linking an ontology to data 209
  8.3 The ontology-based data access core components 212
    8.3.1 Architecture 213
    8.3.2 Principal components of OBDA 213
  8.4 Exercises 221
  8.5 Literature and reference material 221

9 Ontologies and Natural Languages 223

  9.1 Towards multilingual ontologies 224
    9.1.1 Linking a lexicon to an ontology 225
    9.1.2 Multiple natural languages 227
    9.1.3 Infrastructure for multilingual, localised, or internationalised ontologies 230
  9.2 Ontology verbalisation 233
    9.2.1 Common approaches to verbalisation 233
    9.2.2 Architecture choices for verbalisers 236
    9.2.3 Pushing for more challenges verbalising ontologies 238
  9.3 Exercises 240
  9.4 Literature and reference material 241

10 Rough, Temporal, and Fuzzy Modelling 243

  10.1 Time and temporal ontologies 244
    10.1.1 Why temporal ontologies? 245
    10.1.2 Temporal DLs. 246
  10.2 Uncertainty and vagueness 252
    10.2.1 Rough ontologies 253
    10.2.2 Fuzzy ontologies 256
  10.3 Exercises 259
  10.4 Literature and reference material 260

11 More Topics to Explore 263

  11.1 Ontology modularisation 264
    11.1.1 Moduled imensions 265
    11.1.2 Evaluation metrics for modules 269
  11.2 Ontology matching 272
    11.2.1 A bird’s eye view of progress in ontology alignment 273
    11.2.2 Moving goalposts 274
  11.3 Even more topics 278
    11.3.1 LLMs to the rescue? 279
    11.3.2 Ontologies and conceptual data modelling 279
    11.3.3 Ontology evaluation metrics and yet more topics 280
  11.4 Scientific publications on ontology engineering 282
  11.5 Exercises 284
  11.6 Literature and reference material 285

Appendices
A Complexity recap 289
B OWL2 Profiles Features 293
C Abbreviations 297
D About the author 299
Bibliography 301