2.2 Approches d’int´ egration
2.2.3 Approches avanc´ ees
2.2.3.3 Syst` eme de m´ ediation
2.2.3.3.1 Architecture des syst`emes de m´ediation. Cette approche [Wiederhold 92],
´
egalement non mat´erialis´ee, consiste `a laisser les donn´ees dans les sources et fournir un sch´ema
global donnant une vue r´econcili´ee, int´egr´ee et virtuelle sur ces sources. Les utilisateurs posent
leurs requˆetes dans les termes du sch´ema global qui les red´efinit dans les termes des sch´emas
des sources pertinentes. Il est donc n´ecessaire dans ce type de syst`emes de d´efinir une mise en
correspondance entre les sch´emas locaux et le sch´ema global. Cet aspect est un point cl´e dans un
tel syst`eme puisqu’il influe sur la reformulation de la requˆete. Les diff´erents ´el´ements constituant
l’architecture des syst`emes de m´ediation sont les suivants (Figure 2.7 page suivante) :
– lessch´emas des sources regroupent un certain nombre d’informations n´ecessaires pour
d´ecrire les sources, c’est-`a-dire des m´eta-donn´ees comme leurs nom et URL d’interrogation
mais aussi leurs entit´es et attributs auxquels des donn´ees sont associ´ees. Des r´ef´erences
crois´ees (voire mˆeme des r´ef´erences d’autres types) vers d’autres sources sont parfois pr´
e-sentes ;
– lem´ediateur ou sch´ema globaljoue le rˆole d’interface entre les utilisateurs et les sources.
Il regroupe l’ensemble des pr´edicats mod´elisant le domaine d’application du syst`eme de
m´ediation et fournit donc un vocabulaire structur´e servant de support `a l’expression de
Base de
connaissanc
es du doaine
Schéma
global
Adaptateur Adaptateur Adaptateur
Source de
données 1 Source dedonnées 2 • • • Source de données n
Schéma Source 1 Schéma Source 2 Schéma Source n
Fig. 2.7 – Composants d’un syst`eme de m´ediation.Les fl`eches pointill´ees repr´esentent la
transmission des requˆetes aux adaptateurs. Les fl`eches unidirectionnelles pleines correspondent
aux r´esultats r´ecup´er´es dans les sources au travers de leur adaptateur qui les fournit au sch´ema
global. Les fl`eches bidirectionnelles indiquent l’interaction existant entre les sources locales et
les adaptateurs : l’envoi d’une requˆete dans le langage de la source associ´ee et la r´ecup´eration
du r´esultat dans la source.
requˆetes [Rousset 02]. Ainsi, les utilisateurs posent leurs requˆetes dans les termes du m´
e-diateur qui les reformulent avant de les transmettre aux adaptateurs des sources identifi´ees
comme pertinentes. Finalement, c’est `a travers de ce m´ediateur qu’est r´ealis´ee la fusion des
r´esultats obtenus `a partir de chacune des sources avant de rendre une r´eponse homog`ene
et globale aux utilisateurs ;
– lesadaptateurs associ´es `a chaque source permettent d’interroger la source qu’ils g`erent
dans son langage sp´ecifique afin d’y r´ecup´erer les donn´ees pertinentes. Ils fournissent en
retour au m´ediateur les r´esultats obtenus dans les sources.
Comme pr´esent´e en d´etail dans [Lenzerini 02], mod´eliser la correspondance entre les sch´emas
locaux et le sch´ema global est un point crucial. C’est ce qui permet de traiter une requˆete pos´ee
sur le sch´ema global par reformulation en un ensemble de requˆetes dans les sources. La mise
en correspondance vise `a ´etablir la connexion entre les ´el´ements du sch´ema global et ceux des
sch´emas locaux. Deux approches ont ´et´e propos´ees dans ce cadre :Global-As-View (GAV) o`u le
sch´ema global est d´efini dans les termes des sch´emas des sources et Local-As-View (LAV) o`u le
sch´ema global se veut ind´ependant des sources, et dans ce cas, les relations de correspondance
existant entre le sch´ema global et les sch´emas des sources sont ´etablies en d´efinissant chaque
source comme des vues du sch´ema global.
– L’approche GAV consiste `a d´efinir le sch´ema global en fonction des sch´emas des sources,
donc dans les termes propres `a ces derni`eres. Cela implique donc que les sources soient
connues et suffisamment stables. Cette approche favorise le traitement des requˆetes puisque
la r´e-´ecriture des requˆetes pos´ees sur le sch´ema global se fait directement au travers des
mises en correspondance pr´ealablement d´efinies et exprimant les ´el´ements du sch´ema
glo-bal dans les termes des sch´emas locaux. En revanche, l’expansion d’un syst`eme bas´e GAV
pose des probl`emes puisque l’ajout d’une nouvelle source peut avoir un impact sur la d´
e-finition de certains ´el´ements du sch´ema global.
– L’approche LAV est inverse ; ce sont les sch´emas des sources qui sont d´efinis au moyen de
termes du sch´ema global. Une bonne organisation et une stabilit´e du sch´ema global est n´
e-cessaire, les syst`emes d’int´egration utilisant une ontologie comme sch´ema global sont ainsi
bien adapt´es `a LAV. Contrairement `a l’approche GAV, le traitement des requˆetes ici est
complexe. En effet, les seules connaissances dont on dispose sur les donn´ees dans le sch´ema
global sont uniquement accessibles au travers des vues repr´esentant les sources,
fournis-sant des informations partielles sur les donn´ees. Par contre, l’´evolution de tels syst`emes
est particuli`erement favoris´ee par l’approche LAV puisqu’ajouter une nouvelle source au
syst`eme n´ecessite simplement de compl´eter les relations de correspondance de mani`ere `a
repr´esenter le nouveau sch´ema avec des termes du sch´ema global, sans aucune autre
mo-dification. La suppression se fait d’une mani`ere aussi simple ; le sch´ema global n’est pas
modifi´e, seules certaines relations sont supprim´ees, n’affectant pas le reste du syst`eme.
Une approche hybride a ´et´e propos´ee dans [Friedman 99]. Global-Local-As-View (GLAV)
consiste `a combiner la m´ethode de d´efinition des relations de correspondance entre le sch´ema
global et les sch´emas locaux de chacune des approches GAV et LAV pour en retirer une meilleure
expressivit´e. Nous n’entrons pas plus dans les d´etails de cette approche.
2.2.3.3.2 Avantages des syst`emes de m´ediation. Tout d’abord, la m´ediation a des
avan-tages communs `a l’approche navigationnelle puisqu’elles sont toutes deux non mat´erialis´ees.
L’autonomie locale est pr´eserv´ee, ce qui ´evite de perturber les sources, chacune ayant un
contrˆole sur ses propres donn´ees et garantissant aux utilisateurs que les informations auxquelles
ils acc`edent sont purement issues de ces sources. De plus, ce type d’approche permet une
inter-rogation en temps r´eel des sources, ce qui assure un acc`es `a des donn´ees `a jour. Finalement,
en terme de maintenance, le fait de ne pas int´egrer les donn´ees au niveau du syst`eme permet de
s’affranchir des probl`emes de mises `a jour et de synchronisation des donn´ees.
Un avantage int´eressant est celui de latransparenceofferte aux utilisateurs lorsqu’ils effectuent
leurs requˆetes, ceux-ci ne sont en effet pas conscients de la distribution et de l’h´et´erog´en´eit´e des
sources vu que l’on donne l’illusion aux utilisateurs d’interroger un syst`eme global et homog`ene.
Ils n’ont ainsi pas `a se charger de d´eterminer quelles sources ils vont devoir traverser ou
inter-roger pour obtenir un r´esultat pertinent, c’est le syst`eme qui s’en occupe.
La d´efinition d’un sch´ema global sous forme d’ontologie paraˆıt particuli`erement bien adapt´ee
pour l’int´egration d’un ensemble de sources de donn´ees d’un mˆeme domaine
d’ap-plication. Celle-ci peut permettre d’assister les utilisateurs dans la conception de leurs requˆetes
[Stevens 00] mais surtout de faciliter la mise en correspondance entre le sch´ema global et les
sch´emas locaux en exploitant les propri´et´es d´efinies dans l’ontologie [Mork 05]. Cela est
particu-li`erement utile pour r´esoudre l’h´et´erog´en´eit´e s´emantique existant entre les sources puisque, par
exemple, des termes synonymes sont regroup´es dans des concepts communs au sein de
l’ontolo-gie.
Enfin, cette approche est efficace pour g´erer l’´evolution du syst`eme si l’on s’astreint `a
utiliser la m´ethode LAV. Comme nous l’avons soulign´e ci-dessus, des ajouts et suppressions se
font relativement simplement au niveau du sch´ema global. Les utilisateurs ont ainsi la possibilit´e
de consulter des nouvelles connaissances quand de nouvelles sources int´eressantes sont int´egr´ees.
2.2.3.3.3 Inconv´enients des syst`emes de m´ediation. Des inconv´enients communs aux
diff´erentes approches non mat´erialis´ees existent. Par exemple, la fiabilit´e du syst`eme n’est
pas garantie `a cause de l’interrogation en temps r´eel des sources. Si le serveur de celles-ci est
momentan´ement indisponible, cela se reporte sur le syst`eme qui ne pourra pas r´ecup´erer des
informations potentiellement pertinentes sur ce serveur. De plus, un trafic charg´e sur le r´eseau
peut ralentir un tel syst`eme.
La question de la conception du syst`eme est particuli`erement d´elicate. Tout d’abord,
quand les sch´emas d´ecrivant les sources `a int´egrer sont inexploitables ou indisponibles, il est
n´ecessaire de mod´eliser les donn´ees existant dans les sources (sous forme de sch´emas locaux),
ce qui est une tˆache difficile. Ensuite, la d´efinition d’un sch´ema global permettant l’int´egration
de l’ensemble des informations n´ecessaires issues des sch´emas des sources est complexe. Enfin,
la mise en correspondance entre ces diff´erents ´el´ements pose ´egalement des difficult´es car elle
n´ecessite g´en´eralement une intervention manuelle des concepteurs du syst`eme.
D’autre part, l’´evaluation des requˆetes (`a moins de choisir une approche GAV) ainsi que
leur optimisation sont complexes `a r´ealiser, et ce d’autant plus si le nombre de sources
est important. Comme d´etaill´e pr´ec´edemment, il n’est pas simple d’effectuer la traduction des
requˆetes pos´ees sur le sch´ema global dans les termes des sch´emas locaux. Cette traduction peut
ˆ
etre facilit´ee si les relations de mise en correspondance ont ´et´e bien ´etablies et valid´ees par un
expert.
Enfin, l’´evolution du syst`eme est plus simple `a g´erer avec l’approche LAV. Cependant, les
as-pects de maintenancerepr´esentent un travail plus cons´equent. Par exemple, lors de l’int´
egra-tion d’une nouvelle source, il est n´ecessaire de d´efinir un adaptateur pour cette derni`ere puisque
l’´ecriture de celui-ci est sp´ecifique `a chaque type de source [Vargas Solar 02].
2.2.3.3.4 Syst`emes de m´ediation existants. Le projet TAMBIS (Transparent Access
to Multiple Bioinformatics Information Sources) [Stevens 00] est un syst`eme de m´ediation d´
eve-lopp´e dans le domaine biom´edical dont l’objectif est de fournir aux utilisateurs une transparence
enti`ere des sources. Pour cela, l’ontologie TAO [Baker 99] a ´et´e d´efinie dans la logique de
des-cription GRAIL25 (GALEN Representation And Integration Language) et ses composants sont
les suivants :
– des concepts primitifs repr´esentent des entit´es biologiques telles que les prot´eines et acides
nucl´eiques ainsi que leur localisation cellulaire, leurs fonctions et processus biologiques,
leurs motifs et structures ;
– des rˆoles correspondant `a des relations binaires entre concepts ;
– des concepts composites r´esultant de la composition d’un rˆole et d’un concept (primitif ou
composite) r´ealis´ee au moyen l’unique constructeur propos´e par GRAIL : WHICH;
– des relations de typeest-un pour organiser les concepts sous la forme d’une hi´erarchie.
L’ontologie, constitu´ee d’environ 1800 concepts, est exprim´ee `a l’aide d’une logique de description
simple permettant de contrˆoler la cr´eation de nouveaux concepts et les classer au bon endroit
suivant leurs descriptions. Le prototype du syst`eme int`egre 15 sources, dont Swiss-Prot. Les
utilisateurs posent leurs requˆetes en explorant le mod`ele : ils choisissent les concepts qui les
in-t´eressent et peuvent en cr´eer de nouveaux en combinant ces derniers avec des rˆoles. Pour chaque
´
el´ement s´electionn´e, le syst`eme propose aux utilisateurs les ´el´ements reli´es `a celui d’int´erˆet,
per-mettant ainsi de sp´ecialiser et d’enrichir la requˆete initiale. La sortie de cette phase est un plan
de requˆetes ´ecrit dans le langage CPL (Collection Programming Language) [Buneman 95], base
du syst`eme BioKleisli [Davidson 97] pour acc´eder `a des sources biom´edicales. Ce langage de
requˆetes permet de mod´eliser les diff´erents types d’entr´ee fournis par les sources biom´edicales.
Au travers de pilotes (drivers en anglais), CPL traduit ainsi la requˆete initiale en sous-requˆetes
envoy´ees aux sources de donn´ees dans leur propre format puis r´ecup`ere les r´esultats qu’il
re-convertit dans son mod`ele.
Le sch´ema global a ´et´e cr´e´e `a partir d’une ontologie d´ej`a existante et compl´et´ee par des concepts
identifi´es dans les sources pour repr´esenter l’ensemble des informations pr´esentes dans celles-ci.
Elle a donc ´et´e constitu´ee semi-automatiquement. Les sch´emas locaux sont ceux d´efinis dans
BioKleisli au moyen du langage CPL. Les mises en correspondance des ´el´ements de l’ontologie
avec les adaptateurs se font au niveau sch´ema au travers d’une base de connaissance, appel´ee
SSM (Sources and Services Model). Celle-ci permet d’identifier automatiquement les options
disponibles pour ´evaluer la requˆete faite sur l’ontologie de mani`ere `a g´en´erer le programme CPL
qui pourra r´epondre `a la requˆete. Cette base de connaissances a cependant ´et´e g´en´er´ee
manuel-lement. De plus, les programmes CPL permettent l’acc`es `a de nombreuses sources biom´edicales,
mais ils sont pr´e-d´efinis, ce qui impose au syst`eme d’int´egrer des sources qui sont g´er´ees par CPL
et le rendant ainsi d´ependant des ´evolutions prises en charge par CPL. Il n’y a aucune m´ethode
se situant au niveauinstances qui propose d’exploiter les donn´ees pour faciliter certains aspects
de conception ou d’´evolution du syst`eme. Enfin, bien que la repr´esentation du sch´ema global en
logique de description puisse ˆetre favorable `a l’extension du syst`eme, aucune fonctionnalit´e de
maintenance n’a ´et´e propos´ee pour g´erer l’´evolution de TAMBIS.
Le syst`emeBACIIS(Biological And Chemical Information Integration System) [Ben Miled 05]
est bas´e sur l’approche m´ediateur et int`egre sept sources biom´edicales, comme OMIM et
Gen-Bank. Son architecture comporte les composants suivants :
– une ontologie, BAO (BACIIS Ontology), qui a le rˆole de sch´ema global. Elle est ind´
e-pendante du sch´ema des sources locales et consiste en trois classes : Objet, Relation et
Propri´et´e. Son mod`ele est tri-dimensionnel avec des structures hi´erarchiques pour les
Ob-jets et Propri´et´es et un r´eseau de Relations, faisant l’association entre les concepts des
deux autres classes (relation a-pour-propri´et´e) et d’une mˆeme classe (relations
est-un-sous-ensemble-de pour organiser les concepts en hi´erarchies et autres pour relier les
Objets, telles queencode). BAO est impl´ement´ee avec une logique de description ´etendue
avec un langage de«frames»(PowerLoom26). Elle permet de r´esoudre les h´et´erog´en´eit´es
syntaxiques et s´emantiques en regroupant des termes synonymes dans un unique concept.
Ainsi, par exemple, si deux attributs issus de sources diff´erentes sont associ´es au mˆeme
concept dans BAO alors le concept commun sert de lien, on dit qu’il y a une correspondance
s´emantique entre les deux sources [Mahoui 05] ;
– un m´ediateur qui se charge du traitement des requˆetes. Les utilisateurs construisent ces
der-ni`eres `a partir des concepts de l’ontologie et le m´ediateur les d´ecompose en sous-requˆetes.
Il d´etermine ensuite quelles sources peuvent r´epondre en exploitant leurs sch´emas ; si
l’en-tr´ee et la sortie de la sous-requˆete sont identiques aux entr´ee / sortie de la source, cette
source est s´electionn´ee et le m´ediateur lance les adaptateurs associ´es. Il collecte ensuite les
donn´ees r´ecup´er´ees par les diff´erents adaptateurs, regroupe celles qui sont associ´ees `a une
mˆeme classe (au travers de l’ontologie) et organise les r´esultats sous forme d’un graphe qui
relie les concepts correspondant `a la requˆete pos´ee, formant ainsi l’ensemble des chemins
diff´erents permettant de mener `a une r´eponse ;
– le sch´ema des sources consiste en des m´eta-donn´ees d’ordre g´en´eral (e.g. nom de la source),
les types de donn´ees accept´ees en entr´ee d´ecrits avec des concepts de BAO ainsi que les
URLs et attributs associ´es pour interroger la source. Les types de donn´ees fournis en sortie
ont les mˆemes caract´eristiques que ceux d’entr´ee mais `a la place des URLs et des attributs,
il y a des r`egles permettant d’extraire les donn´ees associ´ees aux attributs pr´esents dans les
pages retourn´ees par le site Web de la source ;
– les adaptateurs r´ecup`erent les donn´ees dans les sources en exploitant les URLs
d’inter-rogation des sources et les r`egles d’extraction d´efinies dans les sch´emas associ´es. Il n’y a
donc pas besoin d’un adaptateur par source mais plutˆot par type de format de sortie offert
par les sources (HTML, XML, texte) pour parcourir les pages r´esultats et y r´ecup´erer les
informations voulues.
Le sch´ema global de BACIIS a ´et´e d´evelopp´e manuellement mais il est malgr´e tout extensible et
flexible. En effet, BAO est ind´ependante des sch´emas des sources et ´evolue uniquement quand
le domaine biologique subit des modifications importantes (comme la d´ecouverte d’un nouveau
concept tel quePathway, ce qui arrive tr`es rarement), plutˆot qu’`a chaque mise `a jour des sources.
De plus, son mod`ele tri-dimensionnel facilite la prise en charge des modifications puisque, par
exemple, un changement d’une Propri´et´e n’affecte que cette hi´erarchie mais pas celle des Objets.
L’approche adopt´ee pour les adaptateurs ´evite un changement syst´ematique d’un adaptateur si
une source est modifi´ee. Il est, en effet, uniquement n´ecessaire de d´efinir un nouvel adaptateur si
un format de sortie nouveau est utilis´e par une source d´ej`a existante ou nouvellement int´egr´ee.
Cependant, les m´eta-donn´ees sur les sources (et donc ce qui sert de sch´ema local) n’ont pas ´et´e
r´ecup´er´ees automatiquement. Enfin, les r`egles d’extraction des donn´ees des sources initialement
g´en´er´ees manuellement sont d´esormais induites semi-automatiquement [Ben-Miled 04]. Un
algo-rithme a ´et´e d´evelopp´e de mani`ere `a parcourir un certain nombre de pages Web fournies par les
sources afin d’identifier des attributs correspondant `a des concepts de BAO et cr´eer les r`egles
d’extraction `a partir de ces attributs. Cette m´ethode, situ´ee au niveauinstances, illustre l’int´erˆet
d’exploiter les donn´ees mˆemes des sources pour faciliter la d´efinition de leur sch´ema.
Le syst`eme ONTOFUSION[Alonso-Calvo 06] est un syst`eme de m´ediation int´egrant des
sources de donn´ees biom´edicales de diff´erents types : publiques, telles que PubMed et PDB
(Protein Data Bank) [Kouranov 06], mais aussi des bases priv´ees et des bio-ontologies disponibles
en ligne mais qui sont install´ees localement, comme l’UMLS et GO. Ses composants sont les
suivants :
– quatre fichiers XML par source de donn´ees publique d´ecrivent l’information n´ecessaire
pour la repr´esenter et l’interroger. Le premier contient le sch´ema physique de la source,
le second d´ecrit la mani`ere dont il faut interroger la source (URL, param`etres, etc), les
deux autres d´ecrivent la structure des pages r´esultats obtenus `a partir du site Web de
Dans le document
Conception d’un modèle Web sémantique appliqué à la génomique fonctionnelle
(Page 54-63)