Reasoning Infrastructure for Ontologies and Instances
Ontologies help both humans and computer applications to communicate by providing a vocabulary of terms together with formal and computer-processable descriptions of their meanings and the relationships between them. They play a major role in the next-generation World Wide Web (known as the Semantic Web), where they are used to describe the content of Web resources, with the aim of both improving search for human users and making it easier for computer programs to exploit the vast range of information that is available on the Web. Ontologies are also widely used to define specialised vocabularies for use in medicine, biology and other scientific disciplines.
Ontologies are usually developed by human experts, but even for experts the job of defining all the relevant terms is a difficult and time consuming one. It is therefore essential to provide "intelligent" tools that support ontology designers. For this reason, many ontology languages, including OWL (the standard language used for Semantic Web ontologies), are based on Description Logics (DLs). This provides a formal specification of the meaning of the language and allows tools to use automated reasoning systems, e.g., to check that interactions between descriptions do not lead to logical contradictions. Reasoning systems are also needed when ontologies are deployed in applications, where they are used, e.g., to answer queries that use terms defined in an ontology.
The central role of ontologies in the above mentioned applications brings with it, however, requirements for expressive power and reasoning support which are beyond the capabilities of existing ontology languages and reasoning systems. For example, OWL cannot express the fact that the brother of a person's father is also their uncle, and even for OWL, reasoning is very hard: existing reasoning systems often have difficulties dealing with the very large ontologies that are needed in many realistic applications. The research being carried out in this project aims at bridging this gulf between requirements and capabilities; its ultimate goal is the development of a reasoning system that significantly extends the current state of the art, with respect to both scalability and the expressive power of the ontology language supported.
The research programme is made up of three main strands: The first strand focuses on reasoning about the structure of the domain as described in an ontology, and aims to develop a highly optimised class reasoner for the expressive description logics needed to provide reasoning support for applications using existing ontology language standards and proposed extensions. The second strand aims to combine a DL reasoner with a database in order to provide scalable reasoning for large volumes of data that are are described using terms from an ontology. The third strand aims at collaborating with ontology developers and users in order to evaluate the effectiveness of the above systems using data from their ontologies and applications, in particular the Gene Ontology (and other large biomedical ontologies) and large volumes of gene product data annotated with terms from the Gene Ontology.