Skip to content

Ontologies: Fundamentals

Warning

These materials are under construction and incomplete.

Prerequisites

  • Install Protégé

Preparation

  • Complete OpenHPI Week 5: Ontology Engineering videos 5.1, 5.2, and 5.4 - 5.6 (~2.5 hours)
  • We are skipping 5.3: Ontology Learning and both sections on MORE Ontology Evaluation (5.7 and 5.8)
  • Complete part of the Ontologies 101 Tutorial (~2 hours)
  • Clone the Ontologies 101 repository, then open the folder BDK14_exercises from your file system
  • Open basic-subclass/chromosome-parts.owl in Protégé, then do the following exercises:
  • Open basic-restriction/er-sec-complex.owl in Protégé, then do the following exercise:
  • Open basic-dl-query/cc.owl in Protégé, then do the following exercises:
    • DL Query Tab - note that owl:Nothing is defined as the very bottom node of an ontology, therefore the DL query results will show owl:Nothing as a subclass. This is expected and does not mean there is a problem with your ontology! It's only bad when something is a subclass of owl:Nothing and therefore unsatisfiable (more on that below).
    • Basic DL Queries
  • Open basic-classification/ubiq-ligase-complex.owl in Protégé, then do the following exercises:
  • Read (I can't get no) satisfiability (~10 minutes)
  • Optional: Open a new ontology in Protégé. Try creating an inconsistent ontology using the classes and instances in the first Pets example (hint: you'll also need to create the "eats" object property)... what happens when you run the reasoner? Don't spend too much time on this if you get stuck, we'll look at an example of an inconsistent ontology in our session.

What is delivered as part of the course

Description: Learn the fundamentals of ontologies.

Learning objectives

  • OpenHPI course review: questions? (~15 minutes)
  • OWL ontology serializations ("formats") (~15 minutes)
  • Converting between serializations with robot convert (Review; ~15 minutes)
  • Creating modules from existing ontologies (~30 minutes)
  • What is a module?
  • How do we use the modules in our ontologies?
  • Extraction methods: MIREOT vs. SLME
  • Creating a module to import with robot extract (Review; ~15 minutes)
  • Ontology design patterns (~15 minutes)
  • Real world example: Ontology for Biomedical Investigations (OBI)
  • Using design patterns in robot template (Review; ~15 minutes)
  • Including your modules in your ontology as imports

Tutorials

Additional materials and resources

Contributors

  • add name/ORCID here