=Paper= {{Paper |id=None |storemode=property |title=The Justificatory Structure of OWL Ontologies |pdfUrl=https://ceur-ws.org/Vol-614/owled2010_submission_4.pdf |volume=Vol-614 |dblpUrl=https://dblp.org/rec/conf/owled/BailPS10 }} ==The Justificatory Structure of OWL Ontologies == https://ceur-ws.org/Vol-614/owled2010_submission_4.pdf
                                 The Justificatory Structure of OWL Ontologies

                                                   Samantha Bail, Bijan Parsia, Ulrike Sattler

                                                           The University of Manchester
                                                        Oxford Road, Manchester, M13 9PL
                                                      {bails,bparsia,sattler@cs.man.ac.uk}



                                       Abstract. Current ontology development tools offer debugging support
                                       by presenting justifications for entailments of OWL ontologies. In many
                                       cases even a single entailment may have many distinct justifications,
                                       and justifications for distinct entailments may be critically related. We
                                       call the set of relations between multiple justifications the justificatory
                                       structure of an ontology. A restricted analysis of justificatory structure
                                       has already been successfully exploited to reduce effort when debugging
                                       ontologies with large numbers of unsatisfiable classes by identifying root
                                       unsatisfiable classes. In this paper we present a preliminary analytical
                                       framework for the justificatory structure of an ontology and explore pos-
                                       sible applications.


                                1    Introduction

                                Explanation support significantly improves the user experience when working
                                with OWL ontologies. With regard to the task of debugging it is often impossible
                                to find the cause of an erroneous entailment, such as an unsatisfiable class,
                                without any tools that guide the user to the source of the error [9]. Different
                                methods have been developed to assist ontology developers in understanding and
                                repairing the errors, such as pinpointing, model exploration, and justifications
                                [12, 1].
                                     Justifications are minimal subsets of the ontology that are sufficient for an
                                entailment to hold. Explanation support through justifications is currently pro-
                                vided by ontology development tools such as Protégé 4. Current research mainly
                                focuses on making individual justifications easier to understand, for example
                                through defining fine-grained justifications [10, 5] and analysing patterns [2].
                                Another important aspect that is being explored is the efficient computation
                                of justifications, in particular finding all justifications for an entailment [11, 13],
                                and dealing with inconsistent ontologies [6]. However, there has been relatively
                                little research into using justifications as a way to obtain further information
                                about an ontology.
                                     We are now interested not only in what justifications can tell us about an
                                entailment, but also how the relationships between justifications affect the entire
                                ontology, the understanding of the user, and potential repair strategies in the
                                debugging process. Measuring metrics in order to assess properties like the cohe-
                                sion of an ontology has been the focus of previous research [3, 16], and different




CEUR
                  ceur-ws.org
Workshop      ISSN 1613-0073
Proceedings
approaches have been implemented in user-oriented tools [14, 15]. However, the
existing frameworks only consider the class hierarchy and axiom metrics, and do
not make use of the information provided by the justifications for entailments of
the ontology.
    In this paper we introduce the justificatory structure of OWL ontologies,
that is, metrics describing the occurrences of multiple justifications, as well as
dependencies and other relations between justifications in an ontology. We show
that these structural properties describe important and useful information to
the users, which can help them understand entailments and their origins by
providing deeper insight into the ontology. In order to show the usefulness of
this approach, we outline potential application areas and explain which aspects
of the justificatory structure can be used in the respective context.


2     Preliminaries

2.1     OWL Syntax and Notation

In this paper, we use the OWL Manchester Syntax1 and following notation: O
for an ontology, A, B, . . . for class names, r and s for property names, and a for
an individual. Axioms can be of the form (Class: C SubClassOf: D) or (Class: C
EquivalentTo: D), where C and D are class expressions that are built from class
and property names.2 An entailment of an ontology O is written as O |= η.


2.2     Justifications

Typically, not all axioms in an ontology are needed to cause an entailment to
hold. In many cases a small subset of the ontology is already sufficient. Working
with these subsets when trying to understand the reason for an entailment has
shown to be much easier than having to deal with the full ontology [9]. Justifica-
tions are minimal subsets of an ontology O that cause an entailment η to hold.
They are are defined as follows [5]:

Definition (Justifications) J is a justification for O |= η if J ⊆ O, J |= η and,
for all J 0 ⊂ J, it holds that J 0 2 η.

    The unsatisfiability of a class is a particularly relevant entailment in the
debugging process, as it commonly represents a modelling error in the ontology. A
class A is unsatisfiable wrt. an ontology O if O |= (A SubClassOf: owl:Nothing).
An ontology that contains unsatisfiable classes is called incoherent, as shown in
1
    http://www.w3.org/TR/owl2-manchester-syntax
2
    For legibility and space reasons, we omit several parts of the Manchester syntax,
    including declarations and the leading Class:. The complete examples can be accessed
    at http://owl.cs.manchester.ac.uk/explanation/owled2010.
this simple example where class C is unsatisfiable:
O = {C SubClassOf : A and D
       A SubClassOf : E and B
       B SubClassOf : not D and r some D
       F SubClassOf : r only A
       D SubClassOf : s some owl : T hing} |= C SubClassOf : owl : N othing
    Here, there exists only one justification for the unsatisfiability of C, which is
the set of the first three axioms. It is obvious that the error is much easier to
spot once we know which axioms to focus on, rather than examining the whole
ontology. Often, there exist multiple justifications for one entailment, and it is
not unusual to have ten or more justifications per entailment, as shown in table
2.
    With respect to debugging, it is often the task to find a repair that “breaks”
the entailment. This can be achieved by removing one axiom from each justi-
fication from the ontology [8]. Since axioms are removed from the ontology, a
repair can affect not only the entailment in question, but also other entailments.
In order to have minimal unwanted impact on the ontology, it is helpful to find a
repair that is as small as possible. This means that axioms occurring in multiple
justifications are suitable candidates for removal.
    While incoherence can be regarded as a modelling error that needs to be re-
paired, a large number of actively used ontologies do in fact contain unsatisfiable
classes. This does not cause any further problems, unless statements are added
that lead to a contradiction in the knowledge base. For example, if the axiom
(Individual: a Types: C) was added to the example above, the ontology would
be rendered inconsistent, since it would require an instance of an uninstantiable
class.
    The term fine-grained describes justifications whose axioms do not contain
any superfluous information [5]. Laconic justifications are particularly helpful
with respect to understanding justifications, as they allow the user to focus on
the relevant parts of an axiom. There can be more or less laconic than regular
justifications.

3     The Justificatory Structure of an Ontology
We identify a set of relations that represent different aspects of the justificatory
structure of an OWL ontology. These aspects can be classified into: quantifi-
able properties of justifications in an ontology (metrics), information about the
syntactic relations of justifications, and semantic relationships between justifi-
cations.

3.1   Multiple Justifications
Multiple justifications can be regarded in the context of single entailments, as
well as for multiple distinct entailments. In the following we mainly discuss
the occurrence of multiple justifications for a single entailment, namely inferred
atomic subsumptions and unsatisfiable named classes.
    There are two interesting aspects when dealing with multiple justifications,
which we denote as coping and exploiting. Firstly, when seen from a debugging
point of view, we can ask: how can we cope with this potentially large number of
justifications? Is it possible to find useful information about their interactions,
which could simplify the repair process? Based on findings from preliminary
experiments with 16 ontologies (all available from the TONES3 repository), it
is easy to see that multiple justifications do occur in ontologies.
    While the set of ontologies presented in table 1 is not representative of all
ontologies, it illustrates different properties and phenomena that can occur in
ontologies of various sizes and expressivities. Table 2 shows the average num-
ber of regular and laconic justifications (AvgR, AvgL), as well as the respective
maxima (MaxR, MaxL) measured in our experiments. It also lists the num-
ber of unsatisfiable classes (UC) and how many of these are root unsatisfiable
(RUC). The number of regular justifications per entailment in our test set differs


                 # Ontology        Expressivity Axioms Entailments
                 1 MGEDOntology ALEOF(D)          4679           2
                 2 DOLCE Lite      SHIF            536           3
                 3 Mini Tambis     ALCN            400          65
                 4 Nautilus        ALCHF           172          10
                 5 Generations     ALCOIF           60          24
                 6 Mereology       SHIN             80           2
                 7 Relative Places SHIF            130           7
                 8 Cell            EL + +        14743          11
                 9 People + Pets ALCHOIN           370          33
                 10 University     SOIN (D)         92          10
                 11 Numerics       SHIF (D)        478        3098
                 12 Earth Realm    ALCHO          1613        2751
                 13 Economy        ALCH(D)        2330          51
                 14 Programmes     SHIF (D)        560          51
                 15 Adolena        SRIQ            415           3
                 16 Chemical       ALCHF           192          43
                 Table 1. The 16 ontologies used in our experiments



strongly, ranging from exactly one justification (e.g. Mini Tambis, Nautilus) to
24 (DOLCE Lite). The average number of regular justifications per entailment
is 1.8, with an average size of 3.3 axioms. Note that in some cases, entailments
with single regular justifications have multiple laconic ones. The extreme cases
in particular, where up to 68 laconic justifications are obtained for a single en-
tailment, show that it is necessary to develop methods that help users cope with
such a large number of justifications.
3
    http://owl.cs.manchester.ac.uk/repository
               # Ontology        AvgR MaxR AvgL MaxL UC RUC
               1 MGEDOntology 1.00       1 1.00    1 0     0
               2 DOLCE Lite       1.00   1 24.00  68 0     0
               3 Mini Tambis      1.00   1 1.88    4 30    5
               4 Nautilus         1.00   1 1.00    1 0     0
               5 Generations      1.00   1 0.92    1 0     0
               6 Mereology        1.00   1 1.00    1 0     0
               7 Relative Places  1.00   1 1.00    1 0     0
               8 Cell             1.09   2 1.09    2 0     0
               9 People + Pets    1.09   2 1.36    4 1     1
               10 University      1.20   3 2.10    6 9     6
               11 Numerics        1.27   5 1.27    5 2     2
               12 Earth Realm     1.29   4 1.29    4 2     2
               13 Economy         1.29   2 1.29    2 51   34
               14 Programmes      1.98   9 1.29    3 2     2
               15 Adolena         2.00   3 2.00    3 0     0
               16 Chemical        9.86  26 9.86   26 37    2
             Table 2. Metrics of justifications for the chosen ontologies



    Exploiting refers to a different aspect of multiple justifications: is it possible to
utilize this phenomenon in order to obtain information about the ontology itself?
In which way do the relationships between justifications affect other properties
of the ontology, and vice versa? For example, regarding the results from our
experiments, we would like to learn why there are such significant differences in
the numbers of justifications for each ontology. From these considerations also
follows the question of how this information can then be made accessible to the
user, suited to the required task.

3.2   Metrics
Simple statistics about the justifications found in an ontology can provide an
insight into its structure and connectedness, which will be discussed in section
4. These statistics include the number and size of regular justifications for a single
entailment, the number and size of laconic justifications for a single entailment
and their respective ratios.

3.3   Syntactic Relations Between Justifications
Subset Relationships One of the most important syntactic relationships is
the containment of one justification in another. This property has been utilised
in the definition of root and derived unsatisfiable classes, which are relevant for
the debugging and repair process.
    Presenting justifications to the user and distinguishing root and derived un-
satisfiable classes has shown to drastically reduce user effort when debugging
an ontology that has multiple unsatisfiable classes [9, 8]. The intuitive definition
is as follows: Derived unsatisfiable classes depend on the unsatisfiability of an-
other class (the parent of the derived unsatisfiable class) and may be fixed (i.e.
made satisfiable) by simply repairing this parent. It is possible for a derived un-
satisfiable class to depend on multiple parent classes. Root unsatisfiable classes
are classes whose unsatisfiability does not depend on another class. The precise
definition translates this into a statement about subsets of justifications [4].

Definition (Root and derived unsatisfiable classes) A class C that is unsatisfiable
with respect to an ontology O is derived unsatisfiable if there exists a justica-
tion J for O |= (C SubClassOf: owl:Nothing), and a justication J 0 for O |= (D
SubClassOf: owl:Nothing) such that J 0 ⊂ J. An unsatisfiable class that is not a
derived unsatisfiable class is known as a root unsatisfiable class.

    In the following example, O entails the unsatisfiability of both C and A,
J1 ={C SubClassOf: D, C SubClassOf: not D} and J2 = O being the respective
justifications:

        O = {A SubClassOf : r some C
              C SubClassOf : D
              C SubClassOf : not D} |= A SubClassOf : owl : N othing

A is a derived unsatisfiable class, as its justification J2 is a strict superset of
the justification J1 for the unsatisfiability of C. We can also say that J1 causes
the unsatisfiability, while J2 propagates it. By repairing C’s unsatisfiability (for
example by removing the third axiom from the set), class A will also be repaired.
In terms of debugging unsatisfiable classes, this shows that by repairing the root
unsatisfiable classes first all the derived unsatisfiable classes may be fixed at the
same time.
    In some ontologies, such as Tambis,4 which contains 144 unsatisfiable classes,
it has been shown that nearly all of the derived unsatisfiabilities (111 in Tambis)
could be repaired by simple fixing a small number of root unsatisfiable classes
(only 3 in the case of Tambis) [9]. This dependency can be clearly used in helpful
tool support and depends largely on the structure of the ontology.

Equality This concerns the case where multiple justifications for different en-
tailments contain exactly the same axioms. This simply means that the same set
of axioms has multiple entailments and happens to be a justification, i.e. mini-
mal, for all these entailments. J1 = {A SubClassOf: B, B SubClassOf: C and D}
for example is a justification for two entailments that are atomic subsumptions,
namely (A SubClassOf: C) and (A SubClassOf: D). When looking at laconic jus-
tifications only, we obtain two distinct justifications for the entailments and the
equality does no longer hold. This provides information about the modelling as
well as potential redundancies in the ontology, and it clearly shows the relevance
of laconic justifications for the comprehensibility of explanations.
4
    http://www.cs.man.ac.uk/∼stevensr/tambis
Intersection As a more general case of subset relations, intersection provides
a starting point when developing a repair strategy for breaking an entailment.
Again, we only consider syntactical overlap here, i.e. multiple justifications shar-
ing a common axiom. Removing only one axiom that occurs in the overlapping
parts of multiple justifications for a single entailment can lead to a repair that
has less impact on the rest of the ontology. This is desirable, as repairs should
be minimal and ideally only affect the entailment in question [8, 12].

3.4   Semantic Relationships
Entailment It is possible for justifications to entail each other. This can be
both unidirectional (J1 |= J2 , J2 2 J1 ) and bidirectional (J1 |= J2 , J2 |= J1 ). A
special case of entailment is a subset relationship, as a set of axioms naturally
entails its subsets.

Masking A special case of dependencies between justifications is the phe-
nomenon of masking [7]. This describes the interaction of justifications (and
other axioms that are not part of the justification) that conceal the actual num-
ber of explanations, as demonstrated in the following example.

                   O = {A SubClassOf : B and not B and C
                         C SubClassOf : D and not D}
                          |= A SubClassOf : owl : N othing

The only justification is J1 ={A SubClassOf: B and not B and C }, and there
are no root / derived relationships. If we attempt to break the entailment, for
example by removing (not B) from the justification, it still holds because of the
unsatisfiability now being derived from the second axiom. This gives us another
justification for the entailment, namely J2 = O, which is clearly a superset of J1 .
This case is not captured by the above definition for derived justifications, as a
superset of a justification for the same entailment is by definition not a justifica-
tion (due to the minimality constraint). However, we lose valuable information if
this dependency of J2 on J1 is not pointed out to the user in the repair process.

Shared Cores Masking Shared cores describe a particular type of masking,
where the justifications have parts that are structurally equal. This is illustrated
by the following example:

                   O = {A SubClassOf : B and not B and C
                         A SubClassOf : B and not B}
                          |= A SubClassOf : owl : N othing

The part (and C) can be removed from the justification J1 = {A SubClassOf: B
and not B and C }, as it is not relevant for the entailment to hold. This leads to
the laconic version of J1 , which is syntactically equal to J2 = {A SubClassOf:
B and not B }. If this phenomenon is pointed out to the user, they can easily
see that there exists only a single reason for an entailment rather than several,
which they can then focus on in the repair process.

3.5   Classifying Justificatory Structure
Defining or classifying the justificatory structure of an ontology with respect to
some metric allows to investigate how the structure affects the ontology and vice
versa. We can potentially categorise different types of justificatory structure in-
tuitively, based on their complexity: a weak justificatory structure exhibits only
a small average number of mostly disjoint justifications, such as one justification
per entailment. An ontology with a strong (complex) justificatory structure com-
prises a large number of justifications for each entailment and a high degree of
interconnectivity (intersections, subset relationships, entailment) between them.
Extensive experiments will allow us to identify the aspects of justificatory struc-
ture and their respective weights that are most suitable for specifying a metric
to classify it.


4     Application
In this section, we provide an overview of potential applications of analysing the
justificatory structure. These cover a wide range of potential users from ontology
engineers to reasoner developers, as well as both task-specific and global usage
in the ontology development process.

4.1   Debugging
One of the main tasks that explanation deals with is debugging support in the
ontology engineering process. First of all, by making use of the information about
dependencies between justifications, the user can be guided to understand the
cause of an entailment. The information can then be used to provide a suitable
repair strategy, that allows the user to amend the entailment without causing
unwanted changes to the ontology. We use the abstract term information here,
as there exist different levels of interaction with the user: we can provide raw
data, such as J1 ⊂ J2 , which can already be helpful for experienced users. By
embedding this information into a more user-friendly representation and exploit-
ing it in tools, such as a visualisation interface, understanding dependencies and
their impact on entailments can be made more accessible to the user.

4.2   Ontology Comprehension
Explanation support for ontology comprehension can be considered different
from using justifications for debugging, as it is less task-based and success is
harder to define: what exactly does understanding the ontology mean? One way
of defining ontology comprehension is based on the ability to answer questions
relating to information in the ontology, as previously shown in a user study
[1]. We believe that structural information about the ontology in a suitable
representation can help the user understand the dependencies between axioms,
the modelling choices that were made, and even help them to spot non-logical
errors that cannot be detected with the help of a reasoner.


4.3   Analytics

In addition to debugging and ontology comprehension, the suggested metrics
can also provide useful data when analysing ontologies and developing tools.
In addition to metrics such as the expressivity of an ontology and the number
of classes and axioms, the justificatory structure offers a way of describing and
classifying ontologies. This relates to the notion of axiomatic richness, which
describes the expressiveness and use of interesting, non-trivial class expressions
in an ontology.
    Thus far, axiomatic richness has no formal definition and is more of an ab-
stract concept than a measurable property. As an example, taxonomic ontologies
containing only trivial axioms of the form (A SubClassOf: B) are commonly re-
garded as axiomatically weak. A simple indicator for axiomatic richness could
be a large average number of justifications for entailments. Reasoner develop-
ment and testing can be regarded as another potential application area of the
justificatory structure. We can ask: does a certain type of justificatory structure
make reasoning harder? Again, this hypothesis has to be tested in more extensive
experiments.



5     Conclusion and Future Work

In this paper, we have presented a framework for analysing the various dependen-
cies between justifications in OWL ontologies, which are believed to offer useful
structural information about an ontology. We have shown that there exists a
number of interactions between justifications, such as syntactic overlap and en-
tailment. The different aspects of this justificatory structure of an ontology were
grouped into syntactical connections, semantic relations and metrics. Services
using the justificatory structure in the ontology development process could sup-
port users with debugging tasks, assist in understanding ontologies and provide
metrics for classifying ontologies.
    For future work, we aim to define the different aspects of the justificatory
structure of an ontology more clearly. In the long term, algorithms and services
will be developed that generate and use the data, which can then be presented
to the user in a way tailored to the respective task. Examining different forms
of visualisation for this purpose offers another extension to the topic discussed
in this paper.
References
 1. J. Bauer, U. Sattler, and B. Parsia. Explaining by example: Model exploration for
    ontology comprehension. In Description Logics, 2009.
 2. O. Corcho, C. Roussey, L. M. V. Blázquez, and I. Pérez. Pattern-based OWL
    ontology debugging guidelines. In WOP, 2009.
 3. A. Gangemi, C. Catenacci, M. Ciaramita, and J. Lehmann. A theoretical frame-
    work for ontology evaluation and validation. In SWAP, 2005.
 4. M. Horridge, J. Bauer, B. Parsia, and U. Sattler. Understanding entailments in
    OWL. In OWLED, 2008.
 5. M. Horridge, B. Parsia, and U. Sattler. Laconic and precise justifications in OWL.
    In International Semantic Web Conference, pages 323–338, 2008.
 6. M. Horridge, B. Parsia, and U. Sattler. Explaining inconsistencies in OWL ontolo-
    gies. In SUM, pages 124–137, 2009.
 7. M. Horridge, B. Parsia, and U. Sattler. Justification masking in OWL. In Descrip-
    tion Logics, 2010.
 8. A. Kalyanpur, B. Parsia, E. Sirin, and B. Grau. Repairing unsatisfiable concepts
    in OWL ontologies. In ESWC, pages 170–184. Springer, 2006.
 9. A. Kalyanpur, B. Parsia, E. Sirin, and J. Hendler. Debugging unsatisfiable classes
    in OWL ontologies. Web Semantics: Science, Services and Agents on the World
    Wide Web, 3(4):268–293, 2005.
10. J. Lam, J. Pan, D. Sleeman, and W. Vasconcelos. A fine-grained approach to
    resolving unsatisfiable ontologies. In Web Intelligence. Springer, 2006.
11. S. Schlobach. Diagnosing terminologies. In AAAI, 2005.
12. S. Schlobach and R. Cornet. Non-standard reasoning services for the debugging of
    description logic terminologies. In IJCAI, pages 355–362, 2003.
13. B. Suntisrivaraporn, G. Qi, Q. Ji, and P. Haase. A modularization-based approach
    to finding all justifications for OWL DL entailments. In ASWC, pages 1–15, 2008.
14. S. Tartir, I. B. Arpinar, M. Moore, A. P. Sheth, and B. Aleman-Meza. OntoQA:
    Metric-based ontology quality analysis. In ICDM, 2005.
15. A. L. Tello and A. Gómez-Pérez. Ontometric: A method to choose the appropriate
    ontology. Journal of Database Management, 15(2):1–18, 2004.
16. H. Yao, A. Orme, and L. Etzkorn. Cohesion metrics for ontology design and
    application. Journal of Computer Science, 1(1):107–113, 2005.