
Generating Ontologies from Templates: A Rule-Based Approach for Capturing Regularity Henrik Forssell Christian Kindermann Daniel P.Lupp Uli Sattler Evgenij Thorstensen Technical Report Contents 1 Introduction2 1.1 Examples . .3 2 Preliminaries7 3 Generators and GBoxes8 4 Results9 4.1 GBox containment and equivalence . 11 4.2 GBoxes with negation . 12 5 Related work 16 6 Future work 17 arXiv:1809.10436v1 [cs.AI] 27 Sep 2018 1 Abstract We present a second-order language that can be used to succinctly specify ontologies in a consistent and transparent manner. This language is based on ontology templates (OTTR), a framework for capturing recurring patterns of axioms in ontological modelling. The language, and our results are indepen- dent of any specific DL. We define the language and its semantics, including the case of negation-as- failure, investigate reasoning over ontologies specified using our language, and show results about the decidability of useful reasoning tasks about the language itself. We also state and discuss some open problems that we believe to be of interest. 1 Introduction The phenomenon of frequently occurring structures in ontologies engineering (OE) has received attention from a variety of angles. One of the first accounts is given in [6], where repeated versions of general conceptual models are identified. Similar observations gave rise to the notion of Ontology Design Patterns (ODP) as abstract descriptions of best practices in OE [15,4, 22 ]. Another view, emphasizing common ontological distinctions, led to the emergence of Upper Ontologies which aim to categorize general ideas shareable across different domains [16]. Orthogonal to such conceptual patterns, the existence of syntactic regularities in ontologies has been noted and some aspects of their nature have been analyzed [30, 29, 31]. In this paper, we propose a new language that allows expressing patterns of re- peated structures in ontologies. This language is rule-based and has both a model- theoretic and a fixpoint semantics, for which we show that they coincide. In con- trast to other rule languages “on top of” DLs, in this language, firing a rule results in the addition of TBox and/or ABox axioms, with the goal to succinctly describe ontologies, thereby making them more readable and maintainable. Given that DL ontologies are sets of axioms, an ontology provides no means to arrange its axioms in a convenient manner for ontology engineers. In particular, it is not possible to group conceptually related axioms or indicate interdependen- cies between axioms. While ontology editors such as Protégé1 display an ontology through a hierarchy of its entities, conceptual interdependencies between axioms are hidden and the underlying structural design of an ontology remains obfuscated. Example 1.1 Consider the ontology O1 = Jaguar Animal, Jaguar hasChild.Jaguar, (1) f Tiger v Animal, Tiger v 8hasChild.Tiger, (2) Lion v Animal, Lion v 8hasChild.Lion (3) v v 8 g Then, an ontology editor will group the entities Jaguar, Tiger and Lion under Animal according to their class hierarchy. However, O1 contains no indication that every subclass X of Animal can have only children of the same class X . Assume this regularity is no coincidence but a desired pattern that should hold for any subclass of Animal. Currently, ontol- ogy engineers have no means of expressing or enforcing such a pattern other than 1 https://protege.stanford.edu/ 2 dealing with the ontology as a whole, inspecting all axioms separately, and making necessary changes manually. Expressing patterns such as in Example 1.1 explicitly has a potential to reveal some aspects of the intentions for the design of an ontology. Example 1.2 Consider the ontology O Jaguar Animal, Tiger Animal, Lion Animal 2 = f v v v g In addition, consider the rule g : ?X Animal ?X hasChild.?X , f| v{z }g !| f v 8 {z }g Body Head where ?X is a variable. We can interpret the body of this rule as a query which, when evaluated over the ontology O2, returns substitutions for ?X . These substitutions can then be used to instantiate the axioms in the head of the rule. Firing the above rule over O2 would add all those resulting axioms to O2, thereby reconstructing O1 from Example 1.1. In the following, we will call such rules generators. The possible benefits of generators are threefold. Firstly, O2 in combination with g is easier to understand because g makes a statement about all subconcepts of Animal that the type of an animal determines the type of its children. This is a kind of meta-statement about concepts which a user of an ontology can usually only learn by inspecting (many) axioms in an ontology. Secondly, O2 in combination with g is easier to maintain and extend compared to O1, where a user would have to manually ensure that the meta-statement continues to be satisfied after new concepts have been added. Thirdly, conceptual relationships captured in a generator such as g are easy to reuse and can foster interoperability between ontologies in the spirit of ontology design patterns. We close this section with more elaborate examples to demonstrate the benefits generators such as g can provide. 1.1 Examples Example 1.3 (Composition) Assume we want to model typical roles in groups of social predatory animals. One such a role would be that of a hunter. A challenge for representing such knowledge is that different collective nouns are used for different animals, e.g. a group of lions is called a “pride”, a group of wild dogs is called a “pack”, a group of killer whales is called a “pod”, etc. Therefore, a mechanism that can conveniently iterate over all these group formations would be beneficial. Consider the following query Q1: 3 Q1 = ?X Animal, (4) f?X v eats.Animal, (5) ?X v 9hunts.Animal, (6) ?Y vSocialGroup 9 , (7) ?X v socialisesIn.?Y, (8) ?Y v 9hasMember.?X , (9) v 9 socialisesIn hasMember− (10) ≡ g Lines4–6 bind the variable ? X to a predatory animal. Line7 binds the variable ? Y to a type of social group and lines8–10 associate a particular type of animal with its respective social group. Given the bindings for ?X and ?Y it is straightforward to express that a particular type of predator ?X is a hunter in its respective social group, namely: ?Y hasHunter.?X . A generator such as in Example 1.2 could capture this relationship:v 9 g1 : Q1 ?Y hasHunter.?X ! f v 9 g Example 1.4 (Extension) Extending generator g1 from Example 1.3 to capture more specialised knowledge is straightforward. Consider predatory ants of the family Formicidae. These ants generally live in colonies with an elaborate social organisation consisting of workers, drones, queens, etc. First, we extend query Q1 with the following axioms: Q2 = Q1 ?X Formicidae, (11) [ f?Z v?Y (12) ?X v socialisesIn.?Z (13) v 9 g Axiom 11 requires ?X to bind to a type of Formicidae, e.g. ?X = SafariAnt. Ac- cording to query Q1, the variable ?Y binds to a general SocialGroup, e.g. ?Y = AntColony. Then, axiom 12 binds ?Z to a more specialised subgroup of a ?Y . Finally, axiom 13 ensures that this subgroup ?Z is associated with ?X . So for ?X = SafariAnt we get ?Z = SafariAntColony. Next, we can specify the generator to add all desired axioms based on matches of query Q2 specialised for ants: g2 : Q2 ?Z ! hasHunter.?X , f?Z v 9hasWorker.?X , ?Z v 9hasDrone.?X , ?Z v 9hasQueen.?X v 9 g Note how the body and head of generator g1 from Example 1.3 have been reused and extended only by set unions. Example 1.5 (Negative Guards) Often, general relationships are subject to excep- tions. While most ants hunt and feed cooperatively, there are some genera of ants, 4 e.g. Myrmecia, that do not. Therefore, g2 in Example 1.4 would generate an unde- sired axiom, namely MyrmeciaAntColony hasHunter.MyrmeciaAnt. This moti- vates guards in the body of generators that mayv not only specify positive constraints but also negative ones: Q3 = Q2 not ?X MyrmeciaAnt, [ fnot ?Z v MyrmeciaAntColony v g g3 : Q3 ?Z ! hasHunter.?X , f?Z v 9hasWorker.?X , ?Z v 9hasDrone.?X , ?Z v 9hasQueen.?X v 9 g One might argue that the effect of negative guards could also be achieved by positive guards using negated concepts in DL, i.e. ?X MyrmeciaAnt instead of not?X MyrmeciaAnt. However, this approach wouldv necessitate : the introduction of a potentiallyv large number of axioms of type ?X MyrmeciaAnt in the given ontology. This can be avoided by using g3. v : Another advantage of negative guards is the possibility to explicitly express de- fault assumptions for lack of better knowledge. An ant colony of a certain genus usually consists of only ants of this genus, e.g. SafariAntColony hasMember.SafariAnt. (14) v 8 However, some genera of ants are social parasites that enslave other ant species. In such a case, the default assumption about the homogeneity of an ant colony is wrong and the axiom 14 should not be added. Q4 = ?X Ant, f?Y v AntColony, ?Y v hasMember.?X , ?Z vAnt 9 , ?X v ?Z, not ?X v :enslaves.?Z, not ?Y v 9hasMember.?Z, v 9 g g : Q ?Y hasMember.?X 4 4 ! f v 8 g Example 1.6 (Recursion) Contagious diseases may be transmitted between ani- mals sharing a habitat. Overlapping habitats of infected animals may result in a propagation of diseases across habitats. Assume there is an overlap between habitats H1, H2, H3 such that there is no overlap between H1 and H3, H12 describes the overlap between H1 and H2, and H23 describes the overlap between H2 and H3 (see Figure1).
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages21 Page
-
File Size-