inconsistencies is ensured in two phases: the
detection of inconsistencies which consists in
finding the parts of ontology which do not satisfy the
consistency conditions and the generation of
changes that allow ensuring the consistency of
ontology by generating additional changes. Three
types of consistency are defined: structural
consistency, logic consistency and user consistency.
Structural consistency ensures that ontology satisfies
the constraints of ontology language. Logic
consistency refers to the formal semantics of
ontology and at its satisfiability, i.e., it is
semantically correct and does not present logic
contradictions. The user consistency takes into
account the particular requirements of users.
Flouris et al. (Flouris et al., 2005) differentiate
between a consistent ontology and a coherent
ontology. Ontology is inconsistent if there is no
interpretation which satisfies all the axioms of this
ontology. It is incoherent if it does not satisfy some
predefined constraints or the related invariants. The
predefined constraints describe the consistent model
of ontology. These authors consider the
inconsistencies as sign of bad design and their
correction does not relate to the ontology evolution
but it is rather related to the ontology design.
Luong et al. (Luong et al., 2007) distinguish two
levels of consistency for the model of ontology:
structural consistency and logic consistency.
Structural consistency relates to the constraints of
consistency defined for an ontology model by
ensuring a good organization of the ontological
entities at the level of structure. Logic consistency
checks if the elements of ontology remained
"semantically correct" after their evolution. The
inconsistencies generated in ontology can be solved
automatically using strategies of resolution. These
strategies contain solutions which guide the process
of resolution for all the types of changes.
However, the majority of existing works are
interested in specific categories of ontology such as
OWL ontologies or KAON ontologies. Moreover,
the proposed approaches are based on the correction
of inconsistencies after they occur. In this paper, we
propose an anticipatory approach to manage
inconsistencies before they occur. We express the
requirements of evolution using types of changes.
For each type of change, we define corrective
operations that must be applied in conjunction with
this type of change in order to correct consistencies.
This paper is structured as follows. Section 2
proposes an anticipatory approach for ontology
consistency management. We present in sections 3
and 4 the principles of corrective operations and
evolution kits. Sections 5 concludes this work.
2 ONTOLOGY EVOLUTION
APPROACH
We propose in this work an ontology evolution
approach based on three steps to allow monitoring
the evolution of ontology by creating a new version
better adapted to the required changes (figure 1):
1. Expressing evolution changes: in changing
environment, users express new requirements
to take into account in the ontology. These
requirements are expressed informally and
sometimes in a fuzzy and ambiguous manner.
In this step, we express clearly the users’
requirements according to types of changes to
apply on the ontology.
2. Maintaining the ontology coherence: each type
of change may generate inconsistencies in all
parts of the ontology. In this step, we verify the
effects of changes on the ontology and we
define corrective operations to resolve them. In
addition, knowledge represented by the
ontological entities is complementary and
dependant, it is also necessary to identify the
direct and indirect effects (the derived effects)
of each type of change.
3. Creating a new version: after updating ontology
by applying types of changes, a new ontology
version is created. Thus, in an evolution
context, different versions of ontology should
coexist. To control these versions, it is
important to monitor the relationship between
them. However, establishing links between
versions is a complex task and requires an
investment. These links must respect the order
of versions and the changes have been occurred
[Kle02] [NK04]. We also decide on the
relevance to preserve the old version of
ontology in the ontological database or to
remove it. This choice is conditioned by the
types of implemented changes (subtractive or
not subtractive changes). In the case of a
subtractive evolution, the old version of the
ontology will be stored and added to the
ontological database. It is also important to
provide access to all versions of ontology.
HOW TO EVOLVE ONTOLOGY AND MAINTAIN ITS COHERENCE - A Corrective Operations-based Approach
385