logical-juggling
describe periodic (juggling) patterns in first-order logic and find models via constraint programming
view repo
This paper provides a self-contained first introduction to description logics (DLs). The main concepts and features are explained with examples before syntax and semantics of the DL SROIQ are defined in detail. Additional sections review light-weight DL languages, discuss the relationship to the Web Ontology Language OWL and give pointers to further reading.
READ FULL TEXT VIEW PDF
DL-Lite is an important family of description logics. Recently, there is...
read it
We present positive coalgebraic logic in full generality, and show how t...
read it
The Semantic Web ontology language OWL 2 DL comes with a variety of lang...
read it
In this paper, we propose an algebraic similarity measure σBS (BS
stands...
read it
Multiple logic-based reconstruction of conceptual data modelling languag...
read it
In this chapter, we give an introduction to symbolic artificial intellig...
read it
This paper describes the analysis of a selected testbed of Semantic Web
...
read it
describe periodic (juggling) patterns in first-order logic and find models via constraint programming
Description logics (DLs) are a family of knowledge representation languages that are widely used in ontological modelling. An important practical reason for this is that they provide one of the main underpinnings for the OWL Web Ontology Language as standardised by the World Wide Web Consortium (W3C). However, DLs have been used in knowledge representation long before the advent of ontological modelling in the context of the Semantic Web, tracing back to first DL modelling languages in the mid 1980s.
As their name suggests, DLs are logics (in fact most DLs are decidable fragments of first-order logic), and as such they are equipped with a formal semantics: a precise specification of the meaning of DL ontologies. This formal semantics allows humans and computer systems to exchange DL ontologies without ambiguity as to their meaning, and also makes it possible to use logical deduction to infer additional information from the facts stated explicitly in an ontology – an important feature that distinguishes DLs from other modelling languages such as UML.
The capability of inferring additional knowledge increases the modelling power of DLs but it also requires some understanding on the side of the modeller and, above all, good tool support for computing the conclusions. The computation of inferences is called reasoning and an important goal of DL language design has been to ensure that reasoning algorithms of good performance are available. This is one of the reasons why there is not just a single description logic: the best balance between expressivity of the language and complexity of reasoning depends on the intended application.
In this paper we provide a self-contained first introduction to description logics. We start by explaining the basic way in which knowledge is modelled in DLs in Section 1 and continue with an intuitive introduction to the most important DL modelling features in Section 2. This leads us to the rather expressive DL called , the syntax of which we summarise in Section 3. In Section 4, we explain the underlying ideas of DL semantics and use it to define the meaning of ontologies. Many DLs can be obtained by omitting some features of and in Section 5 we review some of the most important DLs obtained in this way. In particular, this includes various lightweight description logics that allow for particularly efficient reasoning. In Section 6 we discuss the relationship of DLs to the OWL Web Ontology Language. We conclude with pointers to further reading in Section 7.
Description logics (DLs) provide means to model the relationships between entities in a domain of interest. In DLs there are three kinds of entities: concepts, roles and individual names.^{1}^{1}1In OWL concepts and roles are respectively known as classes and properties; see Section 6. Concepts represent sets of individuals, roles represent binary relations between the individuals, and individual names represent single individuals in the domain. Readers familiar with first-order logic will recognise these as unary predicates, binary predicates and constants.
For example, an ontology modelling the domain of people and their family relationships might use concepts such to represent the set of all parents and to represent the set of all female individuals, roles such as to represent the (binary) relationship between parents and their children, and individual names such as and to represent the individuals Julia and John.
Unlike a database, a DL ontology does not fully describe a particular situation or “state of the world”; rather it consists of a set of statements, called axioms, each of which must be true in the situation described. These axioms typically capture only partial knowledge about the situation that the ontology is describing, and there may be many different states of the world that are consistent with the ontology. Although, from the point of view of logic, there is no principal difference between different types of axioms, it is customary to separate them into three groups: assertional (ABox) axioms, terminological (TBox) axioms and relational (RBox) axioms.
ABox axioms capture knowledge about named individuals, i.e., the concepts to which they belong and how they are related to each other. The most common ABox axioms are concept assertions such as
(1) |
which asserts that Julia is a mother or, more precisely, that the individual named is an instance of the concept .
Role assertions describe relations between named individuals. The assertion
(2) |
for example, states that Julia is a parent of John or, more precisely, that the individual named is in the relation that is represented by to the individual named . The previous sentence shows that it can be rather cumbersome to explicitly point out that the relationships expressed by an axiom are really relationships between the individuals, sets and relations that are represented by the respective individual names, concepts and roles. Assuming that this subtle distinction between syntactic identifiers and semantic entities is understood, we will thus often adopt a more sloppy and readable formulation. Section 4 below explains the underlying semantics with greater precision.
Although it is intuitively clear that Julia and John are different individuals, this fact does not logically follow from what we have stated so far. DLs do not make the unique name assumption, so different names might refer to the same individual unless explicitly stated otherwise. The individual inequality assertion
(3) |
is used to assert that Julia and John are actually different individuals. On the other hand, an individual equality assertion, such as
(4) |
states that two different names are known to refer to the same individual. Such situations can arise, for example, when combining knowledge about the same domain from several different sources, a task that is known as ontology alignment.
TBox axioms describe relationships between concepts. For example, the fact that all mothers are parents is expressed by the concept inclusion
(5) |
in which case we say that the concept is subsumed by the concept . Such knowledge can be used to infer further facts about individuals. For example, (1) and (5) together imply that Julia is a parent.
Concept equivalence asserts that two concepts have the same instances, as in
(6) |
While synonyms are an obvious example of equivalent concepts, in practice one more often uses concept equivalence to give a name to complex expressions as introduced in Section 2.1 below. Furthermore, such additional concept expressions can be combined with equivalence and inclusion to describe more complex situations such as the disjointness of concepts, which asserts that two concepts do not share any instances.
RBox axioms refer to properties of roles. As for concepts, DLs support role inclusion and role equivalence axioms. For example, the inclusion
(7) |
states that is a subrole of , i.e., every pair of individuals related by is also related by . Thus (2) and (7) together imply that Julia is an ancestor of John.
In role inclusion axioms, role composition can be used to describe roles such as . Intuitively, if Charles is a brother of Julia and Julia is a parent of John, then Charles is an uncle of John. This kind of relationship between the roles , and is captured by the complex role inclusion axiom
(8) |
Note that role composition can only appear on the left-hand side of complex role inclusions. Furthermore, in order to retain decidability of reasoning (see the end of Section 4 for a discussion on decidability), complex role inclusions are governed by additional structural restrictions that specify whether or not a collection of such axioms can be used together in one ontology.
Nobody can be both a parent and a child of the same individual, so the two roles and are disjoint. In DLs we can write disjoint roles as follows:
(9) |
Further RBox axioms include role characteristics such as reflexivity, symmetry and transitivity of roles. These are closely related to a number of other DL features and we will discuss them again in more detail in Section 2.5.
The basic types of axioms introduced in Section 1 are rather limited for accurate modelling. To describe more complex situations, DLs allow new concepts and roles to be built using a variety of different constructors. We distinguish concept and role constructors depending on whether concept or role expressions are constructed. In the case of concepts, one can further separate basic Boolean constructors, role restrictions and nominals/enumerations. At the end of this section, we revisit the additional kinds of RBox axioms that have been omitted in Section 1.3.
Boolean concept constructors provide basic Boolean operations that are closely related to the familiar operations of intersection, union and complement of sets, or to conjunction, disjunction and negation of logical expressions.
For example, concept inclusions allow us to state that all mothers are female and that all mothers are parents, but what we really mean is that mothers are exactly the female parents. DLs support such statements by allowing us to form complex concepts such as the intersection (also called conjunction)
(10) |
which represents the set of individuals that are both female and parents. A complex concept can be used in axioms in exactly the same way as an atomic concept, e.g., in the equivalence .
Union (also called disjunction) is the dual of intersection. For example, the concept
(11) |
describes those individuals that are either fathers or mothers. Again, it can be used in an axiom such as , which states that a parent is either a father or a mother (and vice versa).
Sometimes we are interested in individuals that do not belong to a certain concept, e.g., in women who are not married. These could be described by the complex concept
(12) |
where the complement (also called negation) represents the set of all individuals that are not married.
It is sometimes useful to be able to make a statement about every individual, e.g., to say that everybody is either male or female. This can be accomplished by the axiom
(13) |
where the top concept is a special concept with every individual as an instance; it can be viewed as an abbreviation for for an arbitrary concept . Note that this modelling is rather coarse as it presupposes that every individual has a gender, which may not be reasonable for instances of a concept such as . We will see more useful applications for later on.
To express that, for the purposes of our modelling, nobody can be both a male and a female at the same time, we can declare the set of male and the set of female individuals to be disjoint. While ontology languages like OWL provide a basic constructor for disjointness, it is naturally captured in DLs with the axiom
(14) |
where the bottom concept is the dual of , that is the special concept with no individuals as instances; it can be seen as an abbreviation for for an arbitrary concept . The above axiom thus says that the intersection of the two concepts is empty.
So far we have seen how to use TBox and RBox axioms to express relationships between concepts and roles, respectively. The most interesting feature of DLs, however, is their ability to form statements that link concepts and roles together. For example, there is an obvious relationship between the concept and the role , namely, a parent is someone who is a parent of at least one individual. In DLs, this relationship can be captured by the concept equivalence
(15) |
where the existential restriction is a complex concept that describes the set of individuals that are parents of at least one individual (instance of ). Similarly, the concept describes those individuals that are parents of at least one female individual, i.e., those that have a daughter.
To represent the set of individuals all of whose children are female, we use the universal restriction
(16) |
It is a common error to forget that (16) also includes those individuals that have no children at all. More accurately (and less naturally), the axiom can be said to describe the set of all individuals that have “no children other than female ones,” i.e., that have “no children that are not female.” Following this wording, the concept (16) could indeed be equivalently expressed as . If this meaning is not intended, one can describe the individuals who have at least one child and with all their children being female by the concept .
Existential and universal restrictions are useful in combination with the top concept for expressing domain and range restrictions on roles; that is, restrictions on the kinds of individual that can be in the domain and range of a given role. To restrict the domain of to male individuals we can use the axiom
(17) |
and to restrict its range to parents we can write
(18) |
In combination with the assertion , these axioms would then allow us to deduce that John is male and Julia is a parent. It is interesting to note how this behaviour contrasts with the meaning of constraints in databases. Constraints would also allow us to state, e.g., that all sons must be male. However, given only the fact that John is a son of Julia, such a constraint would simply be violated (leading to an error) rather than implying that John is male. Mistaking DL axioms for constraints is a very common source of modelling errors.
Number restrictions allow us to restrict the number of individuals that can be reached via a given role. For example, we can form the at-least restriction
(19) |
to describe the set of individuals that are children of at least two parents, and the at-most restriction
(20) |
for those that are children of at most two parents. The axiom then states that every person is a child of exactly two parents.
Finally, local reflexivity can be used to describe the set of individuals that are related to themselves via a given role. For example, the set of individuals that talk to themselves is described by the concept
(21) |
As well as defining concepts in terms of other concepts (and roles), it may also be useful to define a concept by simply enumerating its instances. For example, we might define the concept by enumerating its instances: , , , and . Enumerations are not supported natively in DLs, but they can be simulated in DLs using nominals. A nominal is a concept that has exactly one instance. For example, is the concept whose only instance is (the individual represented by) . Combining nominals with union, the enumeration in our example could be expressed as
(22) |
It is interesting to note that, using nominals, a concept assertion can be turned into a concept inclusion and a role assertion into a concept inclusion . This illustrates that the distinction between ABox and TBox does not have a deeper logical meaning.
In contrast to the variety of concept constructors, DLs provide only few constructors for forming complex roles. In practice, inverse roles are the most important such constructor. Intuitively, the relationship between the roles and is that, for example, if Julia is a parent of John, then John is a child of Julia and vice versa. More formally, is the inverse of , which in DLs can be expressed by the equivalence
(23) |
where the complex role represents the inverse of .
In analogy to the top concept, DLs also provide the universal role, represented by , which always relates all pairs of individuals. It typically plays a minor role in modelling,^{2}^{2}2Although there are a few interesting things that could be expressed with , such as concept products [16], tool support is rarely sufficient for using this feature in practice. but it establishes symmetry between roles and concepts w.r.t. a top element. Similarly, an empty role that corresponds to the bottom concept is also available in OWL but has rarely been introduced as a constructor in DLs; however, we can define any role to be empty using the axiom (“all things do not relate to anything through ”). Interestingly, the universal role cannot be defined by TBox axioms using the constructors introduced above, and in particular universal role restrictions cannot express that a role is universal.
In Section 1.3 we introduced three forms of RBox axioms: role inclusions, role equivalences and role disjointness. OWL provides a variety of others, namely role transitivity, symmetry, asymmetry, reflexivity and irreflexivity. These are sometimes considered as basic axiom types in DLs as well, using some suggestive notation such as to express that the role is transitive. However, such axioms are just syntactic sugar; all role characteristics can be expressed using the features of DLs that we have already introduced.
Transitivity is a special form of complex role inclusion. For example, transitivity of can be captured by the axiom . A role is symmetric if it is equivalent to its own inverse, e.g., , and it is asymmetric if it is disjoint from its own inverse, as in . If desired, global reflexivity can be expressed by imposing local reflexivity on the top concept as in . A role is irreflexive if it is never locally reflexive, as in the case of .
In this section, we summarise the various features that have been introduced informally above to provide a comprehensive definition of DL syntax. Doing so yields the description logic called , which is one of the most expressive DLs commonly considered today. It also largely agrees in expressivity with the ontology language OWL 2 DL, though there are still some differences as explained in Section 6.
Formally, every DL ontology is based on three finite sets of signature symbols: a set of individual names, a set of concept names and a set of role names. Usually these sets are assumed to be fixed for some application and are therefore not mentioned explicitly. Now the set of role expressions (over this signature) is defined by the following grammar:
where is the universal role (Section 2.4). Based on this, the set of concept expressions is defined as:
where is a non-negative integer. As usual, expressions like represent any expression of the form with . It is common to omit parentheses if this cannot lead to confusion with expressions of different semantics. For example, parentheses do not matter for whereas the expressions and are ambiguous.
Using the above sets of individual names, roles and concepts, the axioms of can be defined to be of the following basic forms:
ABox: | |||
TBox: | |||
RBox: |
with the intuitive meanings as explained in Section 1 and 2.
Roughly speaking, a ontology (or knowledge base) is simply a set of such axioms. To ensure the existence of reasoning algorithms that are correct and terminating, however, additional syntactic restrictions must be imposed on ontologies. These restrictions refer not to single axioms but to the structure of the ontology as a whole, hence they are called structural restrictions. The two such conditions relevant for are based on the notions of simplicity and regularity. Notably, both are automatically satisfied for ontologies that do not contain complex role inclusion axioms.
A role in an ontology is called non-simple if some complex role inclusion axiom (i.e., one that uses role composition ) in implies instances of ; otherwise it is called simple. A more precise definition of the non-simple role expressions of the ontology is given by the following rules:
if contains an axiom , then is non-simple,
if is non-simple, then its inverse is also non-simple,^{3}^{3}3If already is an inverse role, then should be read as . We do not allow expressions like .
if is non-simple and contains any of the axioms , or , then is also non-simple.
All other roles are called simple.^{4}^{4}4Whether the universal role is simple or not is a matter of preference that does not affect the computational properties of the logic [17]. However, the universal role in OWL 2 is considered non-simple. Now for a ontology it is required that the following axioms and concepts contain simple roles only:
Restricted axioms: | |||
Restricted concept expressions: |
The other structural restriction that is relevant for is called regularity and is concerned with RBox axioms only. Roughly speaking, the restriction ensures that cyclic dependencies between complex role inclusion axioms occur only in a limited form. For details, please see the pointers given in Section 7. For the introductory treatment in this paper, it suffices to note that regularity, just like simplicity, is a property of the ontology as a whole that cannot be checked for each axiom individually. An important practical consequence is that the union of two regular ontologies may no longer be regular. This must be taken into account when merging ontologies in practice.
The formal meaning of DL axioms is given by their model-theoretic semantics. In particular, the semantics specifies what the logical consequences of an ontology are. The formal semantics is therefore the main guideline for every tool that computes logical consequences of DL ontologies, and a basic understanding of its working is vital to make reasonable modelling choices and to comprehend the results given by software applications. Luckily, the semantics of description logics is not difficult to understand provided that some common misconceptions are avoided.
Intuitively speaking, an ontology describes a particular situation in a given domain of discourse. For example, the axioms in Sections 1 and 2 describe a particular situation in the “families and relationships” domain. However, ontologies usually cannot fully specify the situation that they describe. On the one hand, there is no formal relationship between the symbols we use and the objects that they represent: the individual name , for example, is just a syntactic identifier with no intrinsic meaning. Indeed, the intended meaning of the identifiers in our ontologies has no influence on their formal semantics: what we know about them stems only from the ontological axioms. On the other hand, the axioms in an ontology typically do not provide complete information. For example, (3) and (4) in Section 1.1 state that some individuals are equal and that others are unequal, but in many other cases this information might be left unspecified.
Description logics have been designed to deal with such incomplete information. Rather than making default assumptions in order to fully specify one particular interpretation for each ontology, the DL semantics generally considers all the possible situations (i.e., states of the world) where the axioms of an ontology would hold (we also say: where the axioms are satisfied). This characteristic is sometimes called the Open World Assumption since it keeps unspecified information open.^{5}^{5}5A Closed World Assumption “closes” the interpretation by assuming that every fact not explicitly stated to be true is actually false. Both terms are not formally specified and rather outline the general flavour of a semantics than any particular definition. A logical consequence of an ontology is an axiom that holds in all interpretations that satisfy the ontology, i.e., something that is true in all conceivable states of the world that agree with what is said in the ontology. The more axioms an ontology contains, the more specific are the constraints that it imposes on possible interpretations, and the fewer interpretations exist that satisfy all of the axioms. Conversely, if fewer interpretations satisfy an ontology, then more axioms hold in all of them, and more logical consequences follow from the ontology. The previous two sentences imply that the semantics of description logics is monotonic: additional axioms always lead to additional consequences, or, more informally, the more knowledge we feed into a DL system the more results it returns.
An extreme case is when an ontology is not satisfied in any interpretation. The ontology is then called unsatisfiable or inconsistent. In this case every axiom holds vacuously in all of the (zero) interpretations that satisfy the ontology. Such an ontology is clearly of no utility, and avoiding inconsistency (and checking for it in the first place) is therefore an important task during modelling.
Syntax | Semantics | |
Individuals: | ||
individual name | ||
Roles: | ||
atomic role | ||
inverse role | ||
universal role | ||
Concepts: | ||
atomic concept | ||
intersection | ||
union | ||
complement | ||
top concept | ||
bottom concept | ||
existential restriction | ||
universal restriction | ||
at-least restriction | ||
at-most restriction | ||
local reflexivity | ||
nominal | ||
where are individual names, is a concept name, are concepts, is a role |
We have outlined above the most important ideas of DL semantics. What remains to be done is to define what we really mean by an “interpretation” and which conditions must hold for particular axioms to be satisfied by an interpretation. For this, we closely follow the intuitive ideas established above: an interpretation consists of a set called the domain of and an interpretation function that maps each atomic concept to a set , each atomic role to a binary relation , and each individual name to an element . The interpretation of complex concepts and roles follows from the interpretation of the basic entities. Table 1 shows how to obtain the semantics of each compound expression from the semantics of its parts. By “-successor of ” we mean any individual such that . The definition should confirm the intuitive explanations given for each case in Section 2. For example, the semantics of is indeed the intersection of the semantics of and .
Syntax | Semantics | |
ABox: | ||
concept assertion | ||
role assertion | ||
individual equality | ||
individual inequality | ||
TBox: | ||
concept inclusion | ||
concept equivalence | ||
RBox: | ||
role inclusion | ||
role equivalence | ||
complex role inclusion | ||
role disjointness |
Since an interpretation fixes the meaning of all entities, we can unambiguously say for each axiom whether it holds in or not. An axiom holds in (we also say satisfies and write ) if the corresponding condition in Table 2 is met. Again, these definitions fully agree with the intuitive explanations given in Section 1. If all axioms in an ontology hold in (i.e., if satisfies , written ), then is a model of . Thus a model is an abstraction of a state of the world that satisfies all axioms in the ontology. An ontology is consistent if it has at least one model. An axiom is a consequence of an ontology (or entails , written ) if holds in every model of . In particular, an inconsistent ontology entails every axiom.
A noteworthy consequence of this semantics is the meaning of individual names in DL ontologies. We already remarked that DLs do not usually make the Unique Name Assumption, and indeed our formal definition allows two individual names to be interpreted as the same individual (element of the domain). Possibly even more important is the fact that the domain of an interpretation is allowed to contain many individuals that are not represented by any individual name. A common confusion in modelling arises from the implicit assumption that interpretations must only contain individuals that are represented by individual names (such individuals are also called named individuals). For example, one could wrongly assume the ontology consisting of the axioms
to be inconsistent since it requires Julia to have at least 3 children when only one (John) is given. However, there are many conceivable models where Julia does have three children, even though only one of the children is explicitly named. A significant number of modelling errors can be traced back to similar misconceptions that are easy to prevent if the general open world assumption of DLs is kept in mind.
Another point to note is that the above specification of the semantics does not provide any hint as to how to compute the relevant entailments in practical software tools. There are infinitely many possible interpretations, each of which may have an infinite domain (in fact there are some ontologies that are satisfied only by interpretations with infinite domains). Therefore it is impossible to test all interpretations to see if they model a given ontology, and impossible to test all models of an ontology to see if they entail a given axiom. Rather, one has to devise deduction procedures and prove their correctness with respect to the above specification. The interplay of certain expressive features can make reasoning algorithms more complicated and in some cases it can even be shown that no correct and terminating algorithm exists at all (i.e., that reasoning is undecidable). For our purposes it suffices to know that entailment of axioms is decidable for (with the structural restrictions explained in Section 3) and that a number of free and commercial tools are available. Such tools are typically optimised for more specific reasoning problems, such as consistency checking, the entailment of concept subsumptions (subsumption checking) or of concept assertions (instance checking). Many of these standard inferencing problems can be expressed in terms of each other, so they can be handled by very similar reasoning algorithms.
Many different description logics have been introduced in the literature. Typically, they can be characterised by the types of constructors and axioms that they allow, which are often a subset of the constructors in . For example, the description logic is the fragment of that allows no RBox axioms and only , , , and as its concept constructors. The extension of with transitive roles is traditionally denoted by the letter . Some other letters used in DL names hint at a particular constructor, such as inverse roles , nominals , qualified number restrictions , and role hierarchies (role inclusion axioms without composition) . So, for example, the DL named extends with role hierarchies, inverse roles and qualified number restrictions. The letter most commonly refers to the presence of role inclusions, local reflexivity , and the universal role , as well as the additional role characteristics of transitivity, symmetry, asymmetry, role disjointness, reflexivity, and irreflexivity. This naming scheme explains the name .
In recent years, fragments of DLs have been specifically developed in order to obtain favourable computational properties. For this purpose, is already too large, since it only admits reasoning algorithms that run in worst-case exponential time. More lightweight DLs can be obtained by further restricting expressivity, while at the same time a number of additional features can be added without loosing the good computational properties. The three main approaches for obtaining lightweight DLs are , DLP and DL-Lite, which also correspond to language fragments OWL EL, OWL RL and OWL QL of the Web Ontology Language.
The family of description logics is characterised by allowing unlimited use of existential quantifiers and concept intersection. The original description logic allows only those features and but no unions, complements or universal quantifiers, and no RBox axioms. Further extensions of this language are known as and . The largest such extension allows the constructors , , , , , nominals and the universal role, and it supports all types of axioms other than role symmetry, asymmetry and irreflexivity. Interestingly, all standard reasoning tasks for this DL can still be solved in worst-case polynomial time. One can even drop the structural restriction of regularity that is important for . has been used to model large but lightweight ontologies that consist mainly of terminological data, in particular in the life sciences. A number of reasoners are specifically optimised for handling -type ontologies, the most recent of which is the ELK reasoner for OWL EL.^{6}^{6}6http://elk-reasoner.googlecode.com/
DLP is short for
Description Logic Programs
and comprises various DLs that are syntactically restricted in such a way that axioms could also be read as rules in first-order Horn logic without function symbols. Due to this, DLP-type logics can be considered as kinds of rule languages (hence the name OWL RL) contained in DLs. To accomplish this, one has to allow different syntactic forms for subconcepts and superconcepts in concept inclusion axioms. We do not provide the details here. While DLs in general may require us to consider domain elements that are not represented by individual names, for DLP one can always restrict attention to models in which all domain elements are represented by individual names. This is why DLP is often used to augment databases (interpreted as sets of ABox axioms), e.g., in an implementation of OWL RL in the Oracle 11g database management system.DL-Lite is a family of DLs that is also used in combination with large data collections and existing databases, in particular to augment the expressivity of a query language that retrieves such data. This approach, known as Ontology Based Data Access, considers ontologies as a language for constructing views or mapping rules on top of existing data. The core feature of DL-Lite is that data access can be realised with standard query languages such as SQL that are not aware of the DL semantics. Ontological information is merely used in a query preprocessing step. Like DLP, DL-Lite requires different syntactic restrictions for subconcepts and superconcepts. We do not present the details here.
The OWL Web Ontology Language is a knowledge representation language standardised by the World Wide Web Consortium (W3C). OWL is one of the most important applications of description logics today. In this section, we briefly outline the relationship of the two languages. A comprehensive treatment is beyond the scope of this paper; see Section 7 for pointers to further reading. The current version of the OWL specification is OWL 2 as standardised in 2009. This supersedes the earlier OWL 1 standard of 2004.
The main building blocks of OWL are indeed very similar to those of DLs, with the main difference that concepts are called classes and roles are called properties. It is therefore not surprising that description logics have had a major influence on the development of OWL and the expressive features that it provides. Historically, however, OWL has also been conceived as an extension to RDF, a Web data modelling language whose expressivity is comparable to DL ABoxes. The formal semantics of RDF is subtly different from that of DLs, even though both lead to the same consequences in many common cases. Extending the RDF semantics to the expressive features of OWL improves the compatibility between the two, but it also makes reasoning undecidable. Therefore, it has been decided to specify both styles of formal semantics for OWL: the Direct Semantics based on DLs and the RDF-based Semantics.
In this section, we are therefore mainly interested in the Direct Semantics of OWL. This semantics is only defined for OWL ontologies that abide by certain syntactic restrictions (essentially the restriction that the OWL axioms can be read as axioms for which the structural restrictions of Section 3 are satisfied). This syntactic fragment of OWL is called OWL DL.^{7}^{7}7In contrast, the OWL language without any syntactic constraints is called OWL Full. It comprises ontologies that can only be interpreted under the RDF-based Semantics. Under the Direct Semantics, large parts of OWL DL can indeed be considered as a syntactic variant of . For example, the axiom would be written as follows in OWL:
where the symbols , and would be identifier strings that conform to the OWL specification.^{8}^{8}8Entity names in OWL are generally based on Uniform Resource Identifiers (URIs). The details are not relevant here. The above example illustrates the close relationship between the syntax of and that of OWL. In many cases, it is indeed enough to translate an operator symbol of into the corresponding operator name in OWL, which is then written in prefix notation like a function. This is also why the above form of syntax is called Functional-Style Syntax. The OWL standard provides a number of syntactic forms that can be used to express OWL ontologies. The most prominent among these is the RDF/XML serialisation since it is the only format that all conforming OWL tools need to understand. On the other hand, it is more difficult for humans to read and we do not present it here.
It is interesting to note that there are still a few differences between OWL DL under the Direct Semantics and . On a syntactic level, OWL provides a lot more operators that, though logically redundant, can be convenient as shortcuts for compound DL axioms. For example, OWL has special constructs for specifying domain and range of a property, even though these could equally well be expressed as in Section 2.2. These kinds of features also include the empty (bottom) property, which can easily be defined but is not included as a language feature in DLs.
However, OWL also includes some expressive features that we did not include in our treatment of above. Most notably, this includes support for datatypes and datatype literals. These behave like classes and individual names but come with a fixed, pre-defined interpretation. For example, the datatype for Boolean values has exactly two elements – true and false – in any interpretation. This can also be introduced in DLs by so-called concrete domains, i.e., pre-defined interpretation domains. Both DLs and OWL in this case strictly distinguish roles/properties that relate to “abstract” individuals from those that relate to values from some datatype. In OWL, the constructs that relate to datatypes include “Data” in their name while constructs that relate to abstract individuals include “Object.” For example, OWL distinguishes ObjectIntersectionOf (used above) from DataIntersectionOf (the intersection of datatypes).
The only other logical feature that is missing in DLs are so-called Keys. These are special forms of rules that can be used for data integration. Roughly speaking, a key specifies that two named individuals are entailed to be equal if they agree on certain property values and class memberships, similar to key constraints in databases. For example, the combination of nationality and registration number might be treated as a key for (i.e., sufficient to uniquely identify) motor vehicles.
Besides the logical features, OWL also includes a number of other aspects that are not considered in description logics at all. For example, it includes means of naming an ontology and of importing ontological axioms from one ontology into another. Further extra-logical features include a simple form of meta-modelling called punning, non-logical axioms to declare identifiers, and the possibility to add annotations to arbitrary axioms and entities similar to comments in a programming language.
This paper can only provide a first introduction to description logics and OWL. More detailed introductory texts can be found in the lecture notes of the Reasoning Web Summer School: Rudolph provides a detailed discussion of DL semantics and modelling [15], Baader gives a general overview with extended historical notes [1], and Sattler focusses on tableau-based reasoning methods [18]. An extensive introduction to lightweight description logics is given by Krötzsch [12].
For a more detailed coverage of OWL and its relationship to DL, we recommend the textbook Foundations of Semantic Web Technologies [8]. This introductory text also treats the relationship of DLs to first-order logic, DL query answering and extensions for rule-based modelling (related to keys in OWL), which we have omitted here. An in-depth treatment of description logics and related research topics is provided by the Description Logic Handbook [3], which also covers interesting aspects of deduction algorithms and computational complexity that are beyond the scope of this paper.
A number of research papers focus on specific topics in DLs. Closely related to this paper is the original article on , which also provides the details on regularity conditions that have been skipped above [9]. A detailed discussion of OWL datatypes and their description logic semantics is given by Motik and Horrocks [13]. There are also various works that focus on [2, 10], DLP/OWL RL [6, 11] and DL-Lite [4]. Current developments in DL research are discussed at the annual DL Workshop (see http://dl.kr.org/
for proceedings) and at the major Semantic Web and Artificial Intelligence conferences.
The primary resources on OWL 2 are the online documents of the specification [14] where the OWL Primer provides a first introduction [7]. The differences of the 2009 OWL 2 standard to its predecessor are explained in [5].
Many related tools such as reasoners and ontology editors are available. The most popular free ontology editor is Protégé,^{9}^{9}9http://protege.stanford.edu/ which can be used with a variety of OWL reasoners. Pointers to current OWL reasoners are best found online.^{10}^{10}10A list of reasoners can be found, e.g., at http://semanticweb.org/wiki/Category:Reasoner. Popular systems for large parts of OWL 2 DL () include FaCT++, HermiT, Pellet and RacerPro. Some typical lightweight systems are ELK (OWL EL), jCEL (OWL EL), Owlgress (OWL QL), OWLIM (OWL RL and QL), Quonto (OWL QL) and Snorocket (OWL EL). Details about these tools and related publications can be found on the respective homepages.
We thank Fernando Bobillo, Peter Patel-Schneider and Evgeny Zolin for helpful comments on an earlier version of this text.
J. of Automated Reasoning
, 39(3):385–429, 2007.
Comments
There are no comments yet.