calendrier_present

publicité
Méta-calendrier automatique pour
portail www
Projet d’ingénierie
Mars 2002
Isabelle Kervella - Mastère ISIC
1
Plan
 Situons le contexte ...
 Compréhension du besoin
 Analyse fonctionnelle
 Solutions techniques proposées
Isabelle Kervella - Mastère ISIC
2
Situons le contexte ...
Isabelle Kervella - Mastère ISIC
3
Compréhension du besoin
• Ce projet couvre plusieurs aspects :
 l’extraction des données
 le stockage des données
 le nettoyage des données
 la représentation visuelle des données
 le paramétrage de la collecte / l’administration
Isabelle Kervella - Mastère ISIC
4
Analyse fonctionnelle
Données HTML
(source HTTP)
Wrapper
Grammaire
(fichier .nf)
(programme
Java)
Ecrite après
analyse du
code source :
Analyse de la
sémantique
Résultats
(Fichiers de sortie)
.txt
Nettoyage des données
- Détection des doublons
- Annulation des données
obsolètes
<Calendrier>
<Evenements Date= ‘’01.01.02’’>
<Evenement
Type=’’Fest-noz’’ Lieu=’’Brélès’’
Acteurs=’’Kael’’>
<\Evenement>
<\Evenements>
<\Calendrier>
Stockage des
données
Requête
Formulaire de reche rche
.xml
Parseur
(programme
Java)
n fichiers XML (format unifié)
Résultat de l a requête
Affichage des réponses
Portail Trad.org
Isabelle Kervella - Mastère ISIC
5
Solutions techniques retenues
Le format HTML est adapté :
• à la présentation de documents
• à la navigation entre les pages publiées sur le web
cependant… il n’offre pas :
• une présentation structurée des données
BILAN :
• les informations au format HTML sont difficiles à capturer par
des parsers grammaticaux ordinaires
 La solution proposée : le WRAPPING
Isabelle Kervella - Mastère ISIC
6
Solutions techniques retenues
Choix du Wrapper : Araneus
il combine les avantages :
• d’une approche déclarative, basée sur une grammaire,
• et la flexibilité d’une programmation procédurale
 cette particularité lui permet de traiter efficacement les
hétérogénéités et les exceptions.
 Il permettra de recueillir les données dans un fichier XML.
Isabelle Kervella - Mastère ISIC
7
Solutions techniques retenues
Présentation de l’outil par l’exemple
Format HTML
Format XML
Isabelle Kervella - Mastère ISIC
8
Solutions techniques retenues
Écriture de la grammaire (fichier nf)
• HTML :
<td width=4% nowrap><div align=center><b>Fest-deiz</b></div></td>
• Grammaire nf :
<td[ ]width=4%[ ]nowrap><div[ ]align=center><b> $TypeEvt { out.print("<Evenement Type=\""
+ $TypeEvt + "\""); } </b></div></td>
• XML :
<Evenement Type="Fest-deiz"
En complément, consulter le tutorial fourni avec la documentation d’Araneus !
Isabelle Kervella - Mastère ISIC
9
Solutions techniques retenues
Extraction des données : les principales commandes
calendrier.nf
Cette commande produit dans le répertoire
courant un wrapper appelé calendrier.java à
partir des spécifications décrites dans le
fichier calendrier.nf
java mwg trads\NFFiles\calendrier.nf calendrier.java
Wrapper
calendrier.java
java calendrier S trads\html\capture.htm > calendrier.xml
calendrier.xml
Cette commande wrappe le document
source (fichier stocké localement ou URL),
extrait les données et retourne le résultat
dans un fichier XML.
Isabelle Kervella - Mastère ISIC
10
Solutions techniques retenues
Calendrier
Evenements
Date
Evenement
Type
Lieu
Acteur
Evenement
Type
Lieu
Acteur
Le wrapper génère en sortie
un fichier xml, structuré, qui
ne mélange pas l’information
et la mise en forme du
document.
La séparation du contenu et
de la forme permet d’extraire
facilement les informations du
document par un simple
parsing.
Evenements
Date
Evenement
Type
Lieu
Acteur
Isabelle Kervella - Mastère ISIC
11
Solutions techniques retenues
Le parsing
Le parseur, utilisé pour réaliser le parsing, est un programme capable de
récupérer des informations contenues dans un fichier structuré, tel que
XML.
Principe :
– on donne l’appellation de la balise
– on obtient en retour la valeur comprise entre cette balise ouvrante et sa
jumelle fermante
Les APIs jouent le rôle d’interface et permettent d’accéder facilement aux
données contenues dans le document XML.
Isabelle Kervella - Mastère ISIC
12
Solutions techniques retenues
Le parsing
Isabelle Kervella - Mastère ISIC
13
Solutions techniques retenues
Le parsing : développement d’un parseur en Java
Le parseur développé utilise les APIs JAXP et DOM.
•
La première partie du programme utilise l’API JAXP (Java API for XML Parsing)
pour construire un arbre d’objets DOM.
•
La seconde partie du programme permet de parcourir, nœud par nœud, l’arbre
d’objets, afin de parser l’ensemble du fichier XML.
Isabelle Kervella - Mastère ISIC
14
Conclusion
Une solution au problème d’extraction ...
L’emploi :
• d’un wrappeur pour traduire un document non structuré dans un format XML,
• d’un parseur pour extraire l’information, constitue une solution à ce problème.
 Ce projet couvre plusieurs aspects. Seule la première partie a été abordée.
La suite du travail ...
•
Concernant le stockage des données, deux solutions simples peuvent être
envisagées :
- la base de données XML
- la base de données MySQL
Isabelle Kervella - Mastère ISIC
15
Téléchargement