Title: Projet R.N.T.L. e.Dot
1Projet R.N.T.L. e.DotEntrepôts de Données
Ouverts sur la ToileRapport Final4 juillet
2005
http//www-rocq.inria.fr/verso/edot/
2Partenaires
3Objectifs
- Générique
- Outils pour construire des entrepôts de données
thématiques en découvrant des données sur le Web
et en enrichissant des systèmes dinformation
existants par intégration automatique de ces
données - Particulier
- Développer un entrepôt de données XML intégrant
de manière automatique des informations liées au
risque de contamination des aliments, quelles
soient issues du Web, privées ou obtenues sous
licence
4Choix faits dans e.dot
approche générique fondée sur des technologies
standard du Web
- XML
- Format déchange standard de données
- Mariage entre documents et bases de données
- Services Web
- Standard pour le développement modulaire
dapplications distribuées (SOAP) - Description standardisée des entrées/sorties
(WSDL) - Web sémantique
- Ontologie description explicite et déclarative
de la sémantique dun domaine dapplication
5Organisation du projet
1 2 3 4
- Tous les partenaires ont participé à tous les
sous-projets - Sous projet 1 spécification dun entrepôt de
données pour le risque de contamination des
aliments - Sous projet 2 acquisition de données du Web
- Sous projet 3 organisation et structuration de
lentrepôt - Sous projet 4 validation auprès des
utilisateurs - Durée effective 2 ans
- (notification Juillet-Septembre 2003)
6Vue fonctionnelle globale
7Architecture générale de.Dot
8Lot 2 (intermédiaire)
- Chaîne de traitement dacquisition de données du
web, guidée par lontologie du domaine - crawling du web
- recherche de documents potentiellement pertinents
- contenant des mots-clés de lontologie
- crawler généraliste de Xyleme, Google
- filtrage des documents récupérés
- ne garder que ceux contenant des informations
utiles - données tabulaires
- Thesus, EdotFilter, PDFFilter
- extraction des données et transformation en XML
- Format Xtab
- Any2Xtab
9Lot 2 (final)
- Achèvement et validation des modules en cours
- Any2Xtab, PDFFilter
- Extensions
- Mise en oeuvre dune approche de crawling
spécialisé WebCrawler - Mise en œuvre dune chaîne de traitement complète
dacquisition de données à partir de documents
pdf package AQWEB - Conversion de documents dans un format XML cible
Content Migration Platform (CMP)
10WebCrawler
- Approche inspirée de lIntelligent Crawling
- apprentissage automatique de lestimation de la
pertinence dune page web à partir des
statistiques récoltées sur le graphe
dexploration - pertinence effective vérifiée a posteriori après
le rapatriement des pages candidates choisies - évaluation sur le contenu de la page dune
requête WeQuel (langage de requêtes développé
pour EdotFilter) - mise à jour des statistiques et de la fonction
calculant lestimation de la pertinence dune
page candidate en fonction de la pertinence de
ses voisins déjà rapatriés (pères ou frères)
Travail réalisé par D. Mezaour dans le cadre de
sa thèse financée par une allocation de recherche
du Ministère.
11WebCrawler validation
- Expérimentation sur plusieurs thématiques
- e.Dot, cours dinformatique
- Meilleurs résultats quun crawler suivant une
stratégie systématique - profondeur dabord ou largeur dabord
- Meilleurs résultats que Google
- A confirmé la rareté des documents utiles pour
e.dot sous format HTML
12Package AQWEB
- Crawl et filtrage de documents PDF
- Extraction semi-automatique de tableaux
- GUI pour linteraction avec les experts
- Intégration de XTab2SML
- Stockage des documents PDF et des tableaux (XTab
et SML) Ã laide de Xyleme Server
Démonstration de AQWEB
13Content Migration Platform
- Environnement de transformation de documents Word
sous un format XML cible - générique et déclaratif
- à base de règles
- Fichier de règles (décrit en XML) spécifie le
format cible - développé par Xyleme
14Schéma fonctionnel de lapproche
15Exemple
16Lot3 organisation et structuration de lentrepôt
- Entrepôt de travail
- espace de travail persistant et partagé par tous
les services dacquisition et denrichissement de
données - stockage des données en XML
- Entrepôt final
- données de lentrepôt de travail validées et
enrichies sémantiquement - format SML
- interrogeables via MIEL
17Construction de lentrepôt de travail
- Rapport intermédiaire
- spécification des différents composants
- à laide du système ACWare
- logiciel daide à la conception dentrepôts de
données XML - développé en Java, génère des exécutables
ActiveXML - Depuis Juin 2004
- réalisation et intégration de services web pour
la construction et lexploitation de lentrepôt
Exposés après la pause
18Construction de lentrepôt final
- Rapport intermédiaire
- première version du module XTab2SML de
transformation de tableaux dans le format SML - tableaux simples et en français
- Depuis Juin 2004
- améliorations de XTab2SML
- traitement de tableaux plus complexes et en
anglais - étude expérimentale
- publications (EGC, 2 workshops en anglais)
19XTab2SML enrichissement sémantique
? Tables in Html, Pdf or Excel
Any2XTab
Ontology
lttablegtlttitlegt lttitle-colgtItemslt/title-colgt
lttitle-colgtpH valueslt/title-colgt lt/titlegt
ltnb-colgt2lt/nb-colgt ltcontentgtltrowgt ltcellgtCultivate
d mushroom lt/cellgtltcellgt5.00 lt/cellgt lt/rowgt lt/cont
entgt lt/tablegt
XTab2SML
lttablegt lttitlegt lttitle-colgtFood
lt/title-colgtlttitle-colgtPH lt/title-colgtlt/titlegt
ltnb-colgt2lt/nb-colgt ltcontentgt ltRelgt
ltfoodphgt ltfood gtmushroom lt/food gt
ltphgt5.00lt/phgt lt/foodphgt lt/Relgt
lt/contentgt lt/tablegt
201- Extraction of the attributes
- Finding the attributes corresponding to a column
C -
- based on the values in the cells of the column
- a candidate a term subsuming most of the values
- values(C)milk, apples, pie, meat, Listeria
- ? matching-attribute(C) food
- Based on the title of the column
- title(C) "Ph values" ? matching-attribute(C)
ph. - Else creation of a generic attribute
attribute -
212- Identification of the relations
TabSch (c1,food) , (c2, ph)
Table 1 Growth of Listeria in food products
- Perfect matching with a relation ? foodph
- Partial matching with a relation
- Missing attribute
- foodFactorMicroorganism(food, Factor,
Microorganism) - Else creation of a generic relation relation
223- Identification of the values
- Mapping of the values with the terms of the
taxonomy -
- equality test equality between sets of words
- indMap"equal"
- inclusion test inclusion between sets of words
- indMap"inclusion"
- intersection intersection between sets of
words - indMap"intersection"
Bag of lemmatized words after deleting empty words
23Example of semantic enrichment
foodCalorie(food,calorie) For 100 g ? number
of calories
lttablegtlttitlegt lttitle-colgtArticlelt/title-colgtlttitl
e-colgtItemlt/title-colgtlttitle-colgtCalorielt/title-co
lgt lt/titlegt ltnb-colgt3lt/nb-colgt ltcontentgt ltRel
additionalAttr"yes"gt ltfoodCaloriegt ltfood
indMap"inclusion" indCat food"
indTrans"none" indProc"yes"
gt ltontoValgtmushroom lt/ontoValgt ltorigineValgtCulti
vated mushroomlt/origineValgt lt/foodgt
ltcalorie indMap "notFound" indCat "notFound"
indTrans"none" indProc"no" gt ltontoVal/gtltorigin
eValgt230kCallt/origineValgt lt/caloriegt
ltattribute indOnto "notFound" indCat "notFound"
indTrans"none" indProc"no" indMatch
"attribute" gt ltontoVal/gtltorigineValgt400glt/origineV
algtlt/attributegt lt/foodCaloriegt lt/Relgtlt/contentgt
lt/tablegt
24First experiment
- Evaluation of the identification of the relations
- 50 XTab documents (real data)
25Interrogation de lentrepôt final
Intégré dans la démonstration de AQWEB
26Module générique de création et dinterrogation
de vues relationnelles sur des documents XML
ltLAB_DATAgt ltANALYSIS_RECORD idNum"2003/01" gt
ltCONDITIONSgt ltTEMPERATURE value"25
C" /gt ltHUMIDITY value"80" /gt
ltATMOSPHERIC_PRESSURE value"1040" /gt
lt/CONDITIONSgt ltTARGETgt ltRECEIPT
idNum"01" name"Spaghetti Bolognese"gt
ltFOODCOMPONENTgt ltAPPELLATIONgtSpaghet
tilt/APPELLATION gt ltCATEGORYgtPastalt/CAT
EGORYgt lt/FOODCOMPONENTgt
ltFOODCOMPONENTgt ltAPPELLATIONgt
Bolognese Meat lt/APPELLATIONgt
ltCATEGORYgt Meat lt/CATEGORYgt
lt/FOODCOMPONENTgt
ltFOODCOMPONENTgt ltAPPELLATIONgt
Tomato sauce lt/APPELLATIONgt
ltCATEGORYgt Vegetables lt/CATEGORYgt
lt/FOODCOMPONENTgt
ltMICROORGANISM_TRACES name"listeria
monocytogenes"/gt ltMICROORGANISM_TRACES
name"listeria innocua"/gt lt/RECEIPTgt
... lt/TARGETgt lt/ANALYSIS_RECORDgt
ltANALYSIS_RECORD idNum"2004/08" gt ...
lt/ANALYSIS_RECORDgt
27Manual mappings between DTDs and the relational
schema
lt!ELEMENT labData ( analysisRecord )gt lt!ELEMENT
analysisRecord ( conditions, target )gt lt!ELEMENT
conditions( temperature, humidity,
atmosphericPressure )gt lt!ELEMENT temperature
(PCDATA)gt lt!ELEMENT humidity (PCDATA)gt lt!ELEMENT
atmosphericPressure (PCDATA)gt lt!ELEMENT target(
receipt )gt lt!ELEMENT receipt( foodComponent,
microOrganismTraces )gt lt!ELEMENT foodComponent(
appellation, category )gt lt!ELEMENT appellation
(PCDATA)gt lt!ELEMENT category (PCDATA)gt lt!ELEME
NT microOrganismTraces (PCDATA)gt lt!ATTLIST
microOrganismTraces name CDATA REQUIREDgt lt!ATTLIS
T temperature value CDATA REQUIREDgt lt!ATTLIST
humidity value CDATA REQUIREDgt lt!ATTLIST
atmosphericPressure value CDATA
REQUIREDgt lt!ATTLIST receipt idNum CDATA
REQUIRED name
CDATA REQUIREDgt
Mapping of the relation FoodproductMicroorganismTe
mperature on the DTDs tree
28Automatic wrapping of the relational view in
Xquery
The view XV( FoodMicroorganismTemperature,
lab-data2004.dtd )
29Relational querying XML data
- The induced relational schema
- the set of relations that are mapped to DTDs
- relational point of view on the XML data
- presented to the user through a GUI
30Interrogation de sources externes via MIEL
- par mise en correspondance entre ontologies
- relier les termes dune nouvelle ontologie
(Combase) avec les termes de lontologie du
projet - mappings déquivalence ou de spécialisation
- combinaison de techniques syntaxiques et
sémantiques (WordNet) - prototype OntoMap
31OntoMap évaluation
32Planning
- Introduction (45mn) LRI
- Démo AQWEB-MIEL (30mn) INA-PG
- Pause (15mn)
- Architecture entrepôt (30mn) INRIA
- Intégration AXML-Xyleme (20mn) Xyleme
- Conclusion (20mn) INRIA
- Discussion (30mn)
- Fin de la réunion 17h30