<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Armstrong Relations for Ontology Design and Evaluation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Henriette Harmse</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Katarina Britz</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aurona Gerber</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CSIR CAIR, Information Science Department, Stellenbosch University</institution>
          ,
          <country country="ZA">South Africa</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>CSIR Meraka Institute and Department of Informatics, University of Pretoria</institution>
          ,
          <country country="ZA">South Africa</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>A challenge in ontology design is to ensure that the ontology accurately represents the application domain and application constraints. Motivating scenarios provide the motivation for the representation choices made during design, and competency questions are subsequently used to evaluate the design. In this paper we show how the notion of Armstrong relations from relational database theory can be used to generate motivating scenarios and competency questions for uniqueness constraints and not null constraints.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <sec id="sec-1-1">
        <title>In this paper3 our focus is on supporting an ontology engineer in designing an</title>
        <p>ontology that captures the relevant constraints of the application domain based
on the input of a domain expert. The problem is that the expert might have
omitted to mention constraints that are of importance. The question now is, how
can the ontology engineer help the expert to determine all relevant constraints?</p>
        <p>
          In an attempt to answer this, we translate Armstrong relations from
relational database theory to ontologies, which is the main contribution of this
paper. In relational database theory Armstrong relations are used to generate
\perfect test data" for a set of constraints. \Perfect test data" satis es all
constraints deemed relevant and violates all constraints considered irrelevant. For
arbitrary constraints Armstrong relations are undecidable [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ], and we therefore
limit ourselves to uniqueness constraints and not null constraints.
        </p>
        <p>
          Adopting the ontology design approach of Gruninger, et al.[
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], we consider
each row in an an Armstrong relation as a potential motivating scenario since
it satis es each meaningful constraint. The Armstrong relation will also violate
every irrelevant constraint and thus the Armstrong relation is a motivating
scenario for irrelevant constraints that could be used by a ontology engineer to
verify with an expert that the constraints that are violated, are indeed
irrelevant. Once expert and ontology engineer agree on which constraints should be
3 This work was partially funded by the National Research Foundation of South Africa
under Grant No. 85482.
met and which not, these constraints and motivating scenarios can be used to
evaluate the design of the ontology through formal competency questions (CQs).
        </p>
        <sec id="sec-1-1-1">
          <title>The paper is structured as follows: Section 2 presents preliminaries and Section 3 develops the algorithm for generating an Armstrong ABox, which we relate to ontology design and evaluation in Section 4. We conclude with Section 5.</title>
          <p>2
2.1</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>
        Ontology Design and Evaluation
The ontology design and evaluation approach of Gruninger, et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], aims to
engineer an ontology based on rst-order logic that matches a set of business
requirements expressed as a number of motivating scenarios. Each motivating
scenario gives rise to informal competency questions (CQ) which the ontology
should answer. Based on the informal CQs a terminology can be constructed
and the informal CQs can be translated into formal CQs. The last step in the
approach is to de ne the conditions under which the competency questions are
complete and to prove completeness.
      </p>
      <sec id="sec-2-1">
        <title>Competency questions are de ned by Gruninger, et al. [9] as follows:</title>
        <p>De nition 1. Let Tontology be a terminology with related axioms, Tground a set
of ground literals and Q a rst-order sentence expressed in terms of Tontology. A
formal competency question then has one of two forms:
Entailment CQ Determine whether Tontology [ Tground Q
Consistency CQ Determine whether Tontology [ Tground 2 :Q
2.2</p>
        <p>Armstrong Relations</p>
      </sec>
      <sec id="sec-2-2">
        <title>Armstrong relations are the underlying notion to Armstrong ABoxes which we</title>
        <p>present in Section 3. In this section we explain the bene t of using Armstrong
relations in relational database theory with some examples.</p>
      </sec>
      <sec id="sec-2-3">
        <title>A challenge in database design is to determine the constraints that are rel</title>
        <p>evant and the constraints that are irrelevant for a set of business requirements.</p>
      </sec>
      <sec id="sec-2-4">
        <title>This task is challenging due to the mismatch in expertise: typically domain ex</title>
        <p>
          perts have in-depth domain knowledge but limited modelling knowledge whilst
ontology engineers have modelling experience without domain knowledge. Test
data are therefore often used to validate, communicate and consolidate the
conceptual model [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ].
        </p>
        <p>
          In relational database theory perfect test data can be generated using
Armstrong relations. The generated test data are said to be perfect since an
Armstrong relation for a table schema is a set of data that satisfy all constraints that
are perceived to be relevant and violates all constraints that are perceived to
be irrelevant [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]4. As an example, consider the table schema Schedule used by
4 The formal de nition of an Armstrong relation can be found in the Link, et. al.
paper, which is similar to that of an Armstrong ABox de ned in De nition 8.
        </p>
      </sec>
      <sec id="sec-2-5">
        <title>Link, et al. [12] (Figure 1), which de nes a schedule of courses taught by lectur</title>
        <p>ers at given times in given rooms. Note that the primary key over C ID and Time
implies two constraints, namely that (1) the combination of C ID and Time is
unique and that (2) neither C ID nor Time is allowed to be null. An Armstrong
relation for these 2 constraints is given in the table in Figure 1. Note that ni is
used to represent a null marker or \no information".</p>
      </sec>
      <sec id="sec-2-6">
        <title>The table is an Armstrong relation for the table schema in Figure 1 because</title>
        <p>for all rows the combination of C ID and Time is unique and neither of these
columns contain any null values. Hence, it agrees with the uniqueness and not
null constraints that are relevant and it also violates all uniqueness and not
null constraints that are irrelevant. As an example it violates the uniqueness
constraint for C ID in rows 1 and 2.</p>
        <p>
          An Armstrong relation is constructed with only a certain set of constraints
in mind. The Armstrong relation of Figure 1 only considers uniqueness and not
null constraints. Moreover, Armstrong relations are undecidable for arbitrary
constraints [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], but under certain conditions Armstrong relations do exist for
cardinality constraints, uniqueness constraints, functional dependencies,
multivalued dependencies and not null constraints [
          <xref ref-type="bibr" rid="ref12 ref8">8, 12</xref>
          ]. In this paper we focus on
uniqueness- and not null constraints.
        </p>
      </sec>
      <sec id="sec-2-7">
        <title>Based on the example data in Figure 1, a domain expert subsequently realizes that having a lecturer teach two courses at the same time in the same room does not make sense. They decide to revise the table schema to that of Figure 2, which presents the related Armstrong relation as well.</title>
        <p>
          n-ary Relations In general DLs only consider unary (concepts) and binary
relations (roles) and hence n-ary relations cannot be expressed directly [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. Variants
of the DL DLR are the exception to the rule and explicitly include constructors
in their syntax for expressing n-ary relations [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. However, n-ary relations can
still be expressed in DLs that do not cater for n-ary relations through the notion
of rei cation [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ].
        </p>
        <p>
          Uniqueness Constraints The requirement for expressing uniqueness is a need
that has been expressed often by users of ontologies. This lead to various
implementations of identi cation constraints in DLs with di erent expressivity and
di erent behaviour [
          <xref ref-type="bibr" rid="ref13 ref3 ref5 ref6">3, 5, 6, 13</xref>
          ]. However, the underlying assumption on which
these implementations agree is that if two individuals x and y participate in
some inverse functional role r, then it follows that x = y. We will use Easy Keys
as de ned in Parsia, et. al. [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ].
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Generating an Armstrong ABox</title>
      <sec id="sec-3-1">
        <title>In this section we adapt the de nitions and algorithm of Link, et al. [12], which</title>
        <p>are applicable to relational database theory to ontologies. The translation has to
consider di erences between DLs and relational database theory, in particular
the open world/closed world assumption. However, in constructing an Armstrong</p>
      </sec>
      <sec id="sec-3-2">
        <title>ABox we will restrict ourselves to known individuals.</title>
        <p>The translation will be presented by rst providing an informal discussion
and/or example based on the table schemas and instances in Section 2.2. This
approach is adopted so that the parallels between relational database theory and
ontologies are clear, which will help to clarify why the Armstrong relation notion
can be applied to ontologies. These informal explanations are followed by the
formal DL related de nitions and examples.
3.1</p>
        <p>Ontology Structure for representing an Armstrong Relation</p>
      </sec>
      <sec id="sec-3-3">
        <title>Intuitively a table schema maps to a TBox and a table instance to an ABox.</title>
      </sec>
      <sec id="sec-3-4">
        <title>Hence, an Armstrong relation for a table schema Schema will translate to an</title>
        <p>ontology OSchema where OSchema = TSchema [ ASchema.</p>
      </sec>
      <sec id="sec-3-5">
        <title>The table schema of Figure 2 describes three di erent aspects of the table</title>
        <p>schema Schedule namely:</p>
      </sec>
      <sec id="sec-3-6">
        <title>1. The structure of the table schema Schedule, which consists of columns C ID,</title>
        <p>
          Time, L Name and Room, where each column is associated with a countably
innite domain, which in this case is respectively CHAR[
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], VARCHAR, CHAR[15]
and VARCHAR.
        </p>
      </sec>
      <sec id="sec-3-7">
        <title>2. The primary key over C ID and Time, which states that for these columns</title>
        <p>null values are not allowed, which we will refer to as null-free here.</p>
      </sec>
      <sec id="sec-3-8">
        <title>3. The uniqueness constraint which is speci ed over C ID and Time and the</title>
        <p>uniqueness constraint which is speci ed over Time, L Name and Room.</p>
      </sec>
      <sec id="sec-3-9">
        <title>The Armstrong algorithm of Link, et al. [12] depends on the ability to discern</title>
        <p>these di erent aspects of a table schema. We therefore partition TSchema such</p>
        <p>S nf S
that TSchema = TSchema[TSchema[TSchema, where TSchema de nes the structural
nf
aspects, TSchema the null-free aspects and TSchema the uniqueness constraints
that apply to the Schema representation in DLs.
3.2</p>
        <p>Characterization of n-ary Relations</p>
      </sec>
      <sec id="sec-3-10">
        <title>The de nitions presented in this section establishes the terminology that will be used to give a compact characterization of the DL representation of a table schema. The structure of a table schema consisting of n columns can be represented via rei cation, which we formalize in De nition 2 [1].</title>
        <p>De nition 2. An n-ary relation Rn over components R1; : : : ; Rn can be
expressed as the rei ed concept CRn using n roles r1; : : : ; rn such that
CRn v
1r1:&gt; u : : : u</p>
        <p>1rn:&gt;
&gt; v 8r1:R1 u : : : u &gt; v 8rn:Rn</p>
        <p>CRn hasKey (r1; : : : ; rn)
where the key constraint ensures that no 2 individuals of CRn agrees on their
participation in roles r1; : : : ; rn. For convenience we denote the DL axioms that
represent the n-ary relation Rn as TRSn .</p>
        <p>S
Example 1. The corresponding TBox TSched axioms for the table schema of
Figure 2 are:</p>
        <p>
          S
TSched = fCSched v
1rC ID:&gt;u
1rT ime:&gt;u
1rL Name:&gt;u
1rRoom:&gt;;
&gt; v 8rC ID:Rchar[
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]; &gt; v 8rT ime:Rvarchar; &gt; v 8rL Name:Rchar[15];
&gt; v 8rRoom:Rvarchar; CSched hasKey (rC ID; rT ime; rL Name; rRoom)g
where RcDhar[
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]; RvDarchar; RcDhar[15]
        </p>
        <p>4D and 4D is the domain of all data types.</p>
      </sec>
      <sec id="sec-3-11">
        <title>For a given table schema various table instances can exist. The table instance</title>
        <p>of Figure 2 is one possible table instance of the related table schema Schedule.</p>
      </sec>
      <sec id="sec-3-12">
        <title>When for a given row certain column values are not null, the row is said to</title>
        <p>be total for those columns. In the table instance of Figure 1, row 1 is total for
columns C ID, Time, L Name and Room, while row 4 is total only for columns C ID,</p>
      </sec>
      <sec id="sec-3-13">
        <title>Time and Room. When all rows for a table instance are total for a set of columns, the table instance is said to be total for those columns. Hence, the table instance is total for columns C ID and Time.</title>
        <p>A table instance is represented in DLs as an ABox, denoted by ARn ,
corresponding to TBox TRn . For a given TRn any number of A0Rn ; A1Rn ; : : : can exist,
i
where each ARn represents a di erent table instance for a given table schema.
The next de nition de nes ARn and related notions.</p>
        <p>De nition 3. An ABox ARn corresponding to TRn consists of a set of
assertions CRn (cj ); j 1. A known individual c of CRn is said to be X-total, X
fr1; : : : ; rng, if there are known individuals hi, such that Ri(hi) and ri(c; hi), for
any ri 2 X. ARn is said to be X-total if for all known individuals cj , j 1
such that CRn (cj ) 2 ARn we have that cj is X-total.</p>
        <p>Example 2. The corresponding ASched is given for TSched in Table 1 where c1,
c2, c3 and c4 (for which the assertions are not explicitly shown) are individuals of</p>
      </sec>
      <sec id="sec-3-14">
        <title>CSched. Table 1 is the ABox representation of the table instance of Figure 2. Note</title>
        <p>that no assertions are added for null markers since this represents the semantics
of \no information" faithfully. Individual c1 is frC ID; rT ime; rL Name;
rRoomgtotal and ASched is frC ID; rT imeg-total.</p>
      </sec>
      <sec id="sec-3-15">
        <title>The table schema of Figure 2 states that columns C ID and Time together</title>
        <p>represent the primary key of Schedule. One implication of this is that columns</p>
      </sec>
      <sec id="sec-3-16">
        <title>C ID and Time represent a null-free subschema of Schedule and hence the table</title>
        <p>instance of Figure 2 is fC ID,Timeg-total.
De nition 4. Let X fr1; : : : ; rng be a subset of the components of Rn that
are null-free in the application domain, we de ne TRnnf such that it consists of
the axioms CRn v 9ri:&gt;, for any ri 2 X. If TRnnf is non-empty we say TRn is
null-free for X, which we abbreviate by nf (TRn ; X). When ARn is also X-total
and therefore ARn satis es nf (TRn ; X), we say that ARn is null-free for X,
which we denote by ARn nf (TRn ; X).</p>
        <p>Example 3. When fCSched v 9rC ID:&gt;; CSched v 9rC T ime:&gt;g TSncfhed, we say
that the Schedule relation is null-free for rC ID and rT ime, which we denote by
nf (TSched; frC ID; rT imeg). From Table 1 we determine that ASched is null-free
for rC ID and rT ime since ASched is frC ID; rT imeg-total. Hence, we have that
ASched nf (TSched; frC ID; rT imeg).</p>
      </sec>
      <sec id="sec-3-17">
        <title>A cardinality constraint (CC) over columns of a table schema constrains how many times a combination of values can be duplicated for those columns in a table instance. This is expressed as card(columns) b. As an example, the table instance of Figure 2 satis es card(L N ame; Room) 2.</title>
        <p>De nition 5. A cardinality constraint (CC) over TRSn is a statement
card(TRn ; X) b where X fr1; : : : ; rng and b is a positive integer. The CC
card(TRn ; X) b is satis ed by ARn , which we denote by
ARn card(TRn ; X) b, if and only if for each rk 2 X there is a named
individual hk such that
]fcjjcj is X-total; CRn (cj) 2 ARn and for each ri 2 X; 9hi such that</p>
        <p>Ri(hi) 2 ARn ; ri(cj; hi) 2 ARn g
b:
In the special case where b = 1 for a CC, the CC is called a uniqueness
constraint (UC) and is represented by u(TRn ; X), which if satis ed by ARn is
denoted by ARn u(TRn ; X) 5.</p>
        <p>Example 4. For Table 1 ASched
card(TSched; frL Name; rRoomg)</p>
      </sec>
      <sec id="sec-3-18">
        <title>Recall from Section 2.2 that an Armstrong relation satis es all constraints that are relevant and violates all constraints that are irrelevant. I.e., the table schema of Figure 2 states that there is a UC over columns C ID and Time. Hence, there is no row in the Armstrong relation of Figure 2 that violates this constraint.</title>
        <p>De nition 6. Let be a set of constraints (i.e. UCs) over TRSn . We say that
ARn satis es , denoted by ARn , if ARn satis es every element of .
If for some 2 , ARn does not satisfy we say ARn violates and write
ARn 1 . By extension we have that ARn also violates , which we denote by
ARn 1 . For convenience we represent the axioms that represent as TRn .
Example 5. For ASched of Table 1 we have that ASched where
= fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g. However, for
= fu(rC ID); u(rL Name; rRoom)g we have that ASched 1 .
De nition 7. Assume TRSn is given with nf (TRn ; X); X fr1; : : : ; rng, with
[ f'g a nite set of constraints over TRn . We say that implies ' in
the presence of nf (TRn ; X), denoted by ; nf (TRn ; X) ', if every X-total
ARn that satis es also satis es '. If does not imply ' in the presence
of nf (TRn ; X) it is denoted by ; nf (TRn ; X) 2 '. We denote the semantic
closure of and nf (TRn ; X) by nf(TRn ;X), which we de ne as
nf(TRn ;X) = f'j ; nf (TRn ; X)</p>
        <p>'g</p>
        <p>S
Example 6. For TSched, nf (TSched; frC ID; rT imeg) and
= fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g we have that
nf(TSched;frC ID;rTimeg) = fu(rC ID; rT ime); u(rT ime; rL Name; rRoom);
u(rC ID; rT ime; rL Name); u(rC ID; rT ime; rRoom);
u(rC ID; rT ime; rL Name; rRoom)g</p>
      </sec>
      <sec id="sec-3-19">
        <title>Given the previous de nitions it is now possible to formalize the notion of</title>
        <p>an Armstrong ABox for an n-ary relation Rn.</p>
        <p>De nition 8. Let C denote a class of constraints and let be a nite set of
elements from C. Assume nf (TRn ; X), X S holds where S = fr1; : : : ; rng. We
say ARn is C-Armstrong for and nf (TRn ; X) if and only if
1. ARn satis es , which we write as ARn ,
2. ARn violates every ' 2= nf(TRn ;X), which we write as ARn 1 ' for each
' 2= nf(TRn ;X),
3. ARn is X-total, which is written as ARn nf (TRn ; X), and
4. for any H S X, ARn is not H-total, which we write as ARn 1 nf (TRn ; H).</p>
        <p>S
Example 7. For TSched, nf (TSchedtheoremstar; frC ID; rT imeg) and
= fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g, we can con rm that ASched of
Table 1 is C-Armstrong, where C represents the class of UCs, by verifying that:
1. ASched satis es ,
2. ASched violates every ' 2= nf(TSched;frC ID;rT imeg),
3. ASched is frC ID; rT imeg-total and
4. ASched is not frL Nameg-total or frRoomg-total.
3.4</p>
        <p>
          Anti-keys and Strong Agreement Sets
Calculating an Armstrong relation for the class of UCs depends on the ability
to determine those columns for which no UC is implied in order for them to
be violated. Rather than violating all UCs not implied, it is su cient to only
violate those that are maximal with the property that they are not implied by
in the presence of the null-free subschema. Evidence for this intuition can be
seen in Figure 2. The combination of C ID, L Name and Room as a potential UC is
violated by rows 1 and 2, which implies that no subset of these columns can be
a UC. In relational database theory the combination of Time, L Name and Room
is referred to as an anti-key [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ].
        </p>
      </sec>
      <sec id="sec-3-20">
        <title>An anti-key satis es the following 3 conditions: (1) anti-keys are columns of a table schema, (2) anti-keys are non-empty sets of columns of a table schema for which no UC hold, and (3) anti-keys are maximal w.r.t. condition (2).</title>
        <p>De nition 9. Let be a set of UCs, S = fr1; : : : ; rng, X S and assume
nf (TRn ; X) holds for TRSn . For Y S, we denote that Y is an anti-key by a(Y ).
The set 1 of all anti-keys is de ned as
1 = fa(Y )jY</p>
        <p>S and ; nf (TRn ; X) 2 u(TRn ; Y ) and
for any H
(S</p>
        <p>Y )[ ; nf (TRn ; X)
u(TRn ; Y [ H)]g
Example 8. The anti-keys for TSched with nf (TRn ; frC ID; rT imeg) and UCs
fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g is given by
1 = fa(rC ID; rL Name; rRoom); a(rT ime; rL Name); a(rT ime; rRoom)g.
=</p>
        <p>
          Anti-keys can be calculated using hypergraphs where the columns of the table
schema and the sets of columns representing UCs are respectively the vertexes
and the edges [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. Since only minimal UCs are used, the hypergraph is a simple
hypergraph. We illustrate the calculation of anti-keys through an example. The
minimal transversal [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] of H is given by T r(H) = ffTimeg; fC ID; Roomg;
fC ID; L Namegg. Anti-keys are maximal such that they are not UCs. Since each
element of the transversal represent columns that form part of minimal UCs, the
set di erence between the set of columns representing the table schema and an
element of the transversal delivers an anti-key. I.e., the set di erence between the
columns of Schedule and fTimeg, the rst element of the transversal, delivers
the anti-key over C ID, L Name and Room.
        </p>
      </sec>
      <sec id="sec-3-21">
        <title>Algorithm 1 Algorithm for calculating an Armstrong ABox</title>
        <p>Input: TBox TRSn , S = fr1; : : : ; rng, a set of UCs and nf (TRn ; X), X
Output: Armstrong ABox ARn for and nf (TRn ; X) where
hri;jri ; i = f1; : : : ; ng; jri 1; are individuals such that Ri(hri;jri )
S
A1:
A2:
A3:
A4:
A5:
hri;jri =</p>
        <p>hri;jri , else
else return ARn</p>
        <p>&gt;8hri;1, if ri 2 Y
ARn = ARn [ fCRn (c1); ri(c1; hri;1)g; i = f1; : : : ; ng
Compute 1 using hypergraph methods
k = 2; jri = 2; i = f1; : : : ; ng;
for all Y such that a(Y ) 2 1 do</p>
        <p>ARn = ARn [ fCRn (ck); ri(ck; hri;jri )g; i = f1; : : : ; ng where
Let Z
if Z
hri;jri = &lt;hri;jri ; jri = jri + 1, if ri 2 X Y ; k = k + 1;</p>
        <p>&gt;:do nothing, else</p>
        <p>S be such that ARn is Z-total</p>
        <p>X 6= ? then
ARn = ARn [ fCRn (ck); ri(ck; hri;jri )g; i = f1; : : : ; ng where
(do nothing, if ri 2 X</p>
        <p>Z
; return ARn
Lemma 1. De ne the hypergraph H for TRSn , S = fr1; : : : ; rng, with a set
of minimal UCs, with nf (TRn ; X), X S, as H = (V; E) where V = S and
E = fZju(Z) 2 g. Then the set of anti-keys is de ned as
1 = fa(S</p>
        <p>W )jW 2 T r(H)g
where T r(H) denotes the minimal transversal of the hypergraph H.
Example 9. For TSSched and = fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g we
create the hypergraph H = (V; E) where V = frC ID; rT ime; rL Name; rRoomg
and E = ffrC ID; rT imeg; frT ime; rL Name; rRoomgg. We then have that
T r(H) = ffrT imeg; frC ID; rRoomg; frC ID; rL Namegg from which follows that
1 = fa(rC ID; rL Name; rRoom); a(rT ime; rL Name); a(rT ime; rRoom)g.</p>
      </sec>
      <sec id="sec-3-22">
        <title>A notion related to that of anti-keys is strong agreement sets. Two rows of a</title>
        <p>table instance is said to strongly agree on a set of columns if for those columns
the two rows agree on their total values. For the table instance in Figure 2 row</p>
      </sec>
      <sec id="sec-3-23">
        <title>1 and 2 strongly agree on columns C ID, L Name and Room.</title>
        <p>De nition 10. Given ARn we say two individuals c1 and c2 of concept CRn
strongly agree on the roles X, X S, where S = fr1; : : : ; rng, if they are
X-total and the llers of each ri 2 X are lled by the same individuals. The
strong agreement set of c1 and c2, denoted by ags(c1; c2), is given by
ags(c1; c2) = frijri-total ; CRn (c1) 2 ARn ; CRn (c2) 2 ARn ; and 9yi; zi such that
Ri(yi) 2 ARn ; Ri(zi) 2 ARn ; ri(c1; yi) 2 ARn ; ri(c2; zi) 2 ARn
and yi = zi for any ri 2 Xg:
The strong agreement set of ARn is given by ags(ARn ) which we de ne as
ags(ARn ) = fags(c1; c2)jCRn (c1) ^ CRn (c2) ^ c1 6= c2g
Example 10. The strong agreement set of ARn of Table 1 is given by
ags(ASched) = ffrC ID; rL Name; rRoomg; frT ime; rL Nameg; frT ime; rRoomg;
frL Nameg; frRoomg; frT imegg
3.5</p>
        <p>Algorithm for generating an Armstrong ABox</p>
      </sec>
      <sec id="sec-3-24">
        <title>Anti-keys and strong agreement sets are useful to characterize an Armstrong relation for the class of UCs and a null-free subschema. A table instance is Armstrong for the class of UCs and a null-free subschema if and only if the following conditions hold:</title>
      </sec>
      <sec id="sec-3-25">
        <title>1. Each anti-key is an element of a strong agreement set.</title>
      </sec>
      <sec id="sec-3-26">
        <title>2. There is no uniqueness constraint such that the set of columns representing</title>
        <p>a uniqueness constraint is a subset of a strong agreement set.</p>
      </sec>
      <sec id="sec-3-27">
        <title>3. The set of columns over which the table instance is total is the same as the null-free subschema.</title>
        <p>
          Theorem 1. For TRSn let be a set of UCs and assume nf (TRn ; X), X S
where S = fr1; : : : ; rng holds. An ABox ARn for TRSn , and nf (TRn ; X) is an
Armstrong ABox if and only if the following conditions hold:
1. 8a(Y ) 2 1[Y 2 ags(ARn )],
2. (8u(TRn ; Y ) 2 )(8Z 2 ags(ARn ))[(Y * Z)],
3. Let Z S be such that ARn is Z-total, then Z = X [
          <xref ref-type="bibr" rid="ref10 ref12">10, 12</xref>
          ].
        </p>
        <p>Example 11. Examples 9 and 10 calculated 1 and ags(ASched) for TSched with
nf (TRn ; frC ID; rT imeg) and = fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g.
It therefore follows from Theorem 1 that ARn (Table 1) is an Armstrong ABox.
C ID
rC ID(c1; hrC ID;1) rT ime(c1; hrT ime;1) rL Name(c1; hrL Name;1) rRoom(c1; hrRoom;1)
rC ID(c2; hrC ID;1) rT ime(c2; hrT ime;2) rL Name(c2; hrL Name;1) rRoom(c2; hrRoom;1)
rC ID(c3; hrC ID;2) rT ime(c3; hrT ime;1) rL Name(c3; hrL Name;1)
rC ID(c4; hrC ID;3) rT ime(c4; hrT ime;1) rRoom(c4; hrRoom;1)</p>
        <p>Algorithm 1 calculates an Armstrong ABox ARn for TRSn , S = fr1; : : : ; rng,
with nf (TRn ; X) for X S and is a set of UCs, using the following steps: (A1)
generates an arbitrary rst tuple. (A2) calculates the anti-keys. (A3) initializes
indexes k and jri , where k keeps track of the number of individuals representing
tuples and indexes jri keep track of the number of di erent individuals used as
role llers for each of the roles ri. (A4) generates for each anti-key an individual
ck with related assertions where hri;1 is re-used when ri forms part of an anti-key.
(A5) generates the equivalent of ni for any ri that is not null-free.
Example 12. For TSSched , = fu(rC ID; rT ime); u(rT ime; rL Name; rRoom)g and
nf (T ; frC ID; rT imeg) we generate ASched (Table 2) using Algorithm 1, assuming
CRn (c1); : : : ; CRn (c4) are implied. A mapping of each hri;jri delivers Table 1.</p>
      </sec>
      <sec id="sec-3-28">
        <title>Theorem 2 follows from Lemma 1 and Theorem 1 [12].</title>
        <p>Theorem 2. On input (TRSn ; ; nf (TRn ; X)) Algorithm 1 generates an
Armstrong ABox ARn over TRSn that is Armstrong for and nf (TRn ; X).</p>
      </sec>
      <sec id="sec-3-29">
        <title>The preceding de nitions motivate the following de nition:</title>
        <p>De nition 11. Given TRSn with a set of UCs and nf (TRn ; X), X S where
S
S = fr1; : : : ; rng, we de ne the corresponding TBox TRn as TRn = TRn [ TRn [
TRnnf where TRn consists of the axioms representing and TRnnf consists of the
axioms representing nf (TRn ; X). The corresponding Armstrong ontology ORn is
given by ORn = TRn [ ARn where ARn is an Armstrong ABox for TRn .
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Ontology Design and Evaluation using Armstrong</title>
    </sec>
    <sec id="sec-5">
      <title>ABoxes</title>
      <sec id="sec-5-1">
        <title>In this section we discuss how an Armstrong ABox can be used to generate</title>
        <p>motivating scenarios and CQs.</p>
        <p>Each row in Table 1 represents a scenario that supports the current design
decisions for the ontology since it satis es all relevant constraints. Each row
in Table 1 is thus a motivating scenario. In order to ensure no latent UCs are
missed, the complete table also needs to be considered. To communicate the
current understanding of the relevant and irrelevant constraints, an ontology
engineer can use an informal notation such as the table instance in Figure 2. In
this way an Armstrong ABox can be used to systematically generate scenarios
which can help an expert to validate the design.</p>
        <p>The design of the ontology can be evaluated through generated CQs. TRn
represent the axioms that have to be satis ed in every model. Hence, it follows that
for every 2 TRn we have that TRn , which is referred to as an entailment CQ
in Section 2.1. Each row of Table 1 must be consistent for ORn , which we can
express as ORn 2 :Q where for all i = f1; : : : ng Q = CRn (cj ) ^ R(hij ) ^ ri(cj ; hij ),
which is referred to as a consistency CQ in Section 2.1. Note that this last CQ
represents a means with which the motivating scenarios can be formally
evaluated since, as stated earlier, ARn consists of motivating scenarios.
5</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <sec id="sec-6-1">
        <title>We presented a preliminary theoretical framework for applying Armstrong re</title>
        <p>
          lations to ontology design within the context of the ontology design approach
of Gruninger, et al. [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], where motivating scenarios inform design decisions and
        </p>
      </sec>
      <sec id="sec-6-2">
        <title>CQs are used to evaluate the ontology design. In future research we will investigate the applicability of Armstrong ABoxes to other DL constraints and aim to show how this framework can be used to revise existing populated ontologies. 11</title>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P</given-names>
          </string-name>
          . (eds.):
          <article-title>The Description Logic Handbook</article-title>
          . Cambridge University Press (
          <year>2007</year>
          ),
          <article-title>2nd edition</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Beeri</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dowd</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fagin</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Statman</surname>
          </string-name>
          , R.:
          <article-title>On the Structure of Armstrong Relations for Functional Dependencies</article-title>
          .
          <source>J. ACM</source>
          <volume>31</volume>
          (
          <issue>1</issue>
          ),
          <volume>30</volume>
          {
          <fpage>46</fpage>
          (
          <year>1984</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Borgida</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weddell</surname>
            ,
            <given-names>G.E.</given-names>
          </string-name>
          :
          <article-title>Adding Uniqueness Constraints to Description Logics (Preliminary Report)</article-title>
          . In: Bry,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Ramakrishnan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Ramamohanarao</surname>
          </string-name>
          ,
          <string-name>
            <surname>K</surname>
          </string-name>
          . (eds.)
          <source>DOOD. Lecture Notes in Computer Science</source>
          , vol.
          <volume>1341</volume>
          , pp.
          <volume>85</volume>
          {
          <fpage>102</fpage>
          . Springer (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosati</surname>
          </string-name>
          , R.:
          <article-title>Description Logic Framework for Information Integration</article-title>
          .
          <source>In: Principles of Knowledge Representation and Reasoning</source>
          . pp.
          <volume>2</volume>
          {
          <fpage>13</fpage>
          .
          <string-name>
            <surname>Citeseer</surname>
          </string-name>
          (
          <year>1998</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Identi cation Constraints and Functional Dependencies in Description Logics</article-title>
          .
          <source>In: Proceedings International Joint Conference on Arti cial Intelligence</source>
          . vol.
          <volume>17</volume>
          , pp.
          <volume>155</volume>
          {
          <fpage>160</fpage>
          .
          <string-name>
            <surname>Citeseer</surname>
          </string-name>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fischl</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pichler</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sallinger</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simkus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Capturing relational schemas and functional dependencies in RDFS</article-title>
          .
          <source>In: Proceedings of the 28th AAAI Conference on Arti cial Intelligence</source>
          .
          <article-title>(</article-title>
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
          </string-name>
          , G.:
          <article-title>Identifying the Minimal Transversals of a Hypergraph and Related Problems</article-title>
          .
          <source>In: SIAM Journal on Computing</source>
          . pp.
          <volume>1278</volume>
          {
          <fpage>1304</fpage>
          .
          <string-name>
            <surname>Society</surname>
          </string-name>
          for Industrial and Applied Mathematics (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Fagin</surname>
          </string-name>
          , R.:
          <source>Armstrong Databases. Tech. rep. (May</source>
          <year>1982</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9. Gruninger,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Fox</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          :
          <article-title>Methodology for the Design and Evaluation of Ontologies</article-title>
          .
          <source>In: Proceedings of International Joint Conference on Arti cial Intelligence, Workshop on Basic Ontological Issues in Knowledge Sharing, April</source>
          <volume>13</volume>
          ,
          <year>1995</year>
          (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Hartmann</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leck</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Link</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>On Codd Families of Keys over Incomplete Relations</article-title>
          .
          <source>Comput. J</source>
          .
          <volume>54</volume>
          (
          <issue>7</issue>
          ),
          <volume>1166</volume>
          {
          <fpage>1180</fpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. I.
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          <string-name>
            <surname>Kutz</surname>
            , and
            <given-names>U.</given-names>
          </string-name>
          <string-name>
            <surname>Sattler</surname>
          </string-name>
          .
          <article-title>The even more irresistible SROIQ</article-title>
          . In P. Doherty,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mylopoulos</surname>
          </string-name>
          , and
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>A</article-title>
          . Welty, editors,
          <source>Proceedings of the 10th International Conference on Principles of Knowledge Representation and Reasoning</source>
          , pages
          <volume>57</volume>
          {
          <fpage>67</fpage>
          . AAAI Press,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Link</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          : Armstrong Databases: Validation,
          <article-title>Communication and Consolidation of Conceptual Models with Perfect Test Data</article-title>
          .
          <source>Proceedings of the Eighth Asia-Paci c Conference on Conceptual Modelling</source>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Parsia</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schneider</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Easy Keys for OWL</article-title>
          . In: Dolbear,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Ruttenberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Sattler</surname>
          </string-name>
          ,
          <string-name>
            <surname>U</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the 5th Workshop on OWL: Experiences and Directions. CEUR Workshop Proceedings</source>
          , vol.
          <volume>432</volume>
          . CEUR Workshop Proceedings (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>