Processing OWL2 ontologies using thea: an application of logic programming

Vangelis Vassiliadis, Jan Wielemaker, Chris Mungall · 2009

Abstract. Traditional object-oriented programming languages can be difficult to use when working with ontologies, leading to the creation of domain-specific languages designed specifically for ontology processing. Prolog, with its logic-based, declarative semantics offers many advantages as a host programming language for querying and processing OWL2 ontologies. The SWI-Prolog semweb library provides some support for OWL but until now there has been a lack of any library providing direct and comprehensive support for OWL2. We have developed Thea, a library based directly on the OWL2 functionalstyle syntax, allowing storage and manipulation of axioms as a Prolog database. Thea can translate ontologies to Description Logic programs but the emphasis is on using Prolog as an application programming and processing language rather than a reasoning engine. Thea offers the ability to seamless connect to the java OWL API and OWLLink servers. Thea also includes support for SWRL. In this paper we provide examples of using Thea for processing ontologies, and compare the results to alternative methods. Thea is available from GitHub:

Read the paper · More papers on PaperTik