At present, ontologies are considered to be an appropriate solution to the problem of heterogeneity in data, since ontological methods make it possible to reach a common understanding of concepts in a particular domain. However, utilizing a single ontology is neither always possible nor recommendable, given that different tasks or different points of view usually require different conceptualizations. This can lead to the usage of different ontologies, although in some cases the different ontologies collectively might contain information that could be overlapping and possibly even contradictory. This, in turn, represents another type of heterogeneity that can result in inefficient processing or misinterpretation of data, information, and knowledge. To address this problem while at the same time insure an appropriate level of interoperability between heterogeneous systems, it is necessary to find correspondences or mappings that exist between the elements of the (different) ontologies being used. This process is known as ontology alignment. This article offers an updated overview of ontology alignment, including a detailed explanation of what alignment consists of, and how it can be achieved. First, ontologies are defined using a fusion of different interpretations. This is followed by a definition of the concept of ontology alignment and, using a simple example, some of the most commonly used alignment techniques are illustrated. Subsequently, a case is made for the importance of automating the process of ontology alignment, summarizing some of the main alignment systems currently in use. Finally, in the context of future directions, a discussion is presented of the advantages associated with integrating ontology alignment into systems that require exchanging information in an automatic fashion.
Towards the end of the 20th and beginning of the 21st centuries, the term “ontology” (or ontologies) gained usage in computer science to refer to a research area in the subfield of artificial intelligence primarily concerned with the semantics of concepts and with expressive (or interpretive) processes in computer-based communications. In this context, there are many definitions of ontology, and these definitions have evolved over the years. Gruber offered one of the first definitions of ontology in 1993, as follows (Gruber, 1993):
“An ontology is an explicit specification of a conceptualization”.
Gruber’s definition became the most frequently referenced one in the literature, and became the base or working definition for those working in this area.
At present, ontologies are viewed as a practical way to conceptualize information that is expressed in electronic format, and are being used in many applications including the Semantic Web, e-Commerce, data warehouses, or information integration and retrieval. The basic idea behind these applications is to use ontologies to reach a common level of understanding or comprehension within a particular domain (e.g., a particular industry, medicine, housing, car repair, finances, etc.).
However, certain systems that encompass a large number of components associated with different domains would generally require the use of different ontologies. In such cases, using ontologies would not reduce heterogeneity but rather would recast the heterogeneity problem into a different (and higher) framework wherein the problem becomes one of ontology alignment, thereby allowing a more efficient exchange of information and knowledge derived from different (heterogeneous) data bases, knowledge bases, and the knowledge contained in the ontologies themselves. In this manner, ontology alignment enhances system interoperability.Top
Euzenat et al. defined the problem of ontology alignment in the following manner (Euzenat et al., 2004):
“Given two ontologies which describe each a set of discrete entities (which can be classes, properties, rules, predicates, etc.), find the relationships (e.g. equivalence or subsumption) holding between these entities.”