<!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>Uni cation in E L for Competency Question Generation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Yuri Malheiros</string-name>
          <email>yuri@dcx.ufpb.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fred Freitas</string-name>
          <email>fred@cin.ufpe.br</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universidade Federal da Para ba (UFPB)</institution>
          ,
          <addr-line>Rio Tinto - PB</addr-line>
          ,
          <country country="BR">Brazil</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Universidade Federal de Pernambuco (UFPE)</institution>
          ,
          <addr-line>Recife - PE</addr-line>
          ,
          <country country="BR">Brazil</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Competency Questions (CQs) are widely used in ontology development to represent the ontology requirements. Engineers can check if a CQ is satis ed manually or with software assistance. However, when a CQ is not satis ed, they need to analyze the axioms to discover what is missing. This activity may be hard and time-consuming, because of the size of the ontology and the complexity to inspect the axioms using inferences. In this paper, we present a method that uses uni cation in EL to generate new CQs based on an unsatis ed CQ. They are used to questioning an engineer, therefore she can provide answers to add the missing knowledge so as to satisfy the initial CQ to the ontology. We did two experiments using the SNOMED CT ontology. Our approach generated questions to add the missing knowledge in 69.09% cases.</p>
      </abstract>
      <kwd-group>
        <kwd>ontology engineering</kwd>
        <kwd>competency questions</kwd>
        <kwd>uni cation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        For years, ontologies were developed through ad hoc e orts. There was no
patterns or methodologies to guide engineers during the process to build an ontology.
Thus, each team followed its own rules and set of activities [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        However, since 1990, consistent methodologies and tools have been proposed
to support ontology development. These methodologies address the tasks of
creating and maintaining an ontology; thus, they specify an ontology life-cycle,
dene how to describe the ontology scope and requirements (this latter consisting
of the competency questions (CQs) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]), how to create the ontology speci
cation, how to conduct its evolution, etc. Some well-known methodologies to
ontology development are: Methontology [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], On-To-Knowledge [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], Ontology
101 [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], and NeOn [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. And, some popular tools are: Protege [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], OntoStudio3,
NeOn Toolkit [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], OntoEdit [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] and WebODE [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>Competency questions (CQs) are widely used in ontology development to
represent the ontology requirements. They are a set of questions that an ontology
must answer using the knowledge represented by its axioms. For example, in an</p>
    </sec>
    <sec id="sec-2">
      <title>3 http://www.semafora-systems.com/en/products/ontostudio/</title>
      <p>
        ontology about wine, we may have the CQs [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]: `Is bordeaux a red or white
wine?" or \Does cabernet sauvignon go well with seafood?".
      </p>
      <p>
        Engineers can check if a CQ is satis ed manually or with software assistance
[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. When a CQ is not satis ed, the engineers usually need to add axioms to
satisfy this requirement. This work may be hard and time-consuming, particularly
in large ontologies. Furthermore, to create an ontology to model a domain is not
a simple task. A team building this kind of artifact needs to have knowledge
about logic, ontologies, the right tools, languages, and they need to know about
the domain being speci ed. In this way, tools and methods to aid engineers and
domain experts, could make the process of creating an ontology easier and faster.
      </p>
      <p>
        In this paper, we present a method to help engineers to add axioms to an
ontology. Given an unsatis ed CQ, our approach uses uni cation in DL E L with
acyclic TBoxes [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] to generate a set new competency questions. An engineer
should answer one or more generated questions to add new knowledge that is
transformed to axioms in the ontology. The goal of the generated questions is
to guide an engineer to add axioms to satisfy the initial unsatis ed CQ, thus
helping he in the task of building an ontology.
      </p>
      <p>For example, given an ontology with two axioms: Herbivore Animal u</p>
      <sec id="sec-2-1">
        <title>9eat:V egetable and Cow V ertebrate u 9eat:Grass, an engineer could check</title>
        <p>this CQ: \Is cow a herbivore?" with the expected answer \true". This
question can be interpreted as the axiom Cow v Herbivore. With these axioms, a
DL reasoner cannot conclude that the CQ is satis ed, thus our approach could
suggest some questions, for instance, \Is vertebrate an animal?" and \Is grass
a vegetable?". If an engineer answers both questions with a \yes", the axioms</p>
      </sec>
      <sec id="sec-2-2">
        <title>V ertebrate v Animal and Grass v V egetable will be added to the ontology.</title>
        <p>Then, the initial CQ is checked again, and now it is satis ed.</p>
        <p>The remainder of this paper is organized as follows: Section 2 provides the
background about ontology engineering, competency questions, description
logics ontologies, and uni cation; Section 3 presents our method to generate CQs;
Section 4 shows the results of an experiment to evaluate our approach; In
Section 5 we discuss the results; Section 6 presents the related work; and, Section
7 concludes the paper and shows some ideas for future works.
2</p>
        <sec id="sec-2-2-1">
          <title>Background</title>
          <p>This section presents concepts that serve as foundation of this work. In the
following four sections we explain about ontology engineering, competency
questions, descriptions logics ontologies, and uni cation.
2.1</p>
          <p>
            Ontology Engineering
According to Gomez-Perez and colleagues, ontology engineering refers to the
activities related to the process, life-cycle, methods, methodologies, tools, and
languages to support the ontology development [
            <xref ref-type="bibr" rid="ref10">10</xref>
            ]. Devedzic de nes that
ontology engineering covers the set of activities done during the conceptualization,
design, implementation, and deployment of ontologies [
            <xref ref-type="bibr" rid="ref7">7</xref>
            ].
          </p>
          <p>In some ways, the methodologies to develop ontologies are analogous to the
ones for software engineering. They provide guidance to developers and are
divided in phases, for example, speci cation, execution, and evaluation. Besides,
the process is usually iterative, and the ontology can evolve during its lifetime
in a very similar way of a software, in the sense that it requires maintenance,
versioning, etc.
2.2</p>
          <p>
            Competency Questions
Competency questions [
            <xref ref-type="bibr" rid="ref11">11</xref>
            ] are a set of questions that an ontology must be
capable to answer using its axioms. The questions can be used to specify the
problems an ontology or a set of ontologies must solve. Thus, they work as
requirements speci cation of one or more ontologies. With a set of CQs at hands,
it is possible to know whether an ontology was created correctly, in other words,
if it contains all the necessary and su cient axioms that correctly answer the
CQs.
          </p>
          <p>
            The following list shows some CQs used in an ontology for public employment
services [
            <xref ref-type="bibr" rid="ref5">5</xref>
            ]:
{ What is the job seeker nationality?
{ What is the job seeker desired job?
{ What is the required work experience for the job o er?
{ Is the o ered salary given in Euros?
2.3
          </p>
          <p>
            Description Logics Ontologies
Description Logics (DLs) are a family of knowledge representation formalisms
that have been gaining growing interest in the last two decades, particularly
after OWL (Web Ontology Language) [
            <xref ref-type="bibr" rid="ref17">17</xref>
            ] was approved as the W3C standard
for representing the most expressive layer of the Semantic Web.
          </p>
          <p>
            A DL ontology is a set of axioms ai de ned over the triple (NC ; NR; NO)
[
            <xref ref-type="bibr" rid="ref3">3</xref>
            ], where NC is the set of concept names or atomic concepts (unary predicate
symbols), NR is the set of role or property names (binary predicate symbols); NO
the set of individual names (constants), instances of NC and NR. NCO is the set
of classes' instances and NRO the set or roles' instances, with NCO [ NRO = NO.
          </p>
          <p>
            There are two axiom types allowed in DL: (i) Assertional axioms, which are
concept assertions C(a), or role assertions r(a; b), where C 2 NC , r 2 NR, a; b 2
NO and (ii) Terminological axioms, composed of any nite set of GCIs (general
concept inclusion) in one of the forms C v D or C D, the latter meaning
C v D and D v C, C and D being concepts. An ontology or knowledge base
(KB) is referred to as a pair (T ; A), where T is the terminological box (or TBox)
which stores terminological axioms, and A is the assertional box (ABox) which
stores assertional axioms. T may contain cycles, in case at least in an axiom
of the form C v D, D can be expanded to an expression that contains C. DL
semantics is de ned through interpretations. An interpretation I is a non-empty
domain I and an interpretation function :I , then I = ( I ; :I ). Further, :I maps
concept names to subsets of I and role names to binary relations over I [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ].
          </p>
          <p>
            Distinct DL languages can be de ned according the operators they support.
In this work, we support E L ontologies with acyclic TBoxes. This DL language
is less expressive than others well know DL languages, for instance, ALC, but it
is used in very large ontologies, e.g., SNOMED CT4. Also, because its simplicity,
the inference of subsumptions is polynomial, in other words, it can be fast enough
for real life applications. The Table 1 shows the operators supported by the DL
E L and their semantics.
A DL E L uni cation [
            <xref ref-type="bibr" rid="ref4">4</xref>
            ] problem is de ned as a nite set: = fC1 ? D1; :::; Cn
Dng, where C1; D1; :::; Cn; Dn are concepts. A solution or uni er of is called
, that is, a substitution that solves all equations (Ci) (Di), for i = 1; :::; n.
To de ne uni cation, we divide the set of concept names NC in two: Nv (concept
variables) and Nc (concept constants). The concepts in the former set may be
replaced by substitutions, while the latter must not.
          </p>
          <p>For example, given an ontology with two de nitions of male sports car
enthusiast: X Human u M ale u 9loves:SportsCar and Y M an u 9loves:(Car u
F ast). Although both concepts express the same idea, we have di erent concepts.
Thus, this is a typical case to use uni cation. De ning Nv = fM an; SportsCarg
and = fX ? Y g, the solution are the substitutions M an 7! Human u M ale
and SportsCar 7! Car u F ast.</p>
          <p>
            For acyclic TBoxes, a concept only occurs once as left-hand side, and there is
no cyclic dependencies between concept de nitions. In this case, the subsumption
complexity is polynomial and the uni cation is NP-complete [
            <xref ref-type="bibr" rid="ref4">4</xref>
            ].
?
3
          </p>
        </sec>
        <sec id="sec-2-2-2">
          <title>Generating Competency Questions</title>
          <p>Our method generates CQs to guide an engineer to add axioms to satisfy a
previously asked unsatis ed CQ. It is necessary that a CQ can be represented</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>4 http://www.ihtsdo.org/snomed-ct/</title>
      <p>
        as an axiom, thus we can de ne the problem as a TBox abduction problem.
Di erent approaches may be used to transform CQ into axioms, for instance the
transformations showed in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>Given a DL ontology O, a CQ and O [ f g consistent. The solution for a
TBox abduction problem is a nite set , such that O [ j= and O [ 6j= ?.
In our approach, to nd we solve a uni cation problem. All substitutions found
are transformed into equivalence axioms. For instance, X 7! Y is transformed
into X Y . Thus, is a set of these axioms.</p>
      <p>We can convert the axioms of into natural language questions. Thus, an
engineer can answer these questions. If she answers positively a generated CQ,
then this knowledge can be added to the ontology. In this way, an engineer has
an easier and natural way to add axioms to an ontology. Besides, she is guided in
this process, because the questions generated are based on the unsatis ed CQ.</p>
      <p>
        There are four steps to generate CQs solving a uni cation problem. First,
we need to de ne the equation of the uni cation problem. Second, the variables
are de ned to specify which concepts may receive a de nition. After this, the
uni cation is processed to nd the set of substitutions and their corresponding
axioms. In the end, the axioms are converted to questions in natural language.
The Figure 1 shows how the steps interact with each other.
A uni cation problem is a set of equations = fC1 ? D1; :::; Cn ? Dng.
To generate questions based on an unsatis ed CQ, the problem is a set with
one element representing the unsatis ed CQ. Given the unsatis ed CQ axiom,
then = f g. It is important to notice, that a CQ axiom may be a subsumption
axiom instead of an equivalence axiom. In this case, we transform C v D into
C C u D.
The variables are the concepts that may receive a de nition as the solution of the
uni cation problem. We use the following method to de ne the variable concepts
based on the approach of the UEL library [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>First, the equation is stored. Next, every axiom that de nes the concepts in
the equation is stored. Then, all axioms that de ne the concepts of the concepts
stored previously are saved. This process continues recursively until there is no
axiom de ning the concepts stored. For example, given an equation X Y , and
a set of axioms: X A; Y B; B C; D E. First, X Y is stored. Then,
the axioms that de ne concepts in the equations are stored, in this case, X A
and Y B. Now, recursively, the axioms de ning concepts in the previously
stored axioms are stored. Thus, B C is saved. After this, the process ends.</p>
      <p>With this set of axioms in hands, the next step is to choose the variable
concepts. For this, all concepts in the stored axioms that have no equivalence
de nition are added to the set of incompletely de ned concepts Nv . In the
example, we stored fX Y; X A; Y B; B Cg, then the concepts in the
axioms are fX; Y; A; B; Cg. However, among these concepts, only fA; Cg does
not have equivalence de nitions, hence Nv = fA; Cg.</p>
      <p>Furthermore, in addition to the individual concepts, we also store the two by
two combination of the concepts in Nv , thus generating the set of incompletely
de ned concepts pairs C Nv .
3.3</p>
      <p>
        Unifying
In this step we use the equation and variables de ned in the previous steps. For
each element in Nv and each pair in C Nv , we run the uni cation algorithm of
the UEL library [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Thus, following the example of the previous section, we try
to solve the uni cation problem three times, the rst time using A as variable,
the second using C, and the last time using A and C. The result of this step is
a set of equivalence axioms that represents the substitutions.
3.4
      </p>
      <p>Converting to Natural Language
The last step transforms the equivalence axioms of the previous step in natural
language competency questions.</p>
      <p>All axioms have the form X C, such that C is a complex concept. The
algorithm to convert to natural language starts adding C to a queue and set a ag
with an empty value. Next, the algorithm gets the rst element of the queue,
and tests if it is a concept, a role, an existential restriction or a conjunction.
Based on the element type and the ag value, the algorithm builds the question
step by step. If the element is an existential restriction or a conjunction, it is
broken in smaller parts that are added to the queue. However, if the item is a
concept or a role, parts of the question are generated. The process ends when
there is no element in the queue.</p>
      <p>The algorithm processes the names of concepts and roles to transform them
into a more natural form. The process adds a space before each uppercase letter,
except the rst, and convert everything to lowercase in the end. For instance, a
concept \ProcedureOnSkeletalSystem" is transformed into \procedure on
skeletal system".</p>
      <p>The Figure 2 shows all steps of the algorithm to convert axioms into natural
language questions. It is important to notice, that when the algorithm reaches a
return (the items with quote marks) this text is concatenated with the previously
generated texts.
In this section, we present the whole process of generate CQs based on an
unsatis ed CQ. Consider an ontology with these axioms:</p>
      <p>{ F astEngine v CarEngine
{ RaceEngine v CarEngine
{ F astCar v Car u 9engine:F astEngine
{ RaceCar v Car u 9engine:RaceEngine</p>
      <p>Given a CQ \is race car a fast car", or, as an axiom, RaceCar v F astCar.
First, we de ne the uni cation problem equation, that is = fRaceCar v?
F astCarg. The second step de nes the variables. The algorithm stores the
axioms according to the process described in Section 3.2. Next, it chooses only the
concepts in the axioms that have no equivalence de nitions . In this case, Mv =
fCar; F astEngine; RaceEngineg. Also, it saves the combination pairs of the
concepts in Mv , creating the set: C Mv = f(Car; F astEngine); (Car; RaceEngine);
(F astEngine; RaceEngine)g.</p>
      <p>In the third step, the uni cation problem is solved for each element in Mv
and each pair in C Mv . Using Car as variable the result is Car 9engine:F astEngine,
and using RaceEngine as variable the result is RaceEngine F astEngine. For
the other cases, it does not nd any uni er.</p>
      <p>To conclude the process, both axioms found in the uni cation step are
transformed into natural language questions. The rst axiom is transformed into the
question \does a car have engine some fast engine?", and the second into the
question \is a race engine equivalent to fast engine?".
4</p>
      <sec id="sec-3-1">
        <title>Results</title>
        <p>We did two experiments to evaluate our method. The goal of the rst was
measuring the percentage of cases that the algorithm nds a uni er, so that the
system can generate CQs. In the second experiment, we evaluate if the
generated competency questions were similar to axioms created by engineers.</p>
        <p>The SNOMED CT ontology was used in the experiments. It is the largest
ontology about clinical concepts with more than 350,000 concepts and 1.38 millions
relations. Many concepts in the ontology use a special role called \roleGroup"
to group some existential restrictions. However, this practice can harm the
semantics of the axiom, and hinder the translation to natural language. Thus,
we removed all roleGroups before the experiments, but we kept the content
inside the role. For instance, X 9roleGroup:(9r:Y u s:Z) was changed to
X 9r:Y u 9s:Z.
4.1</p>
        <p>
          Creating Questions
To test the capability to generate competency questions, we created three
modules extracted from the SNOMED CT ontology using the OWL-ME tool [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ].
Then, we did not have a too large ontology to test. The tool creates
localitybased modules using a set of concepts as input. Thus, for each module, we used
an input of 20 randomly chosen concepts. The rst module contained 3832
axioms and 775 concepts, the second 4492 axioms and 913 concepts, and the third
4738 axioms e 958 concepts.
        </p>
        <p>Next, we chose 10 random axioms from each module. Further, we made 10
copies of each module, and remove, from each copy, one of the 10 random axioms
chosen previously. Thus, we had 30 modules, each with a missing axiom. To
ensure that the knowledge represented by the axioms was removed, we tested if
the axioms could be inferred. In all cases, they could not.</p>
        <p>The next step was creating manually CQs that needed the axioms removed
to be satis ed. Thus, we expected that our approach would return questions to
guide us to add the axioms to satisfy the unsatis ed CQs.</p>
        <p>The Table 2 shows the results of the tests. For the 10 modules created from
the rst module, we had 63 CQs, and our approach generated questions to help
satisfy 38 CQs. In other words, in 38 cases one or more uni ers were found, and
in the remainder none were found. For the 10 modules created from the second
module, we had 54 CQs, and our approach generated questions for 36 CQs. For
the last 10 modules created from the third module, we had 66 CQs, and our
approach generated questions for 53 CQs.
In this experiment we tested if the axioms generated by the uni cation are similar
to the axioms coded by engineers. To this end, we used the same modules of the
rst test. We compared if the axioms of the uni cation problem solution are
similar to the axioms removed in each module.</p>
        <p>To compare axioms, we used two approaches. The rst, for each axiom we
created a set of concepts according to them. For example, for an axiom X A v
9r:B, the set is fX; A; r; Bg. In the second approach, we also created a set for
each axiom, however, we did not dissociate the role from its related concept. For
example, given the same axiom X A v 9r:B, the set in the second approach is
fX; A; r:Bg. Thus, the second approach is more rigorous than the rst, because
the role and its concept must appear together.</p>
        <p>The sets were compared using the following metrics: precision, recall and
fmeasure. Given Ss = fA; B; X; Y g, a set generated from a suggested axiom by
our approach, and Sc = fA; B; Cg, a set generated from an axiom coded by an
engineer. The precision is 2/4, the recall is 2/3 and the f-measure is calculated
using the equation F = 2 PPrreecciissiioonn+RReeccaallll .</p>
        <p>Table 3 shows the results of this experiment. The metric name followed by
the number 1 means that it was calculated using the rst approach to generate
the sets. The metric name followed by the number 2 means that it used the
second approach to generate the sets.
Our approach can generate di erent types of CQs. Some are simple, for instance
\does a disease of musculoskeletal system have nding site some body system
structure?". And, some are complex, for instance, \is a malignant neoplasm of
genitourinary organ equivalent to a clinical nding, that have associated
morphology some mass, that have nding site some anatomical or acquired body
structure, that have nding site some anatomical structure?".</p>
        <p>Smaller questions are easier to understand than longer questions, because the
latter represent large axioms with many concepts, roles and relationships among
them. The uni cation ensures that the axioms represented by the questions
will satisfy an unsatis ed CQ; however an engineer must analyze the content of
the questions, to be sure that the knowledge make sense. The approach is not
concerned with the ontological engagement.</p>
        <p>The algorithm generated CQs to add the missing axioms in 69.09% of the
cases, this happened because these are the cases that the uni cation could be
solved. The cases that no CQ was generated were the ones that it was not found
any uni er for the equation using the variables de ned by our approach.</p>
        <p>In the results of the second experiment, precision in average is higher than
recall. Our approach usually suggests axioms that have roles and concepts of
the original axiom, but, it misses some roles and concepts too. For instance, the
ontology have this axiom:</p>
        <p>CongenitalF emaleU rogenitalAnomaly</p>
        <sec id="sec-3-1-1">
          <title>Disease u GenitourinaryCongenitalAnomaliesu</title>
        </sec>
        <sec id="sec-3-1-2">
          <title>9associatedM orphology:CongenitalAnomalyu</title>
        </sec>
        <sec id="sec-3-1-3">
          <title>9associatedM orphology:DevelopmentalAbnormalityu</title>
        </sec>
        <sec id="sec-3-1-4">
          <title>9f indingSite:F emaleGenitourinarySystemStructureu</title>
        </sec>
        <sec id="sec-3-1-5">
          <title>9occurrence:Congenital</title>
          <p>and our approach suggests a question represented by this axiom:</p>
        </sec>
        <sec id="sec-3-1-6">
          <title>9occurrence:Congenital</title>
          <p>In this example precision is 100% in both cases to generate the sets, however
recall is 22.22% in the rst case and 16.67% in the second.</p>
          <p>Sometimes, the suggested axiom has a correct role, but the concept is
different, or vice-versa. Thus, the values of the metrics in the rst case is higher
than the second case. In other cases, despite the concepts are di erent, they
subsume one another. For instance, in one of the tests, the original axiom has
f indingSite:F aceStructure and the suggestion has F indingSite:HeadStructure.
6</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>Related Work</title>
        <p>
          The idea of generating questions when a CQ is not satis ed is inspired in the work
of Uschold and Gruninger [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]. They published one of the rst methodologies
to develop ontologies with four main steps: purpose and scope, building the
ontology, evaluation, and documentation, in which they use CQs to de ne the
requirements. They argued that when a CQ is not satis ed, it could be satis ed
through other questions. In our approach we implemented this idea to help
engineers to add axioms to an ontology.
        </p>
        <p>
          The method query-the-user [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] introduced a symmetric relationship
between users and a logic computer program. In other words both users and
the program can make questions and provide answers. In this method, a user
provides information during a logic program execution whenever the program
asks he. Thus, the query-the-user has many similarities with our method to
generate CQs.
7
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>Conclusions and Future Work</title>
        <p>In this paper we presented a method to suggest competency questions to guide
engineers to satisfy a previous unsatis ed CQ. The method guide engineers to
add axioms to an ontology through the answers to the suggested questions.</p>
        <p>Two experiments were performed: the rst tested the capability of the
approach to suggest CQ. In 69.06% of the cases the method generated questions
that represented the necessary axioms to satisfy an CQ. The second experiment
evaluated if the axioms suggested were similar to the axioms coded by
engineers. We tried two ways to measure the similarity through precision, recall and
f-measure. On average, the rst way had f-measure 35.66%, and the second way
had f-measure 14,97%.</p>
        <p>
          For future work, there is opportunity to test abduction in DL EL [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] to
generate the axioms. Moreover, we need an approach to convert the axioms
into more readable question, mainly because the large questions created based
on complex axioms. Finally, the whole approach could be extended to support
more expressive DL languages.
        </p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Arp</surname>
            <given-names>rez</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>J.C.</given-names>
            ,
            <surname>Corcho</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            ,
            <surname>Fernandez-Lopez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Gomez-Perez</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>Webode: a scalable workbench for ontological engineering</article-title>
          .
          <source>In: Proceedings of the 1st international conference on Knowledge capture</source>
          . pp.
          <volume>6</volume>
          {
          <fpage>13</fpage>
          .
          <string-name>
            <surname>K-CAP</surname>
          </string-name>
          '
          <fpage>01</fpage>
          ,
          <string-name>
            <surname>ACM</surname>
          </string-name>
          , New York, NY, USA (
          <year>2001</year>
          ), http://doi.acm.
          <source>org/10</source>
          .1145/500737.500743
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Borgwardt</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mendez</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Morawska</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Uel: Uni cation solver for EL</article-title>
          .
          <source>In: Proc. of the 25th Int. Workshop on Description Logics (DL'12)</source>
          . vol.
          <volume>846</volume>
          , pp.
          <volume>26</volume>
          {
          <fpage>36</fpage>
          .
          <string-name>
            <surname>Citeseer</surname>
          </string-name>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <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.L.</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.F</given-names>
          </string-name>
          . (eds.):
          <article-title>The description logic handbook: theory, implementation, and applications</article-title>
          . Cambridge University Press, New York, NY, USA (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Morawska</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Uni cation in the description logic EL</article-title>
          . In:
          <article-title>Rewriting techniques and applications</article-title>
          . pp.
          <volume>350</volume>
          {
          <fpage>364</fpage>
          . Springer (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>del Carmen</surname>
            Suarez-Figueroa,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>de Cea</surname>
            ,
            <given-names>G.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buil</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dellschaft</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>FernandezLopez</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garc</surname>
            <given-names>a</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Gomez-Perez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Herrero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            ,
            <surname>Montiel-Ponsoda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            ,
            <surname>Sabou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Villazon-Terrazas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Yufei</surname>
          </string-name>
          ,
          <string-name>
            <surname>Z.</surname>
          </string-name>
          :
          <article-title>Neon methodology for building contextualized ontology networks</article-title>
          (
          <year>Feb 2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Del</given-names>
            <surname>Vescovo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Parsia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Sattler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.</given-names>
            ,
            <surname>Schneider</surname>
          </string-name>
          ,
          <string-name>
            <surname>T.</surname>
          </string-name>
          :
          <article-title>The modular structure of an ontology: an empirical study</article-title>
          .
          <source>Description Logics</source>
          <volume>573</volume>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Devedzic</surname>
          </string-name>
          , V.:
          <article-title>Understanding ontological engineering</article-title>
          .
          <source>Commun. ACM</source>
          <volume>45</volume>
          (
          <issue>4</issue>
          ),
          <volume>136</volume>
          { 144 (Apr
          <year>2002</year>
          ), http://doi.acm.
          <source>org/10</source>
          .1145/505248.506002
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Fernandez-Lopez</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gomez-Perez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Juristo</surname>
          </string-name>
          , N.:
          <article-title>Methontology: from ontological art towards ontological engineering</article-title>
          .
          <source>In: Proceedings of the AAAI97 Spring Symposium</source>
          . pp.
          <volume>33</volume>
          {
          <fpage>40</fpage>
          .
          <string-name>
            <surname>Stanford</surname>
          </string-name>
          , USA (March
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Gennari</surname>
            ,
            <given-names>J.H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Musen</surname>
            ,
            <given-names>M.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fergerson</surname>
            ,
            <given-names>R.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grosso</surname>
            ,
            <given-names>W.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Crubezy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eriksson</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Noy</surname>
            ,
            <given-names>N.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tu</surname>
            ,
            <given-names>S.W.:</given-names>
          </string-name>
          <article-title>The evolution of protege: an environment for knowledge-based systems development</article-title>
          .
          <source>International Journal of Human-computer studies 58(1)</source>
          ,
          <volume>89</volume>
          {
          <fpage>123</fpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Gomez-Perez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fernandez-Lopez</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corcho</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Ontological Engineering: With Examples from the Areas of Knowledge Management, E-Commerce and the Semantic Web</article-title>
          .
          <source>Advanced Information and Knowledge Processing</source>
          , Springer (
          <year>2004</year>
          ), http://books.google.com.br/books?id=UjS0N1W7GSEC
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. Gruninger,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Fox</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.S.</surname>
          </string-name>
          :
          <article-title>Methodology for the design and evaluation of ontologies</article-title>
          .
          <source>In: IJCAI95 Workshop on Basic Ontological Issues in Knowledge Sharing</source>
          (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Guarino</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Welty</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Evaluating ontological decisions with ontoclean</article-title>
          .
          <source>Communications of the ACM</source>
          <volume>45</volume>
          (
          <issue>2</issue>
          ),
          <volume>61</volume>
          {
          <fpage>65</fpage>
          (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Halland</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Britz</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Abox abduction in alc using a dl tableau</article-title>
          .
          <source>In: Proceedings of the South African Institute for Computer Scientists and Information Technologists Conference</source>
          . pp.
          <volume>51</volume>
          {
          <fpage>58</fpage>
          .
          <string-name>
            <surname>ACM</surname>
          </string-name>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Hammond</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sergot</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Apes: augmented prolog for expert systems</article-title>
          .
          <source>Logic Based Systems Ltd</source>
          <volume>40</volume>
          (
          <year>1984</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Malheiros</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Freitas</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A method to develop description logic ontologies iteratively with automatic requirement traceability</article-title>
          .
          <source>In: Informal Proceedings of the 27th International Workshop on Description Logics</source>
          , Vienna, Austria,
          <source>July 17-20</source>
          ,
          <year>2014</year>
          . pp.
          <volume>646</volume>
          {
          <issue>658</issue>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Noy</surname>
            ,
            <given-names>N.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          :
          <article-title>Ontology development 101: A guide to creating your rst ontology 32(1</article-title>
          ),
          <volume>1</volume>
          {
          <fpage>25</fpage>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hayes</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>OWL web ontology language semantics and abstract syntax</article-title>
          .
          <source>W3C recommendation</source>
          ,
          <source>W3C (February</source>
          <year>2004</year>
          ), http:// www.w3.org/TR/2004/REC-owl-semantics-
          <volume>20040210</volume>
          /, published online on
          <source>February 10th</source>
          ,
          <year>2004</year>
          at http://www.w3.org/TR/2004/REC-owl-semantics-
          <volume>20040210</volume>
          /
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Sergot</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A query-the-user facility for logic programming</article-title>
          . Wiley-Interscience (
          <year>1987</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Staab</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Studer</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schnurr</surname>
            ,
            <given-names>H.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sure</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>Knowledge processes and ontologies</article-title>
          .
          <source>IEEE Intelligent Systems</source>
          <volume>16</volume>
          (
          <issue>1</issue>
          ),
          <volume>26</volume>
          {34 (Jan
          <year>2001</year>
          ), http://dx.doi.org/10.1109/ 5254.912382
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Sure</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erdmann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Angele</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Staab</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Studer</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wenke</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Ontoedit:
          <article-title>Collaborative ontology development for the semantic web</article-title>
          .
          <source>In: Proceedings of the First International Semantic Web Conference on The Semantic Web</source>
          . pp.
          <volume>221</volume>
          {
          <fpage>235</fpage>
          . ISWC'
          <volume>02</volume>
          , Springer-Verlag, London, UK, UK (
          <year>2002</year>
          ), http://dl.acm.org/ citation.cfm?id=
          <volume>646996</volume>
          .
          <fpage>711413</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Uschold</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Building ontologies: Towards a uni ed methodology</article-title>
          .
          <source>In: In 16th Annual Conf. of the British Computer Society Specialist Group on Expert Systems</source>
          . pp.
          <volume>16</volume>
          {
          <issue>18</issue>
          (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>