138
Omar Boucelma, Mehdi Essid, and Yassine Lassoued
real world according to a particular point of view and purpose. A data source may
represent regular topographic maps (e.g. ordnance survey) or a statistical survey (national Census), or even a satellite image (weather forecast or land-cover). For each
dataset, the underlying motivation leads to a particular representation of geographical objects. As a result, depending on the source point view, its scale, its producer
and its final user, the data source has its own way of classifying geographical objects.
For example, NTDB (as well as the global schema) distinguishes bridges and roads,
whereas BDTQ groups all transportation network objects in two classes according to
their geometries. Often different classifications have different levels of granularity,
and this situation leads to partial correspondences between objects. We can refer, for
instance, to the correspondence between class roadL from NTDB and class vCommL
from BDTQ. Note that the latter uses attribute description to distinguish real object
functions, that is to make a more precise classification of the objects; possible values
for this attribute are Railway, Street, Highway, Bridge, Unpaved street, Cross-street,
Road under construction.
As mentioned above, class Road has a partial match with BDTQ class vCommL.
This match is valid under a constraint on attribute description in vCommL. Hence,
we are not dealing with simple one-to-one mappings, and we need to express partial
correspondences between classes using some constraints, as illustrated below:
Road
σ vr
←− vCommL
which means that Road corresponds to vCommL under the restriction σ vr , where σ vr
is defined by the constraint
description ∈ {“Street,” “Highway,” · · · }.
7.4.2 More on Mappings
Data integration is a process by which several local schemas are integrated to form
a single virtual (global) schema. As seen in Sect. 7.1, data integration approaches
are known either as GAV, LAV, GLAV, or BAV to cite a few. Whatever approach we
adopt, we need to provide a framework for schema transformations, that is a language for schema mappings. We adopted a GLAV-like approach, with simple mapping rules that allow the specification of one-to-one schema transformations under
some constraints.
A mapping is composed of a right term, a left term, and a restriction (in the case
of a class mapping). The left term is a global schema construct, while the right one
consists of one or more paths of the source schema construct (possibly an empty
path). Such a mapping means that the global schema element of the left term corresponds to the local schema path(s) under the given restriction. A mapping rule is
identified to a part of the global schema where each element is expressed as depending on one or more paths of the local schemas using a mapping.
For example, rule R 1 in Fig. 7.5 describes the mapping of global class Road
in NTDB. Similarly, rule R 2 illustrates the mapping of class Road in BDTQ. More
generally, for each local source, we describe the mapping for each class of the global
Omar Boucelma, Mehdi Essid, and Yassine Lassoued
real world according to a particular point of view and purpose. A data source may
represent regular topographic maps (e.g. ordnance survey) or a statistical survey (national Census), or even a satellite image (weather forecast or land-cover). For each
dataset, the underlying motivation leads to a particular representation of geographical objects. As a result, depending on the source point view, its scale, its producer
and its final user, the data source has its own way of classifying geographical objects.
For example, NTDB (as well as the global schema) distinguishes bridges and roads,
whereas BDTQ groups all transportation network objects in two classes according to
their geometries. Often different classifications have different levels of granularity,
and this situation leads to partial correspondences between objects. We can refer, for
instance, to the correspondence between class roadL from NTDB and class vCommL
from BDTQ. Note that the latter uses attribute description to distinguish real object
functions, that is to make a more precise classification of the objects; possible values
for this attribute are Railway, Street, Highway, Bridge, Unpaved street, Cross-street,
Road under construction.
As mentioned above, class Road has a partial match with BDTQ class vCommL.
This match is valid under a constraint on attribute description in vCommL. Hence,
we are not dealing with simple one-to-one mappings, and we need to express partial
correspondences between classes using some constraints, as illustrated below:
Road
σ vr
←− vCommL
which means that Road corresponds to vCommL under the restriction σ vr , where σ vr
is defined by the constraint
description ∈ {“Street,” “Highway,” · · · }.
7.4.2 More on Mappings
Data integration is a process by which several local schemas are integrated to form
a single virtual (global) schema. As seen in Sect. 7.1, data integration approaches
are known either as GAV, LAV, GLAV, or BAV to cite a few. Whatever approach we
adopt, we need to provide a framework for schema transformations, that is a language for schema mappings. We adopted a GLAV-like approach, with simple mapping rules that allow the specification of one-to-one schema transformations under
some constraints.
A mapping is composed of a right term, a left term, and a restriction (in the case
of a class mapping). The left term is a global schema construct, while the right one
consists of one or more paths of the source schema construct (possibly an empty
path). Such a mapping means that the global schema element of the left term corresponds to the local schema path(s) under the given restriction. A mapping rule is
identified to a part of the global schema where each element is expressed as depending on one or more paths of the local schemas using a mapping.
For example, rule R 1 in Fig. 7.5 describes the mapping of global class Road
in NTDB. Similarly, rule R 2 illustrates the mapping of class Road in BDTQ. More
generally, for each local source, we describe the mapping for each class of the global
