top of page
  • Bernd Geiger

What is meant by active ontologies?



What is meant by active ontologies?


Active ontologies do not only contain structure elements to describe relations between entities, but also elements that change the ontology or start a functional process if an entity or relation in the ontology changes. This is done fully automatically within an execution framework (in the case of semafora the inference engine OntoBroker) and therefore one does not need external programming languages to process the ontology, as it is the case e.g. with OWL using Jena.

The work is done by logic functions following the pattern already used by the first successful logic language Prolog: a collection of facts (the body) implies new facts (the head). The formula always looks like this:


head :- body


whenever something in the body changes, this automatically results in a change of the head. Changes in the body can be caused by many things, for example:


  • Sensor data from an IoT network

  • Inventory from a connected database

  • Change in the schema of the ontology

  • Time of day


The implications can be numerous, from an alarm email that a functional process has processed to a self-learning ontology that eliminates, for example: relations with too little weighting. There are now 2 levels of an active ontology:


  • First degree (temporary): the implication of the facts in the body exist only as long as the facts exist,

  • second degree (persistent): the implication of the facts in the body exist permanently (as long as they are not changed again by other mechanisms).


Active ontologies are therefore, among many other practical advantages, also ideally suited to enable precise and explainable (causal) machine learning from data sources where no mass data is available for learning.

bottom of page