HAL Id: tel-00005162
https://tel.archives-ouvertes.fr/tel-00005162
Submitted on 28 Feb 2004
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of
sci-entific research documents, whether they are
pub-lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.
To cite this version:
Tuyet Tram Dang Ngoc. Federation de données semi-structurées avec XML. Interface homme-machine
[cs.HC]. Université de Versailles-Saint Quentin en Yvelines, 2003. Français. �tel-00005162�
Universite de Versailles Saint-Quentin-en-Yvelines
TH ESE
pour obtenir le grade de do teur
dis ipline : Informatique
presentee et soutenue publiquement
par
Tuy^et Tr^am DANG NGOC
le 10 juin 2003
sur le sujet
Federation de donnees
semi-stru turees ave XML
JURY
Monsieur Georges Gardarin Dire teur de these
Madame Anne Dou et Rapporteur
Monsieur Patri k Valduriez Rapporteur
Monsieur Mi hel Adiba Examinateur
sement de ette these.
- Georges Gardarin mon dire teur de these pour m'avoir a ueilli dans son equipe et m'avoir a orde sa onan e duranttoutes esannees de these;
- AnneDou etetPatri kValduriezpouravoira eptelalourdet^a hed'^etrelesrapporteurs de ette these;
- Mi helAdiba quia bienvoulu faire partiedu jury;
- HubertNaa ke dontles travauxm'ont beau oupinspire,et qui abienvoulufairepartie du jury;
- Lars Smitqui a si bien su m'aider a menager mon temps de these lorsque letravail de developpement m'a aparait. Au dela de sa ompeten e te hnique et de toute l'aide et les onseilsqu'ila sum'apporter,je onserve surtoutsonamitie;
Je remer ie aussi de tout ur :
- lesjoyeuxstagiaires,thesardset an iensthesardsduPRiSMquim'ont a ompagnedans ette longueepreuve et ave qui j'ai eu des dis ussionstres interessantes, en parti ulier Catherine Blirando, Karine Brifault, Mi hel Cavaille, Tatiana Chan, Ikram Chennouf, BenjaminCohenpourseskatas, Fran ois Galea,Mourad Gueroui,HuaizhongKoupour avoiregaye lebureaudesabonnehumeuret sesex ellents oursd'e riture hinoise, Ma-thieuLe-Coz pour ses jolies interfa es graphiques,Laurent Nemirovski, Laurent Perato pourtousles ombatsde kung-fuqu'onapu faire,FeiSha,TaoWan,FeiWu,LilanWu et XiaohuiXue;
- Les stagiaires enthousiastes Clement Jamard et Ni olas Travers frai hement debarques dans le monde de la mediation de donnees semi-stru turees ave leurbonnehumeur et leureÆ a ite;
- les membres permanents du laboratoire PRiSM et de l'ISTY et en parti ulier Anni k Baert, Christiane Bou her, Mi helle et Jean-Pierre Claude, Chantal Du oin, Denise Guiavar h,Jean-LouisJammier et IsabellePendeze ,pourleur ompeten e et leur gen-tillesse;
- toutel'equipedelaso ieteOsisouj'aipasselapremierepartiedemathese,enparti ulier Claude Campanaro pour son soutien et sa gentillesse, Lloyd Dupont pour sa bonne humeur ommuni ative et son esprit urieux, Bernard Hugueney pour sa motivation si ontagieuse, Dorothee Touboul pour ses en ouragements et Alban Vuillier pour sa gentillesse,ses ompeten este hniquesetsonaidesipre ieusedansleprojetMIROWEB; - toute l'equipe delaso iete e-XMLMediaou j'aiee tue ladeuxieme partiede mathese et en parti ulier Benedi te Baral, Olivier Berly, Perine Boru howits h, Zhangyun Lei, Marie-Felix Ruiz, Yu heng Sha et Veronique Smahi. Marie, Perine, Lars, et Olivier, sans vous, j'aurais eu tant de mal a on ilier lerythme eprouvant d'un travail alternant entre theseet entreprise. Mer ipour votrebonne humeur etvotre amitie;
jusqu'a ette these : Laurent Capitaine, Ni olas Le ler , Seindil Loganadane, Thierry Mi hau,SahagKanayan,Erwan Prioul,Sebastien Provost, FatmaSahraoui,
Eri Szabo et Pas alVarniol;
- les etudiants du ursus infoet de l'ISTY qui m'ont fait omprendrela valeurde l'ensei-gnement et m'ont amenee a faire toujoursmieux.
- et enndu fond du ur mespro heset mes nouveaux pro hes: mes parents, Frederi , Fran ois, Remy, Solange,Daniele, Rene,Xavier, Sylvie,Clement et Mathis.
1 Introdu tion 1
1.1 Motivation . . . 1
1.2 Problematique. . . 2
1.2.1 Requ^ete sur donnees semi-stru turees . . . 3
1.2.2 Mediationde donnees semi-stru turees . . . 3
1.2.3 Algebre d'interrogationde donnees semi-stru turees . . . 4
1.2.4 Modelede o^ut sur donnees semi-stru turees reparties. . . 4
1.2.5 Utilisationd'un a he pour l'optimisationde requ^etes . . . 4
1.3 Solutionsexistantes . . . 5
1.3.1 Requ^ete sur donnees semi-stru turees . . . 5
1.3.2 Mediationde donnees semi-stru turees . . . 6
1.3.3 Algebre d'interrogationde donnees semi-stru turees . . . 6
1.3.4 Modelede o^ut sur donnees semi-stru turees reparties. . . 7
1.3.5 Utilisationd'un a he pour l'optimisationde requ^etes . . . 7
1.4 Obje tif et ontexte de la these . . . 8
1.5 Contribution. . . 9
1.6 Organisationdu do ument . . . 9
2 Les mediateurs de donnees semi-stru turees 13 2.1 Introdu tion . . . 13
2.2 Plan du hapitre . . . 14
2.3 Notions de donnees semi-stru turees . . . 14
2.4 Representation des donnees semi-stru turees . . . 16
2.4.1 OEM . . . 17
2.4.2 XML . . . 18
2.5 Metadonnees pour donnees semi-stru turees . . . 20
2.5.1 Guide de donnees . . . 21
2.5.2 DTD . . . 22
2.5.3 XML-S hema . . . 23
2.6 Langagede requ^ete pour donnees semi-stru turees . . . 24
2.6.1 OEM-QL . . . 26
2.6.2 XPath . . . 26
2.6.3 XML-QL. . . 27
2.6.5.1 Expression XPath . . . 31
2.6.5.2 Expression FLWR . . . 32
2.6.5.3 Imbri ation . . . 33
2.6.5.4 Agregats. . . 34
2.6.5.5 Re her he textuelles . . . 35
2.7 Integrationde donnees heterogenes . . . 35
2.7.1 Diversite des sour es de donnees . . . 36
2.7.2 Prin ipes generaux de lamediation . . . 36
2.7.3 Problemes . . . 37
2.7.3.1 Integration de donnees heterogenes . . . 37
2.7.3.2 Integration de s hema . . . 38
2.7.3.3 Evaluation de requ^ete . . . 39
2.7.3.4 Cas parti ulier des donnees semi-stru turees . . . 39
2.7.4 Ar hite ture de mediation . . . 42
2.7.5 Synthese . . . 44
2.8 Ar hite tures de mediationexistantes . . . 44
2.8.1 TSIMMIS, GARLICet MIX . . . 45
2.8.2 STRUDEL. . . 47 2.8.3 Y A T . . . 49 2.8.4 AGORA/ LeSele t . . . 50 2.8.5 Logi iels ommer iaux . . . 50 2.8.5.1 Xperanto . . . 51 2.8.5.2 NIMBLE . . . 52 2.8.5.3 LiquidData . . . 54 2.8.6 Synthese . . . 54 2.9 Con lusion . . . 55
3 Une ar hite ture de mediation XML 57 3.1 Introdu tion . . . 57
3.2 Plan du hapitre . . . 58
3.3 Ar hite ture de systeme federe . . . 59
3.4 Modelede donnees . . . 61
3.5 Traitementdes sour es . . . 62
3.5.1 Denition des sour es de donnees . . . 63
3.5.2 Exportation d'informations . . . 64
3.5.2.1 Exportation de metadonnees . . . 65
3.5.2.2 Exportation de apa itedes sour es. . . 70
3.5.2.3 Exportation de statistiqueset formules de o^utdes sour es 75 3.5.3 Exe ution de requ^etes . . . 80
3.6 Plan d'exe ution . . . 81
3.7 Traitementd'une requ^ete XQuery . . . 84
3.7.1 Canonisationdes requ^etes . . . 84
3.7.2 Atomisationdes requ^etes . . . 87
3.7.5 Optimisationdu plan d'exe ution . . . 89
3.7.6 Re omposition . . . 90
3.8 Con lusion . . . 91
4 Une methode d'evaluation pour une algebre semi-stru turee 95 4.1 Introdu tion . . . 95 4.2 Plan du hapitre . . . 96 4.3 Etat de l'art . . . 96 4.3.1 Algebre . . . 96
4.3.1.1 Algebre d'IBM et Niagara . . . 97
4.3.1.2 Algebre TAX . . . 100
4.3.1.3 Algebre Y A T . . . 100
4.3.1.4 Algebre LORE . . . 100
4.3.1.5 Algebre AT&T . . . 101
4.3.2 Synthese . . . 103
4.4 Pro essus d'evaluation . . . 103
4.5 Modelede donnees formelet algebre pour XML . . . 104
4.5.1 Formalisation . . . 104
4.5.2 Navigation . . . 106
4.6 Unealgebre physique pour XML : XAlgebre . . . 108
4.6.1 Modelede donnees de laXAlgebre . . . 109
4.6.2 Operateurs . . . 112
4.6.2.1 Sour e(S) . . . 112
4.6.2.2 XProje tion (). . . 116
4.6.2.3 Restri tion () . . . 119
4.6.2.4 Produit artesien () . . . 121
4.6.2.5 Jointure (on ) . . . 126
4.6.2.6 Union ([), Interse tion (\ ),Dieren e (n) . . . 128
4.6.2.7 Groupement,ordonnan ement ( ;) . . . 130
4.6.2.8 Agregation(min;max;sum;avg; ount) . . . 131
4.7 Regles d'equivalen es . . . 133
4.7.1 Regles d'equivalen e provenant de l'algebre relationnelle et appli- ables al'algebre denie . . . 133
4.7.2 Regles d'equivalen e sur la navigation . . . 134
4.8 Con lusion . . . 134
5 Modele de o^ut pour mediation de donnees semi-stru turees 137 5.1 Introdu tion . . . 137
5.2 Plan du hapitre . . . 138
5.3 Etat de l'art . . . 138
5.3.1 Estimationdes o^uts . . . 139
5.3.1.1 le o^ut par alibration . . . 141
5.3.1.2 le o^ut par historique. . . 145
5.3.1.4 Adaptation du modele de o^ut requ^etes omportant des
hemins . . . 147
5.3.2 Prise en omptedes apa itesdes sour es. . . 150
5.3.3 Synthese . . . 150
5.4 Parametre d'un modelede o^ut . . . 152
5.4.1 Statistiques . . . 152
5.4.1.1 Statistiques systeme . . . 152
5.4.1.2 Statistiques de donnees . . . 154
5.4.2 Formules de o^ut . . . 154
5.5 Integrationde modelede o^uts des adaptateurs . . . 155
5.5.1 Modelede o^ut d'une sour enative de donnees semi-stru turees . . 155
5.5.2 Modelede o^ut d'un SGBD-R simple . . . 159
5.6 Integrationdu modelede o^utdans le mediateur. . . 160
5.6.1 Integration du o^utdes adaptateurs : XSour e . . . 162
5.6.2 Co^utdes XOperateurs . . . 163
5.6.2.1 Proje tion . . . 164
5.6.2.2 Restri tion . . . 164
5.6.2.3 Jointure . . . 166
5.6.3 Co^utde la re onstru tion . . . 167
5.7 Con lusion . . . 167
6 Ca he semantique pour mediateur de donnees semi-stru turees 169 6.1 Introdu tion . . . 169
6.2 Plan du hapitre . . . 170
6.3 Te hniques de gestionde a hes . . . 170
6.3.1 Base sur les pages. . . 170
6.3.2 Base sur les tuples . . . 171
6.3.3 A base de predi ats ou a he semantique . . . 171
6.3.4 Politique de mise ajour du a he . . . 173
6.3.5 Synthese . . . 173
6.4 Te hniques de sto kage de donnees XML . . . 174
6.4.1 Sto kage ommeun BLOB . . . 175
6.4.2 Sto kage dans une base de donnees relationnelle . . . 175
6.4.3 Sto kage natif . . . 176
6.4.4 Synthese . . . 176
6.5 Utilisationd'un entrep^ot XML omme a he . . . 176
6.6 Gestiond'un a he semantique . . . 182
6.6.1 Requ^ete, sous-requ^ete etsuper-requ^ete . . . 182
6.6.2 Modeleet notationd'un a he a base de predi ats . . . 183
6.6.3 Restri tions sur les relations . . . 184
6.6.4 Politique de mise ajour du a he . . . 184
6.6.5 Organisationdu a he . . . 185
6.6.6 Regle de determinationde restri tivite . . . 186
7 Prototypes 193
7.1 Introdu tion . . . 193
7.2 Plan du hapitre . . . 194
7.3 Experien edu projet MIROWEB . . . 194
7.4 Experien edu projet XML-KM . . . 196
7.5 Experien edu projet MUSE . . . 198
7.6 Con lusion . . . 199 8 Evaluation 201 8.1 Introdu tion . . . 201 8.2 Plan du hapitre . . . 202 8.3 Cas d'utilisation. . . 202 8.4 Ban sd'essai . . . 204
8.5 Systeme heterogene experimental . . . 204
8.5.1 Adaptateur . . . 205
8.5.1.1 Adaptateur A1 pour la sour e1 . . . 206
8.5.1.2 Adaptateur A2 pour la sour e2 . . . 206
8.5.1.3 Adaptateur A3 pour la sour e3 . . . 206
8.5.1.4 Adaptateur A4 pour la sour e4 . . . 207
8.5.1.5 Adaptateur A5 pour la sour e5 . . . 207
8.5.1.6 Adaptateur A6 pour la sour e6 . . . 207
8.5.2 Ar hite ture . . . 207
8.5.2.1 Mediateur M2 sur donnees relationnelles . . . 207
8.5.2.2 Mediateur M3 sur donnees semi-stru turees . . . 207
8.5.2.3 Mediateur M0 sur melange de donnees relationnelles et semi-stru turees . . . 208
8.5.2.4 Mediateur M1 sur mediateurs . . . 208
8.5.3 Modelede donnees et types de requ^ete . . . 208
8.5.3.1 Modelede donnees . . . 208
8.5.3.2 Type de requ^ete . . . 209
8.5.4 Generation de plans d'exe ution . . . 211
8.6 Experimentation . . . 213
8.6.1 Sur o^utinduit par l'ar hite ture de mediation . . . 213
8.6.1.1 Temps de haque phase . . . 214
8.6.2 Co^utde la re onstru tion . . . 215
8.6.3 Jointures inter-sites . . . 217
8.7 Con lusion . . . 219
9 Con lusion 223 9.1 Resumedes ontributions . . . 224
9.2 Travaux a ourtterme . . . 227
9.3 Travaux de re her he futurs . . . 228
9.3.1 Optimisationdes plans d'exe ution . . . 228
Bibliographie 231
A Co^ut I
B Capa ite III
C Stru ture des tables TPCR V
C.1 Table PARTSUPP . . . V C.2 Table CUSTOMER . . . VI C.3 Table LINEITEM . . . VII C.4 Table ORDERS . . . VIII C.5 Table SUPPLIER . . . VIII C.6 Table NATION . . . IX C.7 Table REGION . . . X C.8 Table PART . . . XI
D Code d'exportation des adaptateurs de la validation XIII
D.1 Adaptateur A1 . . . XIII D.2 Adaptateur A2 . . . XIII D.3 Adaptateur A3 . . . XIV D.4 Adaptateur A4 . . . XIV D.5 Adaptateur A5 . . . XIV D.6 Adaptateur A6 . . . XV D.7 Mediateur M0 . . . XVI D.8 Mediateur M1 . . . XVII D.9 Mediateur M2 . . . XVIII D.10Mediateur M3 . . . XIX
2.1 Exemple de graphe representant deux donnees semi-stru turees. . . 17
2.2 Exemple de graphe OEM. . . 18
2.3 S hema ommun . . . 21
2.4 Guide de donnees du do ument 2.1 . . . 22
2.5 Comparaisond'ar hite tures GAV etLAV . . . 38
2.6 S hema avant etapresre ompositionet restru turation . . . 40
2.7 S hema avant etapresre ompositiondes donnees . . . 40
2.8 Donnees atraiter . . . 41
2.9 Restru turation de la donnee (d) . . . 41 2.10 Restru turation de la donnee ( ) . . . 41 2.11 Ar hite ture DARPA I3 . . . 42 2.12 Ar hite ture de TSIMMIS . . . 45 2.13 Ar hite ture de GARLIC. . . 46 2.14 Ar hite ture de STRUDEL . . . 48
2.15 Ar hite ture du systeme Y A T . . . 49
2.16 Ar hite ture du systeme AGORA . . . 51
2.17 Ar hite ture de XPeranto . . . 52
2.18 Ar hite ture de NIMBLE. . . 53
2.19 Ar hite ture de LiquidData . . . 54
3.1 Ar hite ture generale du mediateur . . . 60
3.2 Inter onnexion de sour es/mediateurs . . . 61
3.3 A es par XML/DBC . . . 63
3.4 des ription de metadonnees des sour esgerees par W2, W3 etM3 . . . 68
3.5 Des riptionde metadonnees du mediateur M2 . . . 68
3.6 Des riptionde metadonnees du mediateur M2 . . . 69
3.7 Regle d'exportationdes apa ites de lasour e . . . 71
3.8 Expression mathematiqueen MathML . . . 77
3.9 Plan d'exe ution de la requ^ete exemple . . . 90
4.1 Requ^ete Q4 sous forme algebrique . . . 101
4.2 Plans logique etphysiques de Q4 . . . 102
4.3 Pro essus d'evaluation d'une requ^ete . . . 104
4.4 Arbre asso ieau do ument exemple . . . 106
4.7 XSour e . . . 114
4.8 XProje tion . . . 116
4.9 Exemple de XRelation . . . 117
4.10 XRestri tion . . . 120
4.11 XProduit . . . 122
4.12 Lesdierents as de fusion . . . 123
4.13 XJointure . . . 127
4.14 XUnion . . . 129
4.15 XOrderBy . . . 131
4.16 XAgregation(min) . . . 132
5.1 Ar hite ture de ReposiX . . . 156
5.2 Serialisationd'un do ument XML sous ReposiX . . . 157
5.3 Cas de omparaison d'attributs de type arbores ent . . . 165
6.1 Lesdierents as possibles pour un a he . . . 172
6.2 Integrationdu a he dans le mediateur . . . 178
6.3 Organisationdu systeme de gestion de memoirese ondaire de ReposiX . . 179
6.4 Identiants d'elements . . . 180
6.5 Evaluationde requ^ete par un a he utilisantReposiX . . . 181
7.1 Ar hite ture du projet MIROWEB . . . 195
7.2 Ar hite ture du mediateur de MIROWEB . . . 195
7.3 Ar hite ture du projet XML-KM . . . 197
7.4 Ar hite ture du mediateur de XML-KM . . . 198
7.5 Ar hite ture du projet MUSE . . . 199
8.1 S hema de donnees utilisees pour notre validation . . . 205
8.2 Ar hite tures d'experimentation . . . 208
8.3 Plan d'exe ution . . . 211
8.4 Temps de reponse suivant l'ar hite ture M0et M1 . . . 213
8.5 Temps des dierentes phases . . . 215
8.6 De ompositionde laphase d'initialisation . . . 216
8.7 Surplusde tempsd^u a l'ar hite ture de mediation . . . 217
8.8 Rapport du temps mispar M0 etpar A3 . . . 218
8.9 Ar hite ture M2 etM4 . . . 218
8.10 Comparaisonar hite ture M2 etM4 . . . 219
Introdu tion
1.1 Motivation
La diversite des sour es de donnees
L'evolution onstante en matiere de reseaux et de bases de donnees es trente dernieres annees a mene a une demande toujours roissante d'a es rapides a une large quantited'informations variees.
Certaines de esinformationssontenregistrees dans desbases dedonnees tradition-nelles et a essibles par des langagesde requ^ete tres puissants, d'autres sont simplement sto kees dans des systemes de hiers ou de simples tableurs, d'autres en ore sont les resultats d'appli ationsplus ou moins omplexes, enn, ertaines sont les donnees han-geantes etarbores entes des pages du web.
La diversite de es sour es de donnees onduit a des modes de onsultation qui peuvent ^etre tres dierents.Ainsi, une base de donnees relationnelles sera interrogee par l'intermediaire d'une requ^ete SQL, une page Web sera onsultee par une adresse web (URL)parti uliere, etun tableur par une formule spe ique. Unetelle varietede sour es impliquediversesfa ons de lesinterroger - 'est-a-direde formulerune requ^ete-mais aussi plusieurs manieres pour la sour ede presenter un resultat.
Pour obtenir un resultat, la requ^ete fait appel aux methodes d'a es des sour es de donnees. Ces methodes d'a es peuvent se faire lo alement par l'intermediaire d'une interfa e spe ique oud'une interfa e de programmation, oude manieredistantevia des proto oles de ommuni ation. L'apparition de proto oles ommeODBC, JDBCou IIOP simplient onsiderablement l'a es a nombre de es sour es de donnees. L'emergen e d'ar hite tures de mediation< trois-tiers> permetde plus en plus de regrouperl'a es a
Un nouveau type de donnees a prendre en ompte : les donnees semi-stru turees
Jusqu'al'avenementdu langageXML, lemondede l'informationsedivisaiten deux parties omplementaires. D'un ^ote, il y avait le monde des bases de donnees tradition-nelles (SGBD relationnels, et SGBD objet), de l'autre, le monde de l'EDI permettant l'e hange des informationsetdes presentations.
Le mondedes bases de donnees traditionnellestire sa puissan e de laregularitedes stru tures des objets qu'il manipule, e qui permet ainsi des langages de requ^ete tres puissants. Il ne peut par ontre pas travailler sur des donnees dont le s hema n'est pas xe a priori. Enn, il ne essite l'ajout de omposants supplementaires quand au format et ala presentation des donnees.
Lapla esans esse roissantededonneessemi-stru tureesdontlestandarddominant estleformatXMLaparailleurs onduitadenirdessystemesdebasededonneesadaptes pour e typede donnees.
XML est un langage permettant de representer des donnees semi-stru turees sous la forme d'elements balises imbriques. Un do ument XML est un do ument textuel ou les valeurs de donnees sont en adrees par la designation de la donnee (ex. <adresse>5, rue de Montreuil</adresse>). Ainsi, le s hema est en partie deni dans les donnees elles-m^emes (donnees auto-des riptives).
La grande ri hesse de XML tient aussi de tous les outils et standards qui se sont developpes autour de e format. Ainsi, malgre la stru ture intrinseque du s hema, une stru ture generalede s hema peut-^etre toutefois asso iee (XML-S hema). Un omposant de presentation (feuille XSL) permet de gerer le formatage des do uments et enn des langagesde requ^ete puissants (XQuery) ontet espe iesan depermettrel'interrogation eÆ a e des donnees.
L'emergen e etla standardisation du langageXML et de omposants asso ies pour l'e hange de do umentsont permis de fusionner le mondedo umentaire etle monde des SGBD en integrant lesfon tionnalitesutiles de ha un d'eux.
1.2 Problematique
Le on ept de donnees semi-stru turees est nouveau dans le monde des bases de donnees, et ertainsparlentm^eme de revolution XML.
Pourprendreen ompte enouveautypededonnee,ilfautreinventerlesme anismes et lesalgorithmes utilisestraditionnellementdans les bases de donnees.
1.2.1 Requ^ete sur donnees semi-stru turees
Evaluerunerequ^ete surdesdonnees semi-stru tureesimpliquedenavigueratravers la stru ture en examinant a la fois les valeurs des elements et le nom auto-des riptif de l'element tout aulong du par ours.
Plusieurs langages de requ^etes sur les donnees semi-stru turees (XML-QL, XQL) ont ete proposes avant d'aboutir au langage de requ^ete XQuery. Celui- i est nouveau, et peu d'implementationsexistent. L'implementationde l'evaluationde requ^ete est don rendu omplexeet peu s^ure a ause de lajeunesse de e langage.
1.2.2 Mediation de donnees semi-stru turees
Lesdonnees sontdeplus enplus disseminees surlesreseaux.Letypede es donnees peut ^etre varie (donnees textuelles, relationnelles, multimedia, semi-stru turees) et leur systemede sto kage tresdierents(systemede hiers,SGBD,appli ations).Ilfautorir un systeme de gestion integrant des sour es de donnees heterogenes tout en assurant la transparen e ala distributionet al'heterogeneite.
L'evaluation de requ^etes dans un systeme distribueheterogene presente des aspe ts diÆ iles. Du fait de la lo alisation des donnees, une requ^ete doit ^etre divisee en sous-requ^etes tenant ompte de la lo alisationdes sour es etde leurs apa ites. Celles- i sont ensuiteenvoyees en paralleleouen serie sur lessites ave tous lesproblemes d'ordonnan- ementetde syn hronisationquien de oulent.Lesproblemes on ernant lamediationde donneesontfaitl'objetdeplusieursetudes.ParmilesdiÆ ultesdegageesparla on eption d'un omposant de mediationon peut iter prin ipalement :
{ omment integrer des donnees de stru tures et de natures fondamentalement dierentes;
{ omment de omposer une requ^ete faisant intervenir plusieurs sour es en des re-qu^etes spe iques a es sour es, puis savoir re omposer le resultat;
{ omment optimiserl'evaluationdes requ^etes dans un tel ontexte distribue; { que faire dans le as de sour es aux possibilitesd'interrogation tres limitees (ex.
systeme de hiers).
La mediation des donnees semi-stru turees est soumise aux problemes inherents a toutmediateur,maisilfautdeplustenir omptedufaitqueless hemase hangespeuvent ^etre fortementarbores entsetsontsus eptibles d'evoluer,ouen orene pas representer le s hema general d'une olle tionde do uments.
1.2.3 Algebre d'interrogation de donnees semi-stru turees
Dans le as de donnees semi-stru turees, il s'agit de on evoir une algebre ave une assez grande puissan e d'interrogation pour tirer parti de toutes les proprietes des donnees semi-stru turees.Pour ela,l'algebredoita lafoisse ontenter dupeu de typage de ertainsdo umentssemi-stru tures, etaussipouvoirgererle ase heantdesstru tures stri tesbasees sur des s hemas. Enn,l'algebredoit pouvoir permettre des optimisations eÆ a es en donnant des regles d'equivalen es.
Du faitde lastru turearbores entedes donnees semi-stru turees, des operationsde manipulation d'arbores en e (navigation, omparaison d'arbres) sont ne essaires. Or de tellesoperationssont omplexesetne essitent souventdes par ours o^uteuxatravers des sous-arbres.
1.2.4 Modele de o^ut sur donnees semi-stru turees reparties
Dans le as de sour es entralisees, le mediateur a onnaissan e des parametres internes,desmodelesde o^utetdesstatistiquesdessour esquiluisontrelies.L'evaluation du o^utd'unerequ^eteetsonoptimisationne presententdans e as quepeu dediÆ ultes. Dans le as de sour es heterogenes, les sour es sont autonomes et ne fournissent pas toutes les informationsdont le mediateur aurait besoin lors d'une phase d'optimisation. Certainessour espeuvent^etredefon tionnaliteslimiteessibienquem^emelespossibilites d'interrogation se trouvent limitees. Dans e as, 'est le plus souvent au mediateur de pallier auxde ien es fon tionnelles.
A es problemes presents dans le ontexte de sour es heterogenes, s'ajoutent les problemes dus au ontexte semi-stru ture. L'optimisation s'avere tres omplexe : en ef-fet, parmi toutes les fa ons possibles de resoudre une requ^ete, omment trouver la plus optimale? Quel modele de o^utappliquer sur des donnees n'ayant pas de s hema pre is onnu a l'avan e, omment prevoirla omplexite d'une requ^ete sur une sour e aux fon -tionnaliteslimitees (ex. sour e web), dans un ontexte ou ladisponibilite et le temps de reponse ne sont pas toujours predi tibles?
1.2.5 Utilisation d'un a he pour l'optimisation de requ^etes
Interroger a haque requ^ete les sour es qui peuvent ^etre dispersees sur un reseau aussi vaste que l'Internet, peut se montrer o^uteux en terme de ommuni ation et en delaid'attente. Il seraitinteressant pourlemediateur, depouvoir onserveraumaximum les informationsissues de requ^etes pre edentes an de pouvoir les reutiliser. Dans le as d'unenouvelledemandeportantsur esm^emesdonnees,lesa esauxbasesseraientevites.
de a he etant limite, quelle est la politique de rotation? Sous quelle forme et omment sto ker des donnees pouvant provenir de sour es tres dierentes? Que faire des donnees du a he dans le as d'une misea jour de la sour e?
Siun a hededonneessemi-stru tureesestutilise,denouveauxproblemesseposent quandausto kagede esdonnees surdisque.Lesdonneessemi-stru tureesontuns hema irregulier qui est le plus souvent de ouvert en m^eme temps que les donnees. Comme les metadonnees sontpropresaudo ument ainserer,ilest don indispensablede sto kerune donnee ave le s hema orrespondant.Orm^eme silesdonnees semi-stru turees n'ont pas de s hema xe, il s'avere laplupart du temps qu'une m^eme partie de s hema (ou tout le s hema) se retrouve dans ha un des do uments.Un probleme souleve est lamaniere de sto kerdesdonneesave leurs hema orrespondantdelafa onlaplus ompa tepossible.
De plus, en vue des requ^etes de navigation qui risqueraient d'^etre posees, il faut trouver ommentstru turerl'informationsurdisqueandepouvoirrepondreeÆ a ement
a es demandes de navigation.
1.3 Solutions existantes
Cha une des problematiques que nous avons soulevees a ete l'objet de nombreux travaux sur lesdonnees semi-stru turees. Certains sontbasessur une des representations originales des donnees semi-stru turees dont le format est OEM. D'autres plus re ents s'appuientsur leformat standard XML.
1.3.1 Requ^ete sur donnees semi-stru turees
An de pouvoiree tuerdes requ^etes sur des donnees XML,de nombreux langages de requ^etes onteteproposes. Certains ontete on usplus spe iquementpourmanipuler des modeles de donnees de type oriente OEM (OEM-QL, Lorel [Abiteboul et al. 1997℄), d'autres pour des modeles de donnees de type XML (XPath [Clark et DeRose 1999℄, XML-QL [Deuts h et al. 1998℄,QUILT [Robie et al.2000℄, ettout dernierementXQuery [W3C 2001℄). De tels langagesde requ^etes ontfait l'objet d'uneetude ausein du W orld-Wide-Web Consortium (W3C), etle langageXQuery aeteretenu omme standard.
XQuery est un langage de requ^ete XML fon tionnel a base d'expression de he-mins, de bou les de repetition, de tests de predi ats et d'elements de re onstru tion de do uments XML.
1.3.2 Mediation de donnees semi-stru turees
La mediation permettant de federer plusieurs sour es a surtout ete etudiee dans le adre des bases de donnees relationnelles (Multibase, Mermaid, InterSQL [Mullen et Elmagarmid1993℄,SIMS)etobjets(PEGASUS[ Ahmedetal.1987℄,IRO-DB[Gardarinet al.1994℄,GARLIC[Carey1995℄,DISCO[Tomasi etal.1996℄).Lamediationdes donnees semi-stru turees est un travail de re her he plus re ent. RUFUS [Shoens et al. 1993℄ en 1993 a ete le pre urseur de la generation a tuelle de systeme de donnees interoperables integrant des donnees semi-stru turees.TSIMMIS [Chawathe etal. 1994℄en 1994integre en plus le web omme sour e d'information. Ont ensuite suivi MIX [Bornhovd 1998℄, STRUDEL [Fernandezet al.1998℄,Y
A
T [Cluet1998℄ etAGORA[Manoles u etal.2001℄.
Undesobje tifsdeTSIMMISestd'integrerdessour esquisonttresheterogenes,qui peuvent^etrepeustru tureesetquisontsus eptiblesd'evoluerrapidement.TSIMMISa in-troduitleformalismeOEM ommemodelede donneessemi-stru ture.Parl'intermediaire de l'entrep^otde donnee LOREutilise ommesour esemi-stru tureedu projetTSIMMIS, tout un ensemble de te hniques adaptees au semi-stru ture aeteetudie.Notamment des modeles de o^utsemi-stru ture,et l'implementationdes guides de donnees (fa torisation de stru ture de donnees semi-stru turees).
Le su esseur de TSIMMIS, MIX utilise XML omme modele d'e hange et XMAS ommemeta-langagederequ^ete.Delasorte,tousleslangagesbasessurdusemi-stru ture peuvent^etre onvertisen XMASquipeut^etreensuite^etreutiliseparlemediateur.XMAS est le langagede requ^ete d'e hange de l'ar hite ture de mediationMIX.
STRUDEL et Y A
T integrent des sour es de donnees dans un environnement Web. Ils se basent sur une representation de graphes an de representer les donnees semi-stru turees provenant des dierentes sour es.
L'obje tif d'AGORA est de supporter les requ^etes et l'integration de sour es rela-tionnelles et semi-stru turees. Les requ^etes XQuery sont transformees en requ^etes rela-tionnelleset lesresultatssous formes de tuples sont ensuiteretransformesen XML.
1.3.3 Algebre d'interrogation de donnees semi-stru turees
Plusieurs algebres pour XML (IBM [Bee h et al. 1999℄, Y A
T [Christophides et al. 2000℄,AT&T[Fernandezetal.2001℄,LORE[M HughetWidom1999b℄)onteteproposees, et seule l'algebre proposee par l'AT&T a et e retenue et publiee dans le papier de travail [Consortium2000℄ende embre 2000.D'autresalgebres ommeNIAGARA [Galaniset al. 2001℄ etTAX [Jagadishet al. 2001℄ ont faitleur apparition par la suite.
siques spe ialement dedies pour e systeme (utilisantles dierents index et lemodele de donnee OEM). Y
A
T transformeune stru ture XML en une stru ture tabulaire, applique les operateurs relationnel standards et enn re onstruit l'arbre resultat. IBM, TAX et Niagara sontdes algebres utilisantdes operateurs standards relationneletendus au semi-stru ture.AT&Tsebasesurunesemantiqueformelledesorteapouvoirfaire orrespondre XQuery etl'algebre fa ilement.Les optimisationsse font sur les bou les.
1.3.4 Modele de o^ut sur donnees semi-stru turees reparties
Les modeles de o^utsur desdonnees repartiesont faitl'objet denombreuses etudes dans le adre de donnees relationnelles et objets. Les grandes ategories qui s'en sont degagees sont : le o^ut par alibration [Du et al. 1992℄, par e hantillonnage [ Q.Zhu et Larson1998℄,parhistorique[Adalietal.1996℄,adaptatif[Zhu1995℄,etunegeneralisation du o^utpar alibrationet par e hantillonnage[Naa ke et al. 1998℄ utilisee dans le projet DISCO.
Uneappro hesur lesmodelesde o^utrepartissur lesadaptateursaeteutiliseedans le projet GARLIC[ Haas et al. 1997℄et DISCO.
Les modeles de o^ut spe iques aux donnees semi-stru turees ont tres peu ete etudies, nous pouvons neanmoins iter [M Hugh et Widom 1999b℄ pour les operateurs de l'entrep^ot de donnees semi-stru turees natifLORE.
1.3.5 Utilisation d'un a he pour l'optimisation de requ^etes
Plusieurs typesde a he ontete etudies dans le adre de la mediation des donnees. Certains se basent sur des me anismes de repli ations de donnees, d'autres utilisent des identiants, etenn d'autres ont une appro he semantique.
Les a hessemantiquesexploitentlastru tured'unenouvellerequ^eteandedeterminer siuneouplusieursrequ^etespre edemmentformuleesnepourraientpasrepondreentierement ouen partiea une nouvelle requ^ete.
Plusieurs methodes ont ensuiteete proposees pour sto ker lesrequ^etes, et de nom-breuses solutions ont ete soumises [ Bourret 2000℄ an de permettre un sto kage des donnees XML. Certaines s'appuient sur des SGBDR/SGBDO deja existants en y ra-joutant un module d'extension XML, d'autres integrent un mediateur permettant les transitions entre des donnees traditionnelles et une stru ture XML. Enn ertaines pro-posent un sto kage XML natifsuivant des te hniques variees s'appuyant le plus souvent sur unsysteme de hiers existant(Lore [M Hughetal.1997℄,PDOM [Hu k etal.1999℄)
Le projet HERMES [Adali et al. 1996℄ introduit un a he de donnees semantique pour un mediateur de donnees semi-stru turees. Pour ela, les requ^etes deja exe utees sontsto kees dans unebasede donnees lo ale.Cette methode permet,lorsqueletypedes requ^etes demandees varient peu, de pouvoir minimiser le temps de ommuni ation pour des requ^etes qui ontete entierementou en partie resolues lorsde requ^etes pre edentes.
1.4 Obje tif et ontexte de la these
Un des obje tifs majeur est de developper un mediateur pouvant integrer le plus grand nombre de sour es dierentes possibles et s'appuyant sur XML omme modele d'e hange. Ce systeme devra onsiderer spe ialement les donnees semi-stru turees stan-dardisees par lelangageXML.
Nous presentons un systeme de mediation de sour es heterogenes a travers un systeme on u initialementaulaboratoirePRiSM en ollaborationave laso ieteOsis,et reprisensuiteparlaso ietee-XMLMedia, ainsiqu'unear hite ture degestionde donnees semi-stru turees on ue aulaboratoirePRiSM.
Ce travailademarreave leprojet MIROWEB [Bouganimet al.1999℄ [Gardarinet al. 1999℄ [Fankhauser et al. 1998℄ (projet ESPRIT-25208). Celui- i onsiste a developper une ar hite ture de mediationentre dierentes sour esde donnees. Lemodelede donnees semi-stru tureesaete hoisi ommemodelepivot.Ils'agitdepermettreensuite l'exploita-tionde esdonnees pardesappli ations lientesdansle ontexte duweb.Cetteexperien e a ensuite ete reprise lors de l'implementation d'un omposant mediateur par la so iete e-XMLMedia dans son integration dans le projet ESPRIT XML-KM (IST-12030) Il a enn ete omplete par un entrep^ot natif de donnees XML dans le projet MUSE (projet RNTL).
Nous de rirons une algebre basee sur des operateurs relationnels etendus a des donnees semi-stru turees. Cesoperateurssontfaitsde sorteaprendreen omptela stru -ture arbores ente des donnees semi-stru turees tout en reduisant les o^uts de par ours d'arbres en utilisant des index appropries.
Nous de rirons egalement un modele de o^utadapte plus spe iquement a e nou-veau type de donnees qu'est le semi-stru turee. Nous verrons aussi pour ela un langage d'exportation de o^ut base sur XML ainsi qu'un langage d'exportation de apa ite des adaptateurs.
Enn, un troisieme obje tif est de voir omment un a he utilisant une base de donnees native semi-stru turee pourrait a ro^tre les performan es du mediateur. Nous utiliserons pour ela un a he semantique ompose d'un SGBD natif XML : ReposiX.
permetdesto kerduXMLde fa on ompa teetde retrouvereÆ a ementdesdo uments oudes sous-parties de do uments semi-stru turees a partird'identiants uniques.
1.5 Contribution
Dans ettethesenousdenissonsun adrepourl'evaluationde requ^etesheterogenes semi-stru turees. Nous denissons une ar hite ture de mediation < tout-XML >, 'est- a-dire entierement basee sur XML. Nousmontrons ainsi ommentnous avons misen pla e desinterfa esappli ativesdedieesaXML,deslangagesd'informationde o^ut,de apa ite, de metadonnees etde denition d'adaptateurs en XML.
Nousproposonsdes stru tures d'algebrepermettantd'evaluersimplementmais eÆ- a ementdes requ^etes XQuery sur des donnees XML.Cette stru tured'algebreest basee sur les uxde donnees SAX standards, et omporte un me anisme d'indexation d'arbres range de fa on tabulaire permettant d'allier la omplexite des arbres de donnees semi-stru turees a l'eÆ a itedes operations sur les tableaux.
Pour estimer le o^ut des requ^etes, nous proposons des formules de o^ut pour es nouveauxoperateurs.And'integrerlesinformationsde o^utdesdierentes sour es,nous proposonsun langagede o^utadapteauxformulesde o^utsemi-stru ture.Ce langagede o^utpresente lanouveaute d'^etre lui-m^emeexprime en XML.
Nousdenironsl'utilisationd'un a hesemantiquesemi-stru turepourlemediateur. Pour ela, nous montrerons omment un entrep^otnatifde donnees semi-stru turees peut s'integrer dans une ar hite ture de mediation en tant que SGBD lo al onservant les resultats de requ^etes deja ee tues. Nous verrons aussi omment une nouvelle requ^ete peut ^etre omparee ades requ^etes pre edemment formulee.
Pourpouvoirevaluerlesperforman esdenotrear hite ture, onstatantqu'iln'existe pas deban sd'essaidedieal'integrationde donnees XML,nousetendrons leban d'essai TPC-R a e ontexte.
Enn, nous verrons omment ont ete implementees es solutions dans le adre des projets MIROWEB, XML-KM etMUSE.
1.6 Organisation du do ument
ha-Vue d'ensemble des hapitres Apresla presente introdu tion, le deuxieme hapitre dresse un etat de l'art sur les donnees semi-stru turees et l'integration des donnees. Le troisieme hapitre presente une ar hite ture de mediation permettant de federer des sour es heterogenes stru turees ou semi-stru turees. Le quatrieme hapitre presente une algebreutiliseepourl'evaluationetl'optimisationderequ^etessurdonneessemi-stru turees. Dansle inquieme hapitre,nousdenironslemodelede o^utasso ieauxdonneesde ette ar hite ture. Nous presenterons dans le sixieme hapitre une optimisation du omposant de la ou he mediationparl'utilisationd'un a he semantique. Nouspresenterons ensuite dansle inquieme hapitrelesprototypessur lesquelsnousavons travailletout aulong de ette these et qui ont onstitue les dierentes etapes de notre ar hite ture de mediation. Une evaluation de performan e et une omparaison par rapport a l'etat de l'art sera presentee dans leseptieme hapitre.Etenn,nous on lurons dansledernier hapitreen resumant les ontributions et en proposant de nouvelles perspe tivesde re her he.
hapitre 2 Contrairement aux donnees traditionnelles, les donnees semi-stru turees sont irregulieres : des donnees peuvent manquer, des on epts similaires peuvent ^etre representes par dierents types de donnees, et les stru tures m^emes peuvent ^etre mal onnues; ette absen e de s hema predeni, permettant de tenir ompte de toutes les donneesdumondeexterieur,presentel'in onvenientde omplexierlesalgorithmesd'int eg-rationdesdonneesde dierentes sour es,maisaussilesdifferentesoperationsinherentes a unmediateur, ommelade ompositionderequ^etes,l'evaluationdesrequ^etes,l'integration dess hemasetdesdonneesetennlare ompositiondesresultats.Nouspresenteronsdans e hapitre un etat de l'art sur les donnees semi-stru turees et sur les ar hite tures de mediation.
hapitre 3 Outre les problemes lassiques de mediation de donnees heterogenes (in-tegration de donnees heterogenes, s hemas dissemblables, de oupage d'une requ^ete en sous-requ^etes al ulables par les sour es sous-ja entes, optimisation d'une requ^ete dis-tribuee dierente d'une optimisation de requ^ete entralisee ou le mediateur onna^t l'or-ganisation de haque sour e et dierente de l'optimisation d'une requ^ete lo ale puisqu'il s'agitde gererdes requ^etes provenantde sites dierents), ilfautpouvoirtenir omptedes spe i ites des donnees semi-stru turees. Nous presentons dans e hapitre une ar hite -turedemediationetsesdierents omposants.Nousde rironslemodelededonneesutilise, le langage de requ^ete et les intera tions entre les omposants. Nous de rironsegalement les formats bases sur XML utilisespour ommuniquer des informationsde metadonnees, de o^utetde apa itedessour esdes adaptateursaumediateurvia l'interfa eappli ative XML/DBC.
hapitre4 L'evaluationdesrequ^etedoitsefaireenexploitantaumaximumlesspe i ites desdonneesetpermettreuneoptimisationeÆ a e.Aussidesalgebrespourleurevaluation
trerons omment son evaluation est rendue eÆ a e gr^a e aux stru tures parti ulieres manipuleespar lesoperateurs. Lesoperateurs sont lesoperateursalgebriquesrelationnels etendus au semi-stru ture. Les stru tures utilisent un systeme d'indexation des nuds, permettantd'allier lesavantages de l'algebre sur des donnees tabulaires, et lari hesse de representation des arbres.
hapitre 5 Lesdierentes manieresd'exe uterunem^emerequ^ete, nommeesaussiplans d'exe ution doivent pouvoir^etre modelisees par un modelede o^utqui permettra par la suite d'evaluer pour haque plan elui de o^utminimum. Nousetudierons les dierentes methodes de modelisation de o^ut existants. Beau oup s'appuient sur des modeles de donnees relationnelles, objet ou oriente-objet. Tres peu de travaux ont ete faits sur les donneessemi-stru turees,etnousnousatta heronsdans ettetheseadenirunmodelede o^utsur un teltypede donnees. Les sour espouvant^etre tresheterogenes, elles peuvent avoirdes apa itesdetraitementdedonnees tresdierentes, maisaussiavoirdesmodeles de o^utplus ou moins denis. Il s'agit don de savoir integrer es dierents parametres. Nouspresenterons des formules de o^uts pour donnees semi-stru turees.
hapitre 6 Lessour esetantreparties,lestempsd'a esaunesour epeuventsereveler penalisantss'ils'agitderepondretoujoursaum^emetypederequ^ete.Pour ela,nous mon-trerons que l'utilisationd'un a he semantique auniveau du mediateur est envisageable. Nous presenterons l'utilisation d'un SGBD natif XML omme a he de donnees. Nous de rironsegalementl'ar hite ture du SGBD natifXML nomme ReposiXdans une ar hi-te ture de mediation.
hapitre7 Troisprojetsontservideldire teura ettethese.Nousde rironsl'evolution de notre ar hite ture de mediation au sein de es trois projets. Le projet ESPRIT MI-ROWEB a pour l'obje tif de onstruire un systeme d'a es sur le Web. Le projet ES-PRIT XML-KM onsiste en l'integration d'appli ations existantes dont un entrep^ot de donnees et un systeme d'information geographique. Le projet RNTL MUSE onsiste en la realisation d'un moteur de re her he sur des do uments XML pouvant in lure des do uments multimedia.
hapitre 8 Nous presenterons dans e hapitre,dierentes evaluationsettests permet-tantde validernos travaux.Nousnousappuyonssur des asd'utilisationpour unemesure < qualitative> de l'ar hite ture, puis sur des ban s d'essai pour une mesure< quantita-tive> des performan es.
Les mediateurs de donnees
semi-stru turees
2.1 Introdu tion
Les donnees du World Wide Web se ara terisent par des stru tures irregulieres dynamiques ou in onnues. Ces types de donnees sont ommunement appelees donnees semi-stru turees. L'apparition du on ept des donnees semi-stru turees est onsideree ommeunerevolutiondanslemondedesbasesdedonnees.Eneet,enintegrantlemonde do umentaire etlemondedes basesde donnees relationnellesetobjets,lesdonnees semi-stru turees ont pour obje tif de permettre une meilleure representation des entites du monde reel.
En ontrepartie, de telles donnees sont omplexes a manipuler par des traitements automatiques. Les langages de requ^ete, et les te hniques d'optimisation et de sto kage utilises pour les donnees lassiques ne s'appliquent plus. Il a don fallu adapter, voire inventer de nouveaux on epts etalgorithmes pour manipulerdes objets semi-stru tures.
Il fautpouvoirrepresenter es donnees. Pour ela des modeles de donnees propres a e nouveau typede donnees onteteproposes. Il fautaussipouvoire hanger es donnees, aussi des formats de do ument representant es donnees ontd^u^etre denis.
Lorsquelemodelededonneesaeteformalise,ils'agitd'interroger lesdonnees.Ilfaut don denir un langage de requ^ete appli able aux donnees semi-stru turees. Ce langage doit^etre deni de sorte aexploiteraumaximum lesspe i itesde es nouveaux types de donnees.
ooperation entre des donnees provenant de sour es lassiques (hierar hiques, relation-nelles, objets, annuaires LDAP) et de es sour es semi-stru turees. Les te hniques de mediation ont d^u^etre adaptees pour prendre en ompte es nouveaux types de donnees.
Partant de es bases, nous presentons un etat de l'art sur l'integration de donnees semi-stru turees dans un ontexte heterogene.
2.2 Plan du hapitre
Nous introduirons la notion de donnees semi-stru turees dans la se tion 2.3. Puis nous montrerons omment ontete modeliseesde telles donnees dans la se tion 2.4. Nous verrons ensuite omment des metadonnees peuvent ^etre denies ou extraites dans la se tion 2.5. Il faut un langage permettant d'interroger e nouveau type de donnees, et plusieurs langages ont ete proposes. Nous etudierons les ara teristiques des prin ipaux langages portant sur les donnees semi-stru turees dans la se tion 2.6. L'utilisation d'un nouveau type de donnees ne doit pas faire oublier les autres types de donnees existants, ils'agit de montrer omment integrer es donnees ave d'autres donnees reparties sur un reseauaussi vaste quel'Internet.Cetteintegrationsera de rite danslase tion2.7. Divers systemes d'integration de donnees semi-stru turees ommer iaux ou non existent deja. Les plus interessants sont analyses dans la se tion 2.8. Enn, nous on lurons dans la se tion 2.9.
2.3 Notions de donnees semi-stru turees
Les bases de donnees traditionnelles s'appuient sur la regularite des stru tures des objets qu'elles manipulent. En eet, l'une des ara teristiques prin ipales des bases de donnees relationnellesest ladenitionde s hemas xes auxquels lesdonnees sont ensuite obligeesde se onformer.Ilen vadem^emepourlesbasesdedonnees objets.Celasimplie les traitementsinformatiques (sto kages, interrogations) et permet des a es sur riteres tres rapides. En revan he, une telle regularite ne permet pas de reproduire la pensee de l'utilisateur ou le monde reel. Ce i ar les bases de donnees traditionnelles (stru turees) ne peuvent pas travailler sur des donnees dont le s hema n'est pas xe a priori. Cette opposition entra^ne par lasuite lesproblemesbien onnus suivant:
{ la stru ture de donnees peut evoluer : ela ne essite alors la modi ation du s hema. Cette modi ation peut s'averer omplexea realiser;
{ lesdonnees peuvent nepas se onformerexa tementau s hema : e ine essitele plus souvent de surdimensionner le nombre de olonnes et d'employer beau oup de valeurs nulles;
le plus souvent l'emploi du type le plus englobant (souvent le type < ha^ne de ara teres >); e i a pour onsequen e de reduire la nesse de la des ription et lespossibilitesd'interrogation;
{ une instan ed'attributs peut^etre mono-valueeou multi-valuee : lesSGBD tradi-tionnelstraitent esdeux as ommedeux asbiendistin ts,orilfaudraitpouvoir gerer es as uniformement;
{ les donneespeuvent^etre faiblementstru turees (texte brut) : e i entra^ne l'utili-sation de blo sde donnees brutes (BLOB) qui ne permettent pas des te hniques tresnes d'interrogation.
Or, lamajoritedesinformationsdu mondereel(et enparti ulierdu web)n'apas de stru turereguliereetstatique omme elaestle aspourlesdonneesdes basesde donnees relationnellesou objets. Les donnees du web sont non-stru turees ousemi-stru turees.
La manipulation des donnees non-stru turees (texte brut, donnees binaires) reste limitee ou trop spe ique et globale. Les requ^etes sur objets longs (BLOB ou CLOB) onsistent surtout en la re her he par mots- lefs. Celles- i sont les plus souvent basees sur des te hniques d'indexation dansle as des donnees textuelles.Ilexiste aussi d'autres methodes de re her he spe iques (par exemple, pour les images,suivant leformat d'en- odage,lare onnaissan edeformes,et .)danslesdonnees non-stru turees.Cesmethodes spe iques peuvent permettre des interrogations tres poussees (utilisationde thesaurus), mais restent propres aux donnees manipulee et se basent sur une analyse globale des donnees.
Les donnees semi-stru turees ne sont pas ontraintes par l'utilisationde stru tures aussirigidesquedansle asdurelationneloudel'objet.Ellesbene ientneanmoinsd'une stru ture exible restant assez oherente pour pouvoir^etre manipulees.
Les ara teristiques[Abiteboul1998℄[Abiteboul1997℄des donnees semi-stru turees sont de rites i-dessous :
{ la stru ture est irreguliere : une olle tion de donnees semi-stru turees peut omporterdes elements heterogenes de dierentstypespour representer lam^eme information. Un m^eme attribut peut ^etre mono-value dans ertaines instan es et multi-valuees dans d'autres. Des informations supplementaires (annotation, details) peuvent appara^tre a ertains endroits. Enn des elements peuvent aussi manquer dans ertaines instan es;
{ la stru ture est impli ite : m^eme si une ertaine stru turation peut sembler presente (indiquee par l'intermediaired'etiquettes, de balises,de hamps,et .), il peut ne pas exister de des ription expli ite. L'extra tion etl'interpretation de la stru tureestunpro essusdiÆ ilepuisqu'ils'agitalafoisd'analyser,d'interpreter les donnees et d'ee tuer des orrespondan es logiques pour enn en deduire la stru ture;
d'informa-{ le typage est irregulier : il n'y a pas de typage stri t d^u a l'heterogeneite des donnees;
{ le s hema est l^a he : dans lesSGBD traditionnelsune politiquede typage stri t est imposee pour proteger la onsistan e des donnees. Dans des donnees semi-stru turees, des transgressions sont tolerees et onduisent a une alteration du s hema;
{ le s hema peut ^etre anterieur ou posterieur : la notion de s hema peut ^etre anterieure ou posterieure a l'existen e des donnees. Les systemes de gestion de base de donnees traditionnellessont basessur l'hypothese d'un s hema xedeni avant toute insertion de donnees. Dans le as de donnees semi-stru turees, la notion de s hema est souvent posterieure a l'existen e de donnees;
{ le s hema est large : en onsequen e de l'heterogeneite, le s hema est la plupart dutempstreslargepourenglobertouteslesinformationsdes dierentes instan es des donnees. Celapeut poserdes problemes danslesformulationsde requ^etes par l'utilisateur;
{ le s hema est parfois ignore : les requ^etes exploratoires ou a base de re her hes de mots sans indi ations pre ises sont tres usitees. Dans e type de requ^ete, le s hema n'est pas utilise;
{ les hema evolue rapidement : lessour es de donneessemi-stru turees sont habi-tuellementdynamiques.Leursdonneesetleurorganisation hangentfrequemment. En onsequen e, leurs s hemas sontsouvent mis ajour;
{ le type des elements de donnee est e le tique : la stru ture d'une information peut varier suivantle point de vue. Letype des objets peut hanger lorsde leurs traitement.Parexemple pour de rireun wagonfumeur/non-fumeur, onpeut uti-liser soit l'attribut ategorie de type ha^ne, et ou les valeurs possibles seront les ha^nes "fumeur" ou "non fumeur", soit l'attribut booleen fumeur dont les valeurs seront vraiou faux;
{ la distin tion entre s hema et donnee est oue : dans les SGBD onventionnels, ladieren eentre s hema etdonnee est tresmarquee. Nousavons vuqu'en semi-stru turee es dieren es s'estompent : les s hemas se modient, sont larges, les requ^etes portentaussi bien sur lesdonnees quesur less hemas. De plus,en semi-stru ture, la dieren e entre s hema et donnee n'a parfois logiquement que peu de sens.
2.4 Representation des donnees semi-stru turees
Une des fa ons de representer une donnee semi-stru turee est de les representer sous la forme d'un graphe. Les elements du s hema sont alors representes sous forme d'etiquettesatta hees aux ar s ouaux nuds du graphe.
profession
"Administrateur
système"
(a)
(b)
prénom adresse
ville
rue
numéro nom
nom
age
personne
"Cover"
36
"Harry"
11
"Paris"
"Maupassant"
travail
"Ingénieur
développement"
adresse
numéro
étage
bureau
personne
78000 Versailles"
317
3
"5, rue du marché "Well"
prénom
"Rose"
nom
Fig. 2.1 { Exemple de graphe representant deux donnees semi-stru turees
Ainsi, dans la premiere instan e (a), la personne est de rite par un nom, un age, une adresse etune profession. L'adresse est elle-m^eme de rite par une rue et une ville etunerueestdenieparunnumeroetunnom.Dansladeuxiemeinstan e(b),lapersonne est de riteparune adresse, unnom, un prenom unbureau etun travail,etson bureau est determinepar un numeroet un etage.
2.4.1 OEM
La modelisationlaplus ommune des donnees semi-stru turees est le modeleOEM presente dans le projet d'integration TSIMMIS [Papakonstantinou et al. 1995℄. Dans e projet, les donnees semi-stru turees sont modelisees sous forme de graphe oriente. Une donneeOEMestrepresentee parune olle tiond'objets.Chaqueobjetpeut^etreatomique ou omplexe. La valeur d'un objet atomique repond a un type de base (entier, ha^ne de ara teres, image, son, et .). La valeur d'un objet omplexe est un ensemble de ouples (nom d'attribut, objet). Legraphe omporte une ra ine.
La gure2.2est un exemplede donnee OEM. Les hires 1,2,3,et .sont des iden-tiantsd'objets (OID). La ra ine1 designee dans le s hema par l'etiquette< divertis-sement >, regroupe deux objets de type omplexe etiquete < restaurant > et un objet simpleetiquete <bar > de type ha^ne de ara teres et de valeur < Wild Geese >.
La representation textuellede la donnee semi-stru turee modelisee par legraphede lagure 2.2 est representee sous laformede rite dans ledo ument2.1.
2
4
1
3
5
"Salade
Thai"
de canard"
"Plaque
chauffante
vapeur"
"assortiment
6
7
8
9
10
11
12
"Palace d’Ivry"
0145826755
M.Ming
"Royal Fata"
"cafe liegois"
"Wild Geese"
nom
plat
telephone
proprietaire
nom
plat
restaurant
plat
plat
bar
restaurant
divertissement
Fig. 2.2 { Exemple de graphe OEM
<divertissement, set, 2, 4>
2 is <restaurant, set, 5, 6, 7, 8> 3 is <restaurant, set, 8, 9, 10, 11, 12> 4 is <bar, string, "Wild Geese">
5 is <nom, string, "Pala e d'Ivry"> 6 is <plat, string, "Salade Thai"> 7 is <telephone, string, "0143669986"> 8 is <proprietaire, string, "M. Ming"> 9 is <nom, string, "Royal Fata">
10 is <plat, string, "Plaque hauffante de anard"> 11 is <plat, string, "Assortiment vapeur">
12 is <plat, string, "Cafe liegois">
Do .2.1: Representation OEMdu graphe de la gure 2.2
2.4.2 XML
XML [Bray et al. 1998℄ (eXtended Markup Language) est un format textuel ex-tensible de des ription de do ument deni par le W3C. De la famille des langages de marquage SGML [Goldfarb 1991℄ (ISO 8879 :1986), il permet de s'adapter a quasiment tous les domaines oul'on a besoin de stru turer de l'informationde fa on portable.
XML permet de fairele lienentre un langage on u plus spe ialement pour le for-matage de do uments (SGML) et un modele de donnees en emergen e permettant une vision plus realiste mais plus omplexe des donnees qu'est le modele semi-stru ture. Ce langagepermetainsi de denirune stru ture de donnees etson ontenu.
XML est on u de fa on afa iliterl'integrationetl'e hangede donnees entre appli- ations. Il isole leformatage et lerendu des do umentspar rapport asa stru ture. C'est
2001℄ qu'on laisse le soin de s'o uper du rendu de lapage XML lorsde la publi ation.
XML est un langage a base d'elements, d'etiquettes, d'attributs et de valeurs. Les balises (tag)ouvrantes (resp.fermantes) sont onstitueesd'etiquettes (label)representees entre le symbole < (resp. </) et le symbole >. Le omposant logique ompris entre une balise ouvranteet une balise fermanteest appele valeur. Le omposant logique onstitue de labalise ouvrante, de la valeur et de la balise fermante est appeleelement (element). Lavaleur peut^etrevide, ontenirdu texte, d'autreselementsou ontenirun melangedes deux(mixedelement ontent).Lesbalisesdenissentlastru ture dudo ument.L'element de plushautniveauenglobanttouslesautresetn'ayantpas deparentsestappeleelement ra ine. Un element peut ontenir des informations additionnelles appelees attributs (at-tributes). Un attribut est un ouple forme d'un nom et d'une valeur et est represente a l'interieurdelabaliseouvrantesouslaformenom = "valeur" Undo umentXMLest un ensemble d'elements ainsi imbriques.
Un do umentXML peut avoirdeux quali ations,il peut ^etre :
{ bien forme : quand ilrespe te la syntaxe du langage XML denie par le W3C; { valide : quand il est asso ie a une denition de type de do ument et qu'il la
respe te (nom des elements, type, repetition et ordre d'apparition dans le do u-ment).
Un do umentXML bien forme est un do ument XML quirespe te ertaines regles simples :
1. Il existe un etun seulelement ra inequi ontienttous lesautreselements.
2. Les balises sont orre tement imbriquees : haque balise ouvrante a une balise fer-manteasso iee et iln'y a pas de hevau hement.
3. Le nomdes balises est libre mais il ontient aumoins une lettre.
4. Lesattributs des balises, lorsqu'ilsexistent,doivent omporter obligatoirementune valeur qui doit toujours appara^tre entre double apostrophes.
5. Quandunelementestvide,lesbalisespeuvent^etresimpliees:<balise></balise> est identiquea <balise/>.
La representation XML du graphe de donnees semi-stru turees de l'exemple de la gure2.2 est donneedans ledo ument 2.2. Unattribut ategorie(prenantlavaleur '3' puis '5') aeteaussi rajoute al'elementrestaurant (les attributs n'ontpas d'equivalents en OEM).
XML est a present le format standard utilise pour representer des donnees semi-stru turees, et[Goldmanetal.1999℄montrequelesprojetsutilisantOEMpeuventmigrer aisement vers XML.
<divertissement> <restaurant ategorie="3"> <nom>Pala e d'Ivry</nom> <plat>Salade Thai</plat> <telephone>0143669986</telephone> <proprietaire>M. Ming</proprietaire> </restaurant> <restaurant ategorie="5"> <nom>Royal Fata</nom>
<plat>Plaque hauffante de anard</plat> <plat>Assortiment vapeur</plat>
<plat>Cafe liegois</plat> </restaurant>
<bar>Wild Geese</bar> </divertissement>
Do .2.2: Exemple de do umentXML
2.5 Metadonnees pour donnees semi-stru turees
Les donnees semi-stru turees sont auto-des riptives : le s hema est deni dans les donnees, et au une stru ture n'est pre isee a priori. Ce i permet une grande exibi-lite dans le traitement (requ^etes, sto kage, hargement), les mises a jour et les han-gements stru turels de telles donnees. En ontrepartie, une telle souplesse omporte les in onvenients suivants[Su iu 1998℄ :
{ le sto kage des donnees est ineÆ a e : les hema doit ^etre replique pour haque donnee;
{ les requ^etes sont omplexes a evaluer de fa on optimale : m^eme une simple ex-pression de hemin rationnelle implique souvent le par ours omplet du graphe; { les requ^etes sont omplexes a formuler : l'utilisateur ne peut s'appuyer que sur
des informations in ompletes ou inexistantes pour pouvoir formuler une requ^ete pertinente.
Desobservationssurlesappli ationsexploitantlesdonneessemi-stru tureesmontrent que,malgretout,lesdonneespossedentsouventune ertainestru turereguliere.Il onvien-draitde tirerpartide ettederniereanderesoudrelesproblemesenumeres i-dessus.Des re her hes ont ete ee tuees an de de rire et d'exploiter ette regularite sans toutefois utiliser un s hema predeni rigide. Deux prin ipales appro hes ontete proposees :
{ un s hema deduit : al ule automatiquement a posteriori a partir des donnees. Ces s hemas sont rigides et de rivent la stru ture de donnees de fa on assez pre ise, et sont re al ules ou mis a jour regulierement. On peut iter les guides de donnees (dataguides)[GoldmanetWidom1997℄),lesT-indexes[MiloetSu iu 1999℄ etles typesdatalog unaires[Nestorov et al. 1997℄;
{ unformalismedes hema exible : deniapriori.Ilpermetde de rirelesdonnees en orantun degrede pre isionmodulablesur lastru turede donnees. On doit a
n'imposantau une stru turationdanslesdonnees. De tellesformulationsontfait l'objet d'etude et de standardisation, notamment DTD [Bosak et al. 1998℄ et XML-S hema [Thompson et al. 2001℄ [BironetMalhotra 2000℄.
On appellera for^et une olle tion de do uments XML de m^eme nature sto kes en-semble.
2.5.1 Guide de donnees
personne
id
(integer)
nom prenom adresse
rue
ville
personne
(complex)
(string)
(string)
(string)
(string)
(complex)
personne
nom
prenom
adresse
rue
ville
(complex)
(complex)
age
(integer)
(string)
(string)
(string)
(string)
CP
(integer)
nom
(string)
(integer)
id
personne
nom
prenom
adresse
rue
ville
(complex)
(complex)
age
(integer)
(string)
(string)
(string)
CP
nom
(integer)
(string)
(string) | (complex)
(complex)
(c)
(d)
(b)
(a)
Fig. 2.3 { S hema ommun
Dans un SGBD relationnel ou objet, le s hema est onsidere omme a priori. Les tables sont denies avant d'inserer les donnees. Les donnees semi-stru turees presentees sous formede do uments XML peuvent repondre a un ertain format predetermine, no-tamment an de denir le type de ertains elements ( ha^ne de ara teres, entier, type ottant,type omplexe).LaDTDetsonevolutionversXML-S hemasontdesformats per-mettantdespe ierlestypes. Que esoituns hemadeni auniveauSGBD,une DTDou un XML-S hema,m^emesilesdenitions de typespeuvent^etre tresl^a hes(XML-S hema permet des des riptions optionnelles ou alternatives), la stru ture de donnees garde une ertaine rigidite quand a l'insertion de nouvelles donnees dont la stru ture ne s'adapte pas a elle denie pour son type. C'est pour ette raison que [Goldmanet Widom 1997℄ a deni un guide de donnees (dataguide) base sur le prin ipe de < fa torisation > des hemins ommuns a posteriori. Un guide de donnees est un s hema englobant tous les do uments on ernes. Ainsidans la gure 2.3, les donnees (a), (b), et ( ) ont pour guide de donnees (d).
Le dataguide est plus exible, mais ne permet pas d'obtenir une denition pre ise des types. Ainsi, si l'on re upere la valeur 4242, omment peut-on deduire si le type est une ha^ne,un nombreentierouun ottant?(pardefaut,onprendraune ha^ne), deplus des problemes omplexes de resolutionde y les peuvent survenir. La mise a jour d'une telle stru ture est o^uteuse a maintenir.
12
18
14
15
16
17
13
nom
plat
telephone
proprietaire
bar
restaurant
divertissement
Fig. 2.4 { Guide de donnees du do ument 2.1
ments par union des arbres de stru ture de rivant tous les heminements possibles dans la olle tion etpar typage de donnees en texte.
2.5.2 DTD
UnDTD(Do umentTypeDenition)permetauxutilisateursdedenirleurspropres balisages,attributs etentitespour des do uments de types SGMLou XML.
Un do umentDTDest signalepar unede larationde typededo ument (Do ument TypeDe laration)parl'intermediairede la ha^ne<!DOCTYPE. Ilpeut^etredeni expli ite-mentouen referen evers uneentiteexterne. UnDTDdenit une stru turede do ument par l'intermediaire d'un ensemble de de larations de balisage. Une de laration de bali-sagepeut^etre unede larationde typed'element,une de larationde listed'attributs,une de laration d'entite ouune de laration de notation.
De laration de type d'element Ellese signalepar la ha^ne <!ELEMENT. On de lare ensuitelenomdel'elementsuividesspe i ationsdeson ontenu.Sil'elementestde type ha^ne de ara teres, on utilisera la ha^ne #PCDATA. Dans le as ou l'element omporte des sous-elements, eux- i sont spe ies. Il est ensuite possible de denirle nombre d'o - urren es dessous-elementsave lessymboles :'+',lesous-elementest represente unefois au moins; '*', le sous-element est represente zero ou plusieurs fois; '?', le sous-element est optionnel;sans symbole, le sous-element est represente exa tementune fois.
De laration de liste d'attributs On introduit une de laration d'attributs par la ha^ne <!ATTLISTetlenom de l'element on erne. Vientensuitel'ensemble des attributs de etelement,suivi ha und'unedenitiondetypeetd'un ritereexistentiel(#REQUIRED sil'attributest obligatoire,#FIXEDsi elui- iestxe,et#IMPLIED si l'attributn'a pas de valeur par defaut etpeut ^etre de lareou non).
De laration d'entite La ha^ne <!ENTITY permet de denir une onstante. La valeur de l'entitepeut ensuite^etre appelee en pre edantle nom de l'entitepar lesymbole'&'
<!DOCTYPE bibliotheque [
<!ENTITY nom_bibliotheque "Bibliotheque Universitaire de Versailles"> <!ENTITY responsable "John Doeuf">
<!ENTITY email "John.Doeufbib.uvsq.fr"> <!ELEMENT bibliographie (livre *)> <!ELEMENT livre (date+, titre, auteur*)> <!ATTLIST livre referen e CDATA #REQUIRED
ategorie CDATA #REQUIRED pages CDATA #IMPLIED> <!ELEMENT date (#PCDATA)>
<!ELEMENT titre (#PCDATA)>
<!ELEMENT auteur (prenom, nom, adresse?)> <!ATTLIST auteur pays CDATA #IMPLIED> <!ELEMENT prenom (#PCDATA)>
<!ELEMENT nom (#PCDATA)> <!ELEMENT adresse (#PCDATA)> ℄>
Do . 2.3: exemple de DTD
Dans l'exemple 2.3, le typede do ument de bibliotheque, se denit ommesuit : Lara inedel'arbreetl'elementbibliographie qui omptezero ouplusieurslivres.Un livre est onstitue d'au moins une date, d'exa tement un titre et de zero ou plusieurs auteurs. Unlivre omporteegalementlesattributs obligatoiresreferen eet ategorie ainsi que l'attribut optionnel pages. Les elements date, titre, nom et prenom sont des elementssimplesde type ha^nededonnees.Unauteuraunnometunprenomobligatoire et une adresse optionnelle. L'element auteur a aussi un attribut optionnel pays. Enn trois entites nom bibliotheque, responsable, et email sont denies et leurs valeurs sontrespe tivement"Bibliotheque Universitaire de Versailles","John Doeuf"et "John.Doeufbib.uvsq.fr".
2.5.3 XML-S hema
des basesde donnees. Il devient alorspossiblede denir des s hemasde bases de donnees omme dans un modeleobjet.
Leselementsetlesattributsglobauxsont reespardesde larationsquiapparaissent dire temental'interieurde l'elements hema. Unefoisde lare,un elementouun attribut global peut ^etre referen e dans une ou plusieurs de larations en utilisant l'attribut ref. Leselementssontde laresenutilisantlemot- lef elementetlesattributssontde laresen utilisantlemot- lef attribute. Destypessimples,telsquestring,token,int, de imal, time,date,ID,IDREF,et .sontpredenisdansXML-S hema.Denouveauxtypessimples peuvent ^etre denis par derivation des types simplesdeja existants.
Les nouveaux types omplexes sont rees en utilisant l'element omplexType om-pose, dans la plupart des as, d'une serie de de larations d'elements et d'attributs et de referen es d'elements. Ces de larations sont rassemblees dans des groupes modeles per-mettant de denir, un modelede ontenu onstitue d'une sequen e sequen e (ensemble ordonne), d'un hoix ex lusif hoi e oud'un ensemble non-ordonneall.
Le nombre minimum (resp. maximum) de fois qu'un element peut appara^tre est determine dans sa de laration par la valeur de l'attribut minO urs (resp. maxO urs). Cettevaleurpeut^etreunentierpositif ommeparexemple42,ouen orelemotunbounded qui signie qu'il n'y a pas de valeur limite. La valeur par defaut dans les deux as (minO urs etmaxO urs) est 1.
Le do ument 2.4 est le XML-S hema du do ument XML presente dans le do u-ment2.2.
Ennuns hemapermetdetyperunerequ^eteetdeveriersavaliditeavantexe ution. Le typage d'une requ^ete se fait en deduisant a l'aide du s hema, les dierents domaines de valeurs utilisees. Par exemple, sur le s hema 2.4, on formule une requ^ete her hant les noms de restaurants inferieurs a l'entier 5 (restaurant:nom < 5). L'analyseur de la requ^ete, va typer a l'aide du s hema, l'element restaurant etverier que l'element nom est bien un sous-element possible de restaurant, e qui est vrai.Ensuite, l'analyseurva analyser l'element nom et voir que son domaine de valeur orrespond a l'ensemble des ha^nes de ara tere. Or on le ompare a un entier (< 5). L'analyseur va don pouvoir deduireque la requ^ete est in orre te avantm^eme d'avoirentame son exe ution.
2.6 Langage de requ^ete pour donnees semi-stru turees
L'interrogation des donnees semi-stru turees ne essite la denition d'un nouveau langagede requ^ete. Ce qui est attendu d'un tellangagede requ^ete [Abiteboul1997℄ :