Matching SHIQ Ontologies
The International Journal of Computer Science and Information Security is a monthly periodical on research articles in general computer science and information security which provides a distinctive technical perspective on novel technical research work, whether theoretical, applicable, or related to implementation. Target Audience: IT academics, university IT faculties; and business people concerned with computer science and security; industry IT departments; government departments; the financial industry; the mobile industry and the computing industry. Coverage includes: security infrastructures, network security: Internet security, content protection, cryptography, steganography and formal methods in information security; multimedia systems, software, information systems, intelligent systems, web services, data mining, wireless communication, networking and technologies, innovation technology and management. Thanks for your contributions in July 2010 issue and we are grateful to the reviewers for providing valuable comments. IJCSIS July 2010 Issue (Vol. 8, No. 4) has an acceptance rate of 36 %.

(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
Matching SHIQ Ontologies
B.O. Akinkunmi, A.O. Osofisan, and A.F. Donfack Kana
ope34648@yahoo.com ,nikeosofisan@gmail.com, donfackkana@yahoo.fr
Department of Computer Science,
University of Ibadan, Nigeria.
Abstract- This paper proposes and evaluates an approach to semantic interoperability. Description logics(DL) [1,12] are
facilitate semantic interoperability between Ontologies built in becoming widely used in Ontologies building, as a language
SHIQ description logic language in an attempt to overcome the that provides a clear semantic and inference services to
heterogeneity problem of Ontologies. The structural definition of
support the design, evolution, maintenance and integration of
Ontologies is used as a key point to predict their similarities. Based
on SHIQ General Concept Inclusion, Ontologies to be mapped are Ontologies. Despite the merit of description logics as a
translated into hierarchical trees and a graph matching technique language for Ontologies building, interoperability among
is used to find out similarities between the trees. Similarity between description logics based Ontologies is still an unsolved
concepts is predicted based on their level of hierarchy and their problem. Several authors e.g. [2,3] show how description
logical definition. Semantic similarities between concepts are logics can be used as Ontologies language but there have
evaluated by putting more emphasis on the logical operators used
been few effective and efficient proposals on how
in defining concepts with less reference to concepts syntactic
similarities analysis. The obtained result shows that a pure interoperability among them can really be achieved.
structural comparison based mainly on logical operators used in An approach to this problem is to determine a platform
defining Ontologies concepts provides a better approximation than that reconciles different Ontologies. Literatures on how to
a comparison combining the logical and syntactic similarities reconcile different Ontologies remain scanty [17,11].
analysis evaluated based on the edit distance function. Mapping of Ontologies elements is often used as an attempt
for that purpose. A review of existing systems for ontology
mapping reveal that most systems evaluate the semantic
Keywords: Ontology, Description logics, Mapping,
Interoperability, Semantic. similarities by performing a deep analysis of syntactic
comparison or by using class instance comparison[4,9,13].
The main drawback of this approach is that, in ontology
1. Introduction
building, some jargon may not be easily interpreted so as to
Due to heterogeneity of information sources, the need has derive their meaning from their syntax. Since most natural
arisen for the development of techniques for representing languages are not yet standardized, syntactic analysis cannot
information in an unambiguous way and finding approaches be seen as a perfect solution.
that allow applications to simultaneously manipulate data In this paper, we describe a mapping approach that can be
available in multiple sources. Ontologies [15] have been used to achieve interoperability between SHIQ Ontologies
used to provide structured knowledge and information that by performing a matching between Ontologies based mostly
give a common understanding of the domain been modeled. on the hierarchical structure of Ontologies and constructors
The non standardization of Ontologies and Ontologies used in defining concepts. Textual Ontologies are translated
languages leads to the existence of several incompatible into hierarchical trees based on SHIQ general concept
Ontologies systems even those representing the same inclusion and graph matching techniques are used to identify
domain. This means that, different ontology builders may similar concepts. Similarities between concepts are evaluated
have different approaches to model a given domain or can based on their logical definition, the similarities of their
use different terminology to represent the same concept, ancestors and that of their successors.
which may be semantically the same but syntactically In the next section we present a formal definition of ontology
different. This leads to inconsistent interpretation and mapping. Section 3 introduces SHIQ language and it syntax,
incompatibility between Ontologies even those describing section 4 describes the proposed SHIQ mapping system and
the same domain. Incompatibility limits the sharing of section 5 focuses on the implementation and the discussion
knowledge between machines or humans who do not have of the obtained result
the same understanding of what terminology means. One
cannot talk of common understanding of domains as long as 2. Mapping Ontologies
there is inconsistent interpretation of terminologies.
Consequently, interoperability among Ontologies systems is Ontology mapping is the main task required to achieve
no longer possible at semantic level unless there is a mean of interoperability between two agents or services using
matching Ontologies created by different builders. different Ontologies. Mapping is a set of formulae that
Ontologies then face the same or even harder problems with provide the semantic relationship between concepts in the
respect to heterogeneity as any other piece of information models [10]. Mapping is to establish correspondences among
[16]. Several research works have been undertaking in recent different Ontologies and to determine the set of overlapping
time in this field to determine how Ontologies should be concepts (concepts that are similar in meaning but have
constructed and to attempts to overcome the problem of different name or structure) and concepts that are unique to
each of the sources [14]. Given two Ontologies O1 and O2,
215 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
mapping Ontologies O1 onto ontology O2 means that for each n ∈ N, then ( ≤ nr.C) and ( ≥ nr.C) are SHIQ-concepts.
entity in ontology O1, we try to find a corresponding entity, A general concept inclusion (GCI) is of the form C D,
which has the same intended meaning, in ontology O2. where C and D are SHIQ-concepts. A finite set of GCIs is
called a TBox. Concept definition is of the form A C, where
Mapping takes as input two lists of terms from Ontologies O1
A is a concept name. It can be seen as an abbreviation for the
and O2 and produces a list of matched pairs. Each pair
contains two terms: one from the source ontology O1 and two GCIs A C and C A. For example, a subset of the
another from the target ontology O2. Ontology mapping as a definition of a family can be stated in Tbox using GCI as
task will entail discovering the following properties: follow:
Property 2.1 Equality: man human ≥haschild.human
Two Ontologies are equal if there exist a mapping that can woman human female
transform ontology O1 into ontology O2 man human ¬ woman
Property 2.2 Subsumption: mother woman ≥1haschild.human
Ontology O1 subsumes O2 if a mapping exists that can
father man ≥1haschild.human
transform a subset O1′ of O1 into O2.
Property 2.3 Intersection: grandmother mother ∃ haschild.parent
Intersection occurs between ontology O1 and O2 if they have grandfather father ∃haschild.parent
some overlapping area. That is there exist O1′ and O2′ such motherwith5children mother ≥5haschild.human
that O1′⊆O1 and O2′⊆O2 and a mapping exist that can ≤ 2haschild. human
transform O1′ into O2′.
motherwithoutdaughter mother ∀ haschild.man
Property 2.4 Disjointeness:
3.2. Syntax of SHIQ-roles
Ontology O1 and O2 are disjoint when the two Ontologies are Role is interpreted as binary relation. It uses binary
totally different. relations (such as Boolean operators, composition, inverse,
and transitive closure) as role forming constructors. Syntax
Ontology is made up of a collection of related concepts. of SHIQ role is defined as follows:
Analyzing the mapping properties between two different 1 Every role name is a role description (atomic role),
Ontologies is the task of finding the mapping concepts in the and if R, S are role descriptions, then R, S, R S
two Ontologies. This allows us to characterize relationship (intersection), R S (union), are normal role.
between Ontologies as relation between their concepts. For example, one can express that someone has a
Map⊆C1 x C2 where C1 and C2 are sets of concepts in number of male children within the range of 2 and 7
ontology O1 and O2 respectively is regarded as one to one by (≥2 has_Child ≤ 7 has_Child).male
function between Ontologies concepts. Each concept of a
2 Let R be a set of role names, which is partitioned into
given ontology may be associated with a corresponding
a set R+ of transitive roles and a set RP of normal
semantically similar concept in the other ontology.
roles. The set of all SHIQ-roles is R {r - / r R},
where r- is called the inverse of the role r.
3. Review of SHIQ description logics as The inverse role construct allows one to denote the inverse
ontology language. of a given relation. One can for example one can state with
Description logics provide languages for the description of has_child-.doctor that someone has a parent who is a
concepts, relations used to represent knowledge. They can be doctor, by making use of the inverse of role has_child. The
used in ontology building. They are characterized by the use inverse relation on binary relations is symmetric, i.e., the
of various constructors to build complex concepts from inverse of r - is again r.
simpler ones, with an emphasis on the decidability as key A role inclusion axiom is of the form r s where r and s
reasoning tasks, and by the provision of sound, complete and are SHIQ-roles. A role hierarchy is a finite set of role
(empirically) tractable reasoning services [5]. inclusion axioms. Role inclusion is transitive and an
In contrast to most description logic which concentrates on inclusion relation between two role transfers to their inverses
constructors to describe concepts, SHIQ DL[5,6,7,8] is an 3.3. Describing Ontologies in SHIQ
expressive knowledge representation formalism that extends In general, ontology can be formalized in a TBox as
ALC description logics with qualifying number restrictions, follows:
inverse roles, role inclusion axioms (RIAs) R S, and Firstly, we restrict the possible worlds by introducing
transitive roles[6]. restrictions on the allowed interpretations using the general
3.1. Syntax of SHIQ concepts concepts inclusion (GCIs).
Concepts are used to describe the relevant notions of an Secondly, we can define the relevant notions of our
application domain. The terminology (TBox) introduces application domain using concept definitions. A concept
abbreviations (names) for complex concepts. In SHIQ, the name is called defined if it occurs on the left-hand side of a
TBox allows one to state also more complex constraints. Let definition, and primitive otherwise.
NC be a set of concept names. The set of SHIQ-concepts is We want our concept definitions to have definitional
the smallest set such that the following hold: impact, i.e., the interpretation of the primitive concept and
1. Every concept name A ∈ NC is a SHIQ-concept. role names should uniquely determine the interpretation of
2. If C and D are SHIQ-concepts and r is a SHIQ-role, then the defined concept names. For this, the set of concept
C D, C D, ¬ C, ∀ r.C, and ∃ r.C are SHIQ-concepts, definitions together with the additional GCIs must satisfy
3. If C is a SHIQ-concept, r is a simple SHIQ-role, and three conditions:
216 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
- There are no multiple definitions, i.e., each defined as follow:
concept name must occur at most once as a left-hand Conceptdef conce ptsub role1.concept1
side of a concept definition. role2.concept2 … rolen.conceptn
- There are no cyclic definitions, i.e., there is no cyclic Where n is a positive integer, which may be zero and rolei,
dependency between the defined names in the set of used as a generic term that may represent constructors as
concept definitions. well as role name.
- The defined names do not occur in any of the additional The concept definition in this case can be divided into three
GCIs. differents parts: The defined concept specified by Conceptdef,
which is the concept being defined. It is regarded as a subset
4. The SHIQ match system. of the parent concept. The parent (or subsuming) concept
The SHIQ match system takes as input two Ontologies represented by conceptsub, which is a concept more general
built in SHIQ and produce as output the proposed mapped than the defined concept and is assumed to have the defined
concept from the two Ontologies. concept as one of its subset. Finally, a sequence of
Ontology O1 Ontology O2 rolei.concepti separated by a set operator ( ). Each
rolei.concepti term represents a specialization of the parent
concept. That is, they specify an attribute of the defined
concept that makes it a special kind of the parent concept.
Trees representation
concept concept
Mapping functions:
Similarities evaluations
Logical set
operator
Proposed mapped concepts
Role Cardina Number
Fig.1 structure of the SHIQ match system . lity restriction
Textual Ontologies are first translated into trees. Trees are
traversed and similarities are computed between trees
quantification
elements based on some metrics to be defined. Finally, the
system proposes to the users the matching between concepts
of the two Ontologies based on their obtained similarity Fig. 2 SHIQ General Concept Inclusion syntax diagram.
values
4.1. Parsing Ontologies into trees Starting from the top concept as a root of the tree, each GCI
Parsing Ontology into tree takes, for each valid general line is scanned using the GCI diagram and the concept been
concept inclusion, its constituent parts and adds them into a defined is added in the tree as a successor node of it parent
tree. This represent ontology as a tree T by a couple T=(N,E) concept. Any other element of the definition (roles,
where N is a finite set of nodes and E ⊆ N x N is a set of constructors and any associated concepts) appear at the edges
directed edges. Nodes of the tree represent concept names linking the two nodes. Note that the parent concept appearing
while edges occurring between two nodes represent the role in the right side of the concept inclusion symbol of each
as well as associated constructors, which is the relation that definition. This preserves the hierarchical structure of the
links the two concepts. In other words, a sub-concept tree, where concepts of higher level are assumed to subsume
becomes a child of the parent concept from which it was concepts of lower level.
defined, while the node linking them is labeled with
associated constructors that define the sub-concept in terms
of the parent. conceptsub
Ontologies to be mapped are defined in negation normal
form (NNF), that is, negation occurs only in front of concept role1.concept1
names. Any SHIQ concept can easily be transformed to an role2.concept2 …
equivalent one in NNF by pushing negations inwards by rolen.conceptn
using a combination of De Morgan’s laws:
(B C)= ¬B ¬C
¬(B C)= ¬B ¬C conceptdef
and the following equivalences:
¬ ( ∃ r.C) = ( ∀ r. ¬ C)
Fig.3 Tree representation of General Concept Inclusion
¬ ( ∀ r.C ) =( ∃ r. ¬ C)
¬ ( ≤ n r.C) = ≥ (n+1) r.C) 4.2 Match SHIQ Ontologies from trees.
¬ ( ≥ n r.C)= ≤ (n-1) r.C
In NNF form, concepts defined using GCI is represented Comparison between the two trees is performed by
traversing the two trees simultaneously and evaluating
217 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
similarities between trees elements. Normally, each node of concepts (if there exist) based on the similarity metric to be
the first tree is compared with all the node of the second tree, defined, is considered as the mapped concepts.
to find its similar node from all the nodes of the second tree.
We have adopted an approach that optimizes the total Similarity between two concepts is defined as follows:
number of comparison by reducing the searching space by a
Sim : ε1 × ε 2 × O1 × O2 ∈ [0, 1]
factor at which concepts are similar.
Nodes to be compared next are selected based on the
similarities of their ancestors. When the current selected Where ε1, ε2 are the set of concepts of ontology O1 and O2
node of the first tree is compared with all the nodes of the respectively.
second tree, a decision about its similarity with a node of the
second tree is made. Whenever a node of the second tree is Sim function returns a degree of similarity between pairs of
perfectly similar with that of the currently selected node of concepts. The similarity value is between 0 and 1, where 1
the first tree, the next step of comparison takes only their stands for perfect match and 0 for no match.
sub-trees, taking the two identical nodes as roots. For
instance, in fig. 7, with the matching between woman and The hierarchy structure of the tree implies that each concept
femme, all nodes derived from woman should be compared was defined only once and then appears only once on the
only with the nodes derived from femme rather than tree. Thus each concept of the first ontology may only have
comparing them with all the nodes of the second tree. In case at most only one similar concept in the second ontology.
there is no perfect match, all its successors are compared With this assumption, the task of mapping between two
with all the nodes of the second tree Ontologies is reduced to a one to one mapping between their
Comparetreee(tree1,tree2: tree) respective concepts.
Begin
Select a node of tree1 say node1 To have a good understanding of the semantic of a particular
While (there still exist unvisited node in tree2)do defined concept, there is a need to understand the semantic
Begin of all other concepts associated in its definition. For
Select a node in tree2 say nodei example, with the following representation:
Mark nodei as visited
Compute_ similarity( node1, nodei) Mother Woman ≥1haschild.Human
End
If (there exist a node of tree2 say nodei where
computed similarity=1) then mother is defined as a woman having a child which is an
Begin instance of a class human. To capture the meaning of the
For (all subtree of node1 )do concept mother, we need to understand first the meaning of
For (all subtree of nodei)do concept woman and human. SHIQ Ontology is defined using
Comparetree(subtree of node1, concept name, role name, which is a relation occurring
subtree of nodei) between concepts and possibly constraints on this relation, as
End well as constructors to combine those concepts. For each pair
End of concept been compared, a logical comparison is
End performed on the logical symbols that associate the concepts
Else to their neighbor. This comparison is associated a weight
Begin which define the importance of the logical operators in
For (all subtree of node1 )do determining the similarities of the concepts been defined.
Comparetree(subtree of node1, Because theses operators do not have any relation with the
tree2) natural language used, they are considered to be the main
End point at which the comparison is based upon. Their
End comparison is based on a direct logical comparison. Our
End mapping approach is to make the mapping as free as possible
Pseudo code 1: Algorithm for traversing trees to perform the
comparison.
from the syntactic comparison. We assign a high weight to
each logical comparison.(fig.5)
It is worth nothing that compute_similarity is a pseudo
method that refers the three methods for computing the Whenever there is a need, generally when Ontologies are
similarity between nodes. That is comparedefinition, built in the same natural language, syntactic comparison may
Comparesuccessor and importing the parent similarity as be used to support the logical comparison but with a very
stated in fig. 4. low weight. The syntactic comparison may be performed on
Meta data used as concepts name or role label. Generally,
This comparison approach reduces the number of when two syntactically similar terms are used in the same
comparison to be performed from the Cartesian product of context, they have the same meaning. It is observed that, in
all the nodes of the two trees (N x M) to a factor of the modeling the same world using the same natural language, it
numbers of successors nodes of the two concepts being will be difficult to find that knowledge modelers have used
compared. Any pair of compared nodes is treated as a totally different vocabulary to define all of their concepts and
candidate mapping that will be checked and the most similar role. In some cases, they may used highly syntactically
related to represent the same things. As example, one may
218 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
decide to use “studentname” to represent the student name tree is determined and an average value of their similarity is
while another builder may use “student_name” for the same obtained as the similarity value of the concept definition. The
purpose. The edit distance (ed) introduced by Levenshtein is comparison is achieved by performing a syntactic
used as a basic measure for the syntactic similarity function. comparison on the role name, a logical comparison on the set
The idea behind the edit distance is to measure the minimum operators used in the definition. Generally, concepti
number of token insertions, deletions, and substitutions appearing in the rolei.concepti is an already defined concept.
required to transform one string into another. The difference Their similarity value can be obtained just by referring to
between two strings can be obtained from the longest their already computed value. The pseudo code below
common subsequence (LCS) by subtracting the double of the describes the comparison between two definitions.
length of the LCS from the sum of the length of the two Comparedefinition(node1,node2)
strings. Var
Resultdefinition: array of record
Ed(string1,string2) = |string1|+|string2|- Role1:string
2(|LCS(string1,string2)|) Role2:string
Score:real
Based on the edit distance, we define the syntactic similarity Begin
function as a maximum value between 0 and the ratio of the For i=1 to number of rolei.concepti appearing in the
minimum value between the lengths of the two strings minus edge leading to node1 do
their edit distance over the minimum length of the two begin
strings. For j=1 to number of rolej.conceptj appearing in the
edge leading to node2 do
Simsyntax(string1,string2)= Begin
min ( string1 , string 2 ) − ed (string1, string 2 ) Scorerolename ←simsyntax(rolenamei, rolenamej)
max 0, scorecardinality←simlogic(cardinalityi,cardinalityj)
min ( string1 , string 2 )
scorequantification←simlogic(quantificationi,
quantificationj)
scorenumberrestriction←simlogic(number restrictioni,
number restrictionj)
Simsyntax function returns a degree of similarity of two strings, scoreassociatedconcept←similarity value of
which is a value between 0 and 1, where 1 stands for perfect (concepti,conceptj)
match and zero for bad match. It considers the number of resultdefinition[k].role1←rolei.concepti
changes that must be made to transform one string into the resultdefinition[k].role2←rolej.conceptj
other and weights the number of these changes against the resultdefinition[k].score←sum(scorerolename*weight
length of the shorter of the two strings. +scorecardinality*weight+scorequantification*weight+
corenumberrestriction*weight+
The similarity between concepts is captured based on three scoreassociatedconcept*weight) /sum(weight)
major comparisons: Concepts definition, concepts successors k←k+1
and parents’ concepts. end
end
for (each rolei.concepti in resultdefinition[i].role1) do
Similarity between Similarity between begin
their definitions their parents select their best match score in resultdefinition[i].score
averagescore← sum(all best matches)/(number of
rolei.concepti appearing in the edge that lead to node1)
Concepts scoreconceptdefinition←averagescore
similarity return scoreconceptdefinition
end
end
Similarity between Pseudo code2: Algorithm for comparing the definition of two concepts
their successors
4.4 Successor’s comparison
Fig 4. Approach for concepts similarities evaluation It is evident that similar concept will also subsume similar
children concepts. So, comparison is performed on all the
4.3 Definition comparison concepts definitions that use each of the two concepts as a
parent concept. To achieve this, we compare all the edges
Comparing definitions means that we find out similarities departing from both nodes being compared. For two given
between operators, relations as well as other concepts used in nodes, we perform a Cartesian product of the number of
the definitions. In a tree, it implies a comparison between the children of each node. For instance, in fig.7, if the two nodes
two edges leading to the nodes being compared. A being compared are mother and maman, we find also the
comparison of all the rolei.concepti of the two definitions is similarities between the sets (grandmere, merede5enfants)
performed. A best match for each rolei.concepti of the first and (grandmother, motherwith5children) as they are
219 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
successor’s node of maman and mother respectively. For
each edge departing from the node being compared in the Similarity operators
first tree, it best match is detected from all the edges of the (logical comparison)
node of the second tree. An average value is obtained from
the ratio of all the best match value and the number of edges Similarity concepts associated
departing from the node of the first tree. to role (obtained from their
mapping result)
Comparesuccessor(node1,node2) Similarity concept
Var definition
Resultsuccessor: array of record Similarity roles name
concept1:string (syntactic comparison)
concept2:string
Score:real
Begin Total Similarity of Similarity roles name
similarity concepts name (syntactic comparison)
For i=1 to number of successor of node1 do
(syntactic
Begin comparison) Similarity concepts associated to
For j=1 to number of successor of node2 do Roles (obtained from their
Begin mapping result)
resultsuccessor [k].concept1← successori Similarity Similarity successors
resultsuccessor [k]. concept2← successorj subsumed (syntactic comparison)
resultsuccessor[k].score←conceptdefinition(succe concepts
ssori, successorj)
Similarity parents
k←k+1
(obtained from mapping
end parent concepts) Similarity operators
end (logical comparison)
for (each successori in resultsuccessor[i].concept1) do
begin
select their best match score in resultsuccessor[i].score Fig 5: Summary of comparisons.
averagescore← sum(all best matches)/( number of
successor of node1) 5. Implementation and result
scoresuccessor←averagescore
return scoresuccessor
SHIQ match system consists of a user interface and an
end
associated mapping engine built based on the above
end
Pseudo code3: Algorithm for computing the similarity between
described technique of mapping. It provides facilities of
successors’ nodes building Ontologies to be compared. The system emphasis
on the internal matching structure rather than the
4.5 Parent node comparison visualization aspect of transformations occurred on the
ontology.
In a real world, two things are similar if they produce the
same elements. Since Ontology is just the modeling of the
real world, if two concepts are similar, then there should be a
similarity between their parents. For each pair of concepts
being compared, we refer to the similarity of their parents to
predict their own similarity.
With the comparison been evaluated at three different level,
we obtain, three values for a candidate pair of concepts from
the two Ontologies. We define an aggregate value that gives
the similarity value for that mapping. These values are
assigned different weights that represent the importance for
each of those above obtained value, to influence the final
similarity value. We define the result of similarity between
two concepts as follow:
Weight parent(score parent)+ weight concept
definition(score concept definition)+weight concepts
subsumption(score concept subsumption) /Σ(weight) Fig.6 the SHIQ match system interface for Ontology building
A syntactic comparison (see fig.5), should be avoided Taking as example, the two given Ontologies, the first
whenever the two Ontologies are not in the same natural describing a subset of a living things and the second
language. The figure 5 below shows all the comparison ontology, it subset describing the family bellow:
performed for a given pair of concept to deduce their
similarities
220 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
The system uses a threshold value to determine similarities
Ontology1 between concepts. The comparison between concepts of
Animal living ontology O1 and concepts of ontology O2 provides a tabular
Plant living ┐ animal representation of the entire possible matching and their
Tree plant >7 haslength.meters similarity values. Each table entry contains the two concepts
smalltree plant ¬ tree being compared and their similarity score. Each concept has
Human animal intelligent (if exist) only one similar concept in the second tree. A
Parent human haschild.human threshold value is set, which gives the minimum value at
Beast animal ¬ human which, two concepts can be said to be semantically similar.
Woman human female Since the score of similarity between concepts is in the range
man human ┐woman of 0 to 1, the threshold is chosen as a positive value between
father man ≥ 1 haschild.human 0 and 1.
mother woman ≥ 1 haschild.human The system scans the entire table to determine the table
grandfather father ∃ haschild.parent entry having the highest value. This value is compared with
grandmother mother ∃haschild. Parent the threshold. If it is greater than the threshold, the
motherwith5children mother ≥5haschild. corresponding concepts are taken to be the most similar
human ≤ 5haschild. human concepts. For each table entry having one of the two
predators beast ∀ hasnutrition.meat concepts, they are removed from the table and therefore no
other concept can be mapped to them. The process is iterated
Ontology2 until no value of similarity obtained is above the threshold
parent humain ∃a_enfant.humain value.
femme humain feminine Figures 8 and 9 below show the result for the two
homme humain ¬ woman Ontologies given above. The first result evaluated without
papa homme ∃a_enfant.humain syntactic comparison and the second one with syntactic
maman femme ∃a_enfant.humain comparison. From the result it is clear that the syntactic
grandpere papa ∃a_enfant.parent comparison has introduced a discrepancy in the result which
grandmere maman ∃a_enfant.parent is increasing as comparison move downward the tree.
merede5enfant maman < 5 a_enfant.humain > 5
a_enfant.humain
We expect the system to obtain the mapping bellow (note
that for clarity purpose, edges were not labeled with roles)
Ontology 2 in a
Ontology 1 in a
living humain
homme
plant anima femme parent
l
Fig.8 Output with similarity evaluated mainly on logical
papa maman comparison(threshold = 0.7)
tree A comparison was performed on the same ontology while
smalltree human beast
taken into account the syntactic similarities evaluation and
the following result was obtained.
grandpere
parent
man woma predato
n r
grandmere
father mothe Merede
r 5enfants
grandmothe Connect the
grandfath
r matched
er
concepts
Motherw
ith5child
ren
Fig.7 Ontologies represented in a graph with matched concepts
Fig.9 Output with similarity evaluated based on logical and syntactic
comparison (threshold= 0.7)
221 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
(IJCSIS) International Journal of Computer Science and Information Security,
Vol. 8, No. 4, July 2010
6. Summary and Conclusion [9] John Li “LOM: A Lexicon-based Ontology Mapping
This work proposes and evaluates a structural approach, Tool”. Proceeding of the Performance Metrics for
based on SHIQ description logics language that facilitates Intelligent Systems (PerMIS.’04). Information
interoperability between Ontologies. Textual Ontologies to Interpretation and Integration Conference.
be compared are translated into hierarchical trees of concepts [10]Madhavan, J., Bernstein, P. A., Domingos, P. and
and roles based on SHIQ description GCI. Similarities Halevy, A. “Representing and reasoning about
between concepts are evaluated with more emphasis on their mappings between domain models” Proceedings of the
logical definition and by referring to others related concepts. Eighteenth National Conference on Artificial
The success of semantic interoperability largely depends Intelligence and Fourteenth Conference on Innovative
on the possibility of system to operate less with the semantic Applications of Artificial Intelligence (AAAI 2002), pp
similarities obtained from the syntactic analysis of 80–86, Edmonton, Alberta, Canada.. AAAI Press.
information they are processing. It is hoped that, new [11]Namyoun Choi, Il-Yeol Song, and Hyoi Han “A Survey
intelligent application will deviate from syntatic to logical on Ontology Mapping” SIGMOD, Vol. 35, No, 3, Sep.
nature of semantic comparison. The framework evaluated in 2006, pp. 34-41
this work, shows that an analytical of semantic similarities [12]Nardi, D., Brachman, J. An Introduction to Description
between Ontologies based on their logical definition may be Logics The Description Logic Handbook: Theory,
the expected solution to overcome the problems of Implementation, and Applications. Cambridge
interoperability encountered in Ontologies built in SHIQ. University Press, 2003, pp43–95
The proposed work is limited only on SHIQ language. SHIQ [13] Noy, N. F. and Musen M. A.” Prompt: algorithm and
is just one of the multitude incompatible Ontology tool for automated ontology merging and alignment”
languages. Automatic processing of semantic information Proceeding of Seventeenth National Conference on
will not be fully achieved as long as we have several Artificial intelligence (AAAI-2000)
incompatible systems. It becomes then a necessity to look at [14]Noy, Natalya F “Semantic Integration: A Survey of
performing a mapping across different plate form by finding Ontology Based Approaches.” Stanford Medical
techniques to reconcile existing ontology languages and by Informatics, 2004. Stanford University.
building theories that define the principle of mapping. [15]Uschold Mike, Michael Gruninger “ontologies:
principles, methods and applications” Knowledge
References Engineering Review, vol11(2) 1996, pp93-155
[1] Baader, F. and Nutt, W. Basic description logics. The [16]Valente, A., Russ, T., MacGrecor, R. and Swartout, W.
Description Logic Handbook: Theory, Implementation, “Building and (re)using an ontology for air campaign
and Applications, 2003. pp 43–95. Cambridge planning” IEEE Intelligent Systems, 1999, pp 27
University Press [17]Yannis Kalfoglou1 and Schorlemmer, M. “Ontology
[2] Baader, F., Horrocks Ian and Ulrike Sattler mapping: the state of the art.” The Knowledge
“Description logics as ontology languages for the Engineering Review, Vol. 18(1), 2003pp1–
semantic web.” Mechanizing Mathematical Reasoning: 31.Cambridge University Press
Essays in Honor of Jörg Siekmann on the Occasion of
His 60th Birthday, volume 2605 of Lecture Notes in
Artificial Intelligence, 2005, Pp 228-248
[3] Baader, F., Horrocks Ian, Ulrike Sattler “Description
Logics for the Semantic Web”. KI - Künstliche
Intelligenz, 2002 pp 57-59
[4] Ehrig Marc and Steffen Staab “ QOM: Quick Ontology
Mapping.” International Semantic Web Conference,
2004 pp 683– 697
[5] Horrocks Ian “Reasoning with expressive description
logics: Theory and practice” Proceeding of the 19th
International Conference on Automated Deduction
(CADE 2002), number 2392 in Lecture Notes in
Artificial Intelligence, pp 1-15
[6] Horrocks Ian, Ulrike Sattler “Decidability of SHIQ with
Complex Role Inclusion Axioms” journal of Artificial
Intelligence, vol. 160(1-2) ,2004, pp79-104
[7] Horrocks Ian, Ulrike Sattler. “A description logic with
transitive and inverse roles and role hierarchies.”
Journal of Logic and Computation, vol. 9(3),1999,
pp385–410
[8] Horrocks Ian, Ulrike Sattler, Tobies, S. “ Reasoning
with individuals for the description logics SHIQ”
Proceeding. of the 17th International Conference on
Automated Deduction (CADE 2000), number 1831 in
Lecture Notes in Artificial Intelligence, pp 482-496
222 http://sites.google.com/site/ijcsis/
ISSN 1947-5500
Get documents about "