Ontology alignment
Ontology alignment, or ontology matching, is the process of determining correspondences between concepts in ontologies. A set of correspondences is also called an alignment. The phrase takes on a slightly different meaning, in computer science, cognitive science or philosophy.
Computer science
For computer scientists, concepts are expressed as labels for data. Historically, the need for ontology alignment arose out of the need to integrate heterogeneous databases, ones developed independently and thus each having their own data vocabulary. In the Semantic Web context involving many actors providing their own ontologies, ontology matching has taken a critical place for helping heterogeneous resources to interoperate. Ontology alignment tools find classes of data that are semantically equivalent, for example, "truck" and "lorry". The classes are not necessarily logically identical. According to Euzenat and Shvaiko, there are three major dimensions for similarity: syntactic, external, and semantic. Coincidentally, they roughly correspond to the dimensions identified by Cognitive Scientists below. A number of tools and frameworks have been developed for aligning ontologies, some with inspiration from Cognitive Science and some independently.Ontology alignment tools have generally been developed to operate on database schemas, XML schemas, taxonomies, formal languages, entity-relationship models, dictionaries, and other label frameworks. They are usually converted to a graph representation before being matched.
Since the emergence of the Semantic Web, such graphs can be represented in the Resource Description Framework line of languages by triples of the form
In this context, aligning ontologies is sometimes referred to as "ontology matching".
The problem of Ontology Alignment has been tackled recently by trying to compute matching first and mapping in an automatic fashion. Systems like DSSim, X-SOM or COMA++ obtained at the moment very high precision and recall. The aims to evaluate, compare and improve the different approaches.
Formal definition
Given two ontologies and where is the set of classes, is the set of relations, is the set of individuals, is the set of data types, and is the set of values, we can define different types of relationships. Such relationships will be called, all together, alignments and can be categorized among different dimensions:- similarity vs logic: this is the difference between matchings, and mappings
- atomic vs complex: whether the alignments we considered are one-to-one, or can involve more terms in a query-like formulation
- homogeneous vs heterogeneous: do the alignments predicate on terms of the same type or we allow heterogeneity in the relationship?
- type of alignment: the semantics associated to an alignment. It can be subsumption, equivalence, disjointness, part-of or any user-specified relationship.
Let's now introduce more formally ontology matching and mapping.
An atomic homogeneous matching is an alignment that carries a similarity degree, describing the similarity of two terms of the input ontologies and.
Matching can be either computed, by means of heuristic algorithms, or inferred from other matchings.
Formally we can say that, a matching is a quadruple, where and are homogeneous ontology terms, is the similarity degree of.
A mapping is defined as a pair, where and are homogeneous ontology terms.