Translating Description Logic Queries to Prolog

In this paper we present a novel approach for determining the instances of description logic concepts when huge amounts of underlying data are expected. In such cases, traditional description logic theorem proving techniques cannot be used due to performance problems. Our idea is to transform a concept description into a Prolog program which represents a query-plan. This transformation is done without any knowledge of the particular data. Data are accessed dynamically during the normal Prolog execution of the generated program. With this technique only those pieces of data are accessed which are indeed important for answering the query, i.e. we solve the original problem in a database friendly way. We evaluate the performance of our approach and compare it to several description logic reasoners.