The MOMIS Object Fusion
Mediator systems have a fundamental role in information integration.
One of the most important task is to achieve a global answer to a global
query, merging several local queries answers.
The Query Manager executes this phase of the integration activity. To do
this it needs to merge information (from the same or different sources)
about the same real-world entity, that is the Object Fusion.
It's clear that the main problem is to find a way to identify equivalent
instances, that represent the same real-world entity.
The key to our approach is to find semantically meaningful instance object
identificator for each instance of each local class of each source connected
to the mediator, because we handle different kind of data sources and we can
not exploit OId identification.
In fact MOMIS (as all mediator systems) isn't the owner of the objects that
imports from the sources, but only a way to access them.
So two objects coming from two different sources may have the same
oid, but carry two different information; on the other side two objects may
have two different oid, but carry the same information.
The aim of this research on Object Fusion is:
- to find a way to realize a semantically meaningful
identification;
- to define a list of rules that allow the object fusion process to be
as automatic as possible.
We can find a semantically meaningful id, for the objects imported, in
local interfaces keys.
It is possible to define several rules that allow the object fusion
process to be semi-automatic using information abotu keys, intensional
relationship hold in Common Thesaurus and extensional relationships
between classes,
Using keys, in object fusion process between two different classes, we can
meet two situations:
- semantically homogeneous keys;
- semantically heterogeneous keys.
SI-Designer has several submodules. One of them is joinMap.
Its task is to create a data structure, called Join Table (there is a
join table for each global class), using information coming from
key-identification, join rules and, of course, designer's help. It's clear
that the presence of the designer in object fusion process is inevitable.
The join table is a list of join map. In each join map we can find
the following important information (that guide the object fusion
process):
- if two information has to be fused;
- if join between two informations is possible;
- on which semantically meaningful fields (keys) we can do that.
Starting from data structures created from joinMap module, the object fusion
process can achieve its goal.