=Paper= {{Paper |id=None |storemode=property |title=Constraint Reuse in DL-Lite Core with Arbitrary Number Restrictions |pdfUrl=https://ceur-ws.org/Vol-866/keynote2.pdf |volume=Vol-866 |dblpUrl=https://dblp.org/rec/conf/amw/CasanovaBFVMS12 }} ==Constraint Reuse in DL-Lite Core with Arbitrary Number Restrictions== https://ceur-ws.org/Vol-866/keynote2.pdf
       Constraint Reuse in DL-Lite Core with Arbitrary
                   Number Restrictions
                                    (Extended Abstract)


   Marco A. Casanova1, Karin K. Breitman1, Antonio L. Furtado1, Vânia M.P. Vidal2,
                 José A. F. de Macêdo2, Eveline R. Sacramento1,3
              1
                Department of Informatics – PUC-Rio – Rio de Janeiro, RJ – Brazil
                     {casanova, karin, furtado, esacramento}@inf.puc-rio.br
         2
           Department of Computing, Federal University of Ceará – Fortaleza, CE – Brazil
                                {vvidal, jose.macedo}@lia.ufc.br
     3
       Ceará State Foundation of Meteorology and Water Resources – Fortaleza, CE – Brazil
                                    eveline@funceme.br



       Abstract. The process of reusing an ontology involves two issues: (1) selecting
       a set of terms from the ontology vocabulary; and (2) using the ontology con-
       straints to derive those that apply to such terms. The first issue corresponds to
       the familiar practice of importing namespaces. This paper proposes to address
       the second issue by introducing a set of operations over ontologies, treated as
       theories and not just as vocabularies. It discusses how to compute the opera-
       tions for a class of ontologies built upon DL-Lite core with arbitrary number re-
       strictions. Finally, for this class of ontologies, the paper addresses the question
       of minimizing the set of constraints which results from an operation.



       Keywords: constraints, DL-Lite Core, Description Logics.



1 Introduction

We introduce a set of concepts and procedures that promote constraint reuse in ontol-
ogy design. We start by introducing a set of operations on ontologies that create new
ontologies, including their constraints, out of other ontologies. Such operations extend
the idea of namespaces to take into account constraints and treat ontologies as theo-
ries. Then, we concretely show how to compute the operations when the ontologies
are built upon DL-Lite core with arbitrary number restrictions [3]. We refer to such
ontologies as lightweight ontologies. Finally, for lightweight ontologies, we show
how to minimize the set of constraints.
   The development in the paper adopts the machinery to handle constraints devel-
oped in [6][7][8], which uses DL-Lite core with arbitrary number restrictions [3].
Previous work by the authors [7] introduced the equivalent of the projection opera-
tion, but considered neither the other operations nor the question of optimizing the
representation of the resulting ontologies.




                                               2
   The paper is organized as follows. Section 2 presents the formal definition of the
operations. Section 3 shows how to compute the operations for lightweight ontolo-
gies. Section 4 addresses the question of minimizing the set of constraints that result
from an operation. Finally, Section 5 contains the conclusions.


2 A Formal Framework

2.1 A Brief Review of Basic Concepts

The definition of the operations depends only on the notion of theory, which we in-
troduce in the context of Description Logic (DL) [4].
    A DL language L is characterized by a vocabulary V, consisting of a set of atomic
concepts, a set of atomic roles, and the bottom concept . The sets of concept de-
scriptions and role descriptions of V depend on the specific description logic. An in-
clusion of V is an expression of the form u ⊑ v, where u and v both are concept de-
scriptions or both are role descriptions.
    An interpretation s of V consists of a nonempty set s, the domain of s, and an in-
terpretation function, also denoted s, with the usual definition [4]. We use s(u) to in-
dicate the value that s assigns to an expression u of V.
    Let  be an inclusion of V and  be a set of inclusions of V. We say that: s satisfies
 or s is a model of , denoted s ⊨ , iff s(u)  s(v); s satisfies or s is a model of ,
denoted s ⊨ , iff s satisfies all inclusions in  ;  logically implies , denoted  ⊨  ,
iff any model of  satisfies  ;  is satisfiable or consistent iff there is a model of  ;
 is strongly consistent iff  is consistent and  does not logically imply A ⊑ , for
some atomic concept A.
    The theory of a set  of inclusions of V, denoted [], is the set of all inclusions of
V which are logical consequences of .
    We are specially interest in DL-Lite core with arbitrary number restrictions [3],
                    N
denoted DL - Litecore   . The sets of basic concept descriptions, concept descriptions
and role descriptions in this case are defined as follows:
    If P is an atomic role, then P and P (inverse role) are role descriptions
    If u is an atomic concept or the bottom concept, and p is a role description, then
      u and ( n p) (at-least restriction, where n is a positive integer) are basic con-
      cept descriptions and also concept descriptions
    If u is a concept description, then u (negated concept) is a concept description
                  N
    For DL - Litecore , an inclusion of V is an expression of one of the forms u ⊑ v or
u ⊑ v, where u and v both are basic concept descriptions. That is, an inclusion may
contain a negated concept only on the right-hand side and it may not involve role de-
scriptions.
    We use the following abbreviations: “⊤” for “” (universal concept), “p” for
“( 1 p)” (existential quantification), “( n p)” for “( n+1 p)” (at-most restriction)




                                            3
and “u | v” for “u ⊑ v” (disjunction). By an unabbreviated expression we mean an
expression that does not use such abbreviations.
   Finally, an ontology is a pair O=(V,) such that V is a finite vocabulary, whose
atomic concepts and atomic roles are called the classes and properties of O, respec-
tively, and  is a finite set of inclusions of V, called the constraints of O. A light-
                                                                             N
weight ontology is an ontology whose constraints are inclusions of DL - Litecore .
   From this point on, we will use the terms class, property and constraint instead of
atomic concept, atomic role and inclusion, whenever reasonable.


2.2 Definition of the Operations

We define the following operations over ontologies.
Definition 1: Let O1 = (V1,1) and O2 = (V2,2) be two ontologies, W be a subset of V1
   and  be a set of constraints over V1.
      (i)   The selection of O1 = (V1,1) for , denoted [](O1), returns the ontology
            OS = (VS ,S), where VS = V1 and S = 1  .
      (ii) The projection of O1 = (V1 ,1) over W, denoted [W](O1), returns the ontol-
            ogy OP = (VP,P), where VP = W and P is the set of constraints in [1] that
            use only symbols in W.
      (iii) The union of O1 = (V1 ,1) and O2 = (V2 ,2), denoted O1  O2, returns the on-
            tology OU = (VU ,U), where VU = V1  V2 and U = 1  2.
      (iv) The intersection of O1 = (V1 ,1) and O2 = (V2 ,2), denoted O1  O2, returns
            the ontology ON = (VN ,N), where VN = V1  V2 and N = [1]  [2].
      (v) The difference of O1 = (V1 ,1) and O2 = (V2 ,2), denoted O1  O2, returns the
            ontology OD = (VD ,D), where VD = V1 and D = [1]  [2].
   Note that selections can be defined as unions. We also observe that the ontology
that results from each operation is unique. However, the set of constraints of the re-
sulting ontology is not necessarily minimal, a point elaborated in Section 4.


2.3         An Example

The Music Ontology (MO) [11] provides concepts and properties to describe artists,
albums, tracks, performances, arrangements, etc. on the Semantic Web. It is used by
several Linked Data sources, including MusicBrainz and BBC Music. The Music On-
tology RDF schema uses terms from the Friend of a Friend (FOAF) [5] and the XML
Schema (XSD) vocabularies, among others. We adopt the prefixes “mo:”, “foaf:” and
“xsd:” to respectively refer to these vocabularies.
   Figure 1 shows the class hierarchies of MO rooted at classes foaf:Agent and
foaf:Person. Let us focus on this fragment of MO.
   We first recall that FOAF has two constraints, informally formulated as follows:
 each person has at most one name
 foaf:Person and foaf:Organization are disjoint classes




                                             4
  Let V1 be the following set of terms from the FOAF and the XSD vocabularies:
  V1={ foaf:Agent, foaf:Person, foaf:Group, foaf:Organization, foaf:name, xsd:string }
  Let V2 contains the rest of the terms that appear in Figure 1:
  V2={ mo:MusicArtist, mo:CorporateBody, mo:SoloMusicArtist, mo:MusicGroup, mo:Label,
       mo:member_of }
   Let O1=(V1,1) be the projection [V1](FOAF) of FOAF over V1. Let O2=(V2,2) be
such that 2 contains just the inclusions over V2 shown in Figure 1:
   2={ mo:SoloMusicArtist ⊑ mo:MusicArtist, mo:MusicGroup ⊑ mo:MusicArtist,
        mo:Label ⊑ mo:CorporateBody }
   Then, most of Figure 1 is captured by the union O3=(V3,3) of O1 and O2. The rest
of Figure 1 is obtained by the selection [5](O3) of O3, where
   5={ mo:SoloMusicArtist ⊑ foaf:Person, mo:MusicGroup ⊑ foaf:Group,
         mo:CorporateBody ⊑ foaf:Organization,
          (1 mo:member_of) ⊑ foaf:Person, (1 mo:member_of) ⊑ foaf:Group }
where the last two constraints indicate that the domain and range of mo:member_of are
foaf:Person and foaf:Group, respectively.
   Finally, we construct O0=(V0,0), the ontology that corresponds to Figure 1, in two
different, albeit equivalent ways:
(1) O0 = [5]( [V1](FOAF)  O2 )         , using the selection operation
(2) O0 = (( [V1](FOAF)  O2 )  O5 ) , eliminating the selection operator
   We stress that the expression of the right-hand side of Eq. (1) (or Eq. (2)) provides
an explanation of how O0 is constructed from FOAF and additional terms and con-
straints.

                                owl:disjointWith
                                                               foaf:Agent



             foaf:name
xsd:string               foaf:Person                           foaf:Group    foaf:Organization



                                         mo:MusicArtist                     mo:CorporateBody



                          mo:SoloMusicArtist         mo:MusicGroup              mo:Label



         Fig.1. The class hierarchies of MO rooted at classes foaf:Agent and foaf:Person.




                                                    5
3. Computing the Operations over Lightweight Ontologies

3.1 Constraint Graphs

This section introduces the concept of constraint graphs, which leads to procedures to
compute the operations over lightweight ontologies.
    We say that the complement of a basic concept description e is e, and vice-versa.
If c is a concept description, then c denotes the complement of c.
    Let  be a set of (unabbreviated) inclusions and  be a set of (unabbreviated) con-
cept descriptions. The notion of constraint graphs [6] captures the structure of sets of
constraints.
Definition 2: The labeled graph g(,)=(,,) that captures  and , where  labels
   each node with a concept description, is defined as follows:
   (i) For each concept description e that occurs on the right- or left-hand side of
         an inclusion in , or that occurs in , there is exactly one node in  labeled
         with e. If necessary, the set of nodes is augmented with new nodes so that:
         (a) For each atomic concept C, there is one node in  labeled with C.
         (b) For each atomic role P, there is one node in  labeled with (1 P) and
               one node labeled with (1 P).
   (ii) If there is a node in  labeled with a concept description e, then there must be
         exactly one node in  labeled with e .
   (iii) For each inclusion e ⊑ f in , there is an arc (M,N) in , where M and N are
         the nodes labeled with e and f, respectively.
   (iv) If there are nodes M and N in  labeled with (m p) and (n p), where p is ei-
         ther P or P and m