L T I Laboratoire de Téléinformatique 2 Projet de semestre Parseur XML basé sur la DTD : Buts –Utiliser la grammaire définissant un type de fichiers XML.

Slides:



Advertisements
Présentations similaires
Données structurées et XML
Advertisements

Le struts validator – framework de validation
1 IXERP consulting. L archivage consiste à extraire de la base de données opérationnelle les informations qu' il n est plus nécessaire de conserver «
DTD Sylvain Salvati
Introduction Pour concrétiser l’enseignement assisté par ordinateur
XML schema Objectifs Valider un doc. XML pour des contraintes syntaxiques Documenter un type de documents XML caractérisé par des contraintes Encadrer.
(Classes prédéfinies – API Java)
Données structurées et XML
Les technologies XML Cours 3 : Les APIS XML Janvier Version 1.0 -
Nicolas Singer Maître de conférence, université Champollion
MIKHAYLOVA Vera Exposé Java principe de fonctionnement Lundi 17 mai 2004 DEUG 1ère année Science du langage Paris III.
Le web classeur Guide à l'usage des élèves. un support de classement et de conservation de vos informations en matière dorientation un outil permettant.
TP 3-4 BD21.
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Saisie dynamique de XML
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Structures de données linéaires
XML-Family Web Services Description Language W.S.D.L.
Autodesk® Revit® Building 9
Middleware : XML-DBMS Permet de faire office d’interface entre des données XML et des bases de données relationnelles (insertion et récupération de données)
Algorithmique et Programmation
Introduction à DOM Maroua Bouzid
Methode de Tri efficace
Le Travail Collaboratif ...
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Introduction à la structuration des documents: les techniques M2: Gestion des connaissances.
Faculté I&C, Claude Petitpierre, André Maurer 1 JavaCC Java compilers compiler (version générant du Javascript)
XML: Syntaxe XML, DTD et Schémas
Les fichiers indexés (Les B-arbres)
STAF 2X XSL/FO Glaus & Ruckstuhl Mars © Glaus & Ruckstuhl TECFA Programme du 18 et 19 mars Revision XML Introduction à XSL/FO (intérêts et.
Introduction au paradigme orienté-objet (suite)
Implémentation dun parseur validant pour YML/DML Travail de Master Présentation finale Catherine Pugin 21 avril 2005
Projet de Master première année 2007 / 2008
1 Le fichier séquentiel Suite finie déléments dun même type Exemples : – fichier des livres dune bibliothèque – enregistrements sur un magnétophone – ensemble.
Projet de semestre Responsable :Prof. Claude Petitpierre Superviseur :Duy Vo Duc.
Outil de gestion des cartes grises
XML-schema. Pourquoi XML-schema Les DTD : Pas de typage, peu de contraintes sur les contenus nombre d'apparitions d'un élément à choisir entre 0 et 1.
1 Alain Casali Christian Ernst Extraction de Règles de Corrélation Décisionnelles 29 Janvier 2009.
Programmation Web : Introduction à XML
Programmation Web : Schémas XSD Jérôme CUTRONA 19:27:07 Programmation Web
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
5ième Classe (Mercredi, 19 octobre) Prog CSI2572.
Les classes présenté par: RAHMOUNE RIME / ZEKRI SELMA.
MJ. Blin et M. CsernelPoleInfo31 XML et ses environnements Documents XML bien formés Prologue Arbre d'éléments Attributs Commentaires Entités internes.
Module : Langage XML (21h)
Modélisation des documents: DTD et Schéma
1. Introduction 2. DTD 3. Schémas
Document Type Definition (DTD) Plan 2.1Introduction 2.2Déclaration de Document Type 2.3Déclaration d’élément Type 2.3.1Séquences, Choix, indicateurs d’Occurrence.
eXtensible Markup Language. Généralités sur le XML.
1 Complément JAVA 1 - Eclipse. 2 Plan Notion d'environnement de développement Interface d'Eclipse Utiliser Eclipse Éditeur de code Fonctionnalité supplémentaire.
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
La gestion des bases de données
Introduction à la Programmation Orientée Objet
8PRO107 Éléments de programmation Les tableaux. Étude de cas 1 Description du problème : Lire une liste d’entiers et l’afficher d’abord dans le même ordre.
Présentation de Qt Iris 1
31/05/2007Projet Master 11 Présentation ludique de la recherche opérationnelle à la fête de la science Année universitaire 2006/2007 Sylvain FIX Julien.
XML : un métalangage pour la description de documents structurés XML a été défini par le consortium W3 en fonction de 2 objectifs: Compenser les limitations.
LES TABLEAUX Définition: Création d’un tableau:
Bus de terrain Can Open.
Introduction Module 1.
Vous présente en quelques réalisations un réel savoir-faire, le fruit de longues années d’expériences, aujourd’hui à votre service. Toutes les fonctionnalités.
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
Raison d'être de la structure de fichiers : Les premiers travaux : Début des années 1960 : En 1963 : Près de 10 ans plus tard... (à peu près 1973) : Durant.
Dreamweaver 2 Plan 1.Calques 2.CSS 3.Modèles 4.Comportements 5.Formulaires 6.Mise en ligne 1 Timothée Devaux Myriam Roudy Dreamweaver 2 Printemps 2008.
XML les données réellement portables La nécessité d’un format de données universel et lisible se faisait sentir depuis longtemps, aujourd’hui avec le développement.
DEMARCHE DE FORMALISATION DES PROCESSUS DE COORDINATION TECHNIQUE DU SIE 27/10/2015 Anne BADJECK François HISSEL Laurent COUDERCY.
Installation du PGI – CEGID
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
PROJET DE SESSION DANS LE CADRE DU COURS: SCG Réalisation d’applications en SIG PRÉSENTÉ PAR: Marie-Andrée Levesque 18 AVRIL 2006.
Transcription de la présentation:

L T I Laboratoire de Téléinformatique 2 Projet de semestre Parseur XML basé sur la DTD : Buts –Utiliser la grammaire définissant un type de fichiers XML pour créer un parseur dédié à leur traitement –Utiliser JavaCC dans une application pratique –Simplifier l’accès aux fichiers XML par rapport aux méthodes traditionnelles (DOM, SAX) –Choisir une représentation des données XML

L T I Laboratoire de Téléinformatique 3 Projet de semestre Méthodologie 1.Lecture de la DTD source 2.Génération de classes Java correspondant aux éléments de la DTD 3.Création d’une grammaire basée sur la DTD pour le parseur XML 4.Améliorations de l’accessibilité des éléments XML

L T I Laboratoire de Téléinformatique 4 Projet de semestre Lecture de la DTD source –Création d’une grammaire JavaCC d’après la description BNF du W3C –Projet Exolab de A. Totok ( Parseur de recherche et remplacement des entités paramétrées Parseur principal, classique, de représentation de la DTD sous forme hiérarchique en mémoire

L T I Laboratoire de Téléinformatique 5 Projet de semestre Lecture de la DTD source –Problème : Recherche de l’élément racine de la DTD Pas de déclaration <!DOCTYPE comme dans le cas de DTD locales dans le cas de DTD externes Ordre des déclarations d’éléments libre –Solution : Utiliser un graphe de dépendances Racine = unique élément non référencé

L T I Laboratoire de Téléinformatique 6 Projet de semestre Génération de classes Java –Représentation des éléments XML en mémoire Hiérarchie identique à celle du fichier XML Accès facile, idéalement avec des méthodes get[Élément], set[Élément] Cas des éléments à répétition : (E)* ou (E)+ –Gestion dans une liste, un vecteur ou une autre structure de données conservant l’ordre –Ajout / Suppression / Modification autorisées

L T I Laboratoire de Téléinformatique 7 Projet de semestre Création de classes Java –Problèmes potentiels avec les méthodes get[Élément], set[Élément] Nom de l’élément = « Class »  getClass() –Méthode réservée du langage Java Stockage du contenu PCDATA d’un élément –Utilisation de getText() et setText() –Problème si élément « Text »  getText() et setText() déjà définis

L T I Laboratoire de Téléinformatique 8 Projet de semestre Création de classes Java –Solution : Utilisation d’une liste de mots réservés Par Java Par le projet (cas du contenu PCDATA) –Implication : Se souvenir des décisions lors de la génération du parseur / la création d’un fichier XML basé sur un contenu mémoire

L T I Laboratoire de Téléinformatique 9 Projet de semestre Création de classes Java –Exemple de problème : –Décision : class  _class _class  __class

L T I Laboratoire de Téléinformatique 10 Projet de semestre Création de classes Java –Si l’on ne se rappelle pas des décisions : Le parseur a le fichier XML suivant : Risque de conflit dans le second cas : –_class  _class –class  __class Inversion logique des attributs !

L T I Laboratoire de Téléinformatique 11 Projet de semestre Création de classes Java –Stockage des éléments à choix, multiples : (Voiture | Avion | Fusée)* Une liste par type d’éléments  3 listes –Avantage : Facile de faire une énumération car on connaît le type des éléments –Inconvénient : On perd l’ordre d’entrelacement des éléments

L T I Laboratoire de Téléinformatique 12 Projet de semestre Création de classes Java –Stockage des éléments à choix, multiples : (Voiture | Avion | Fusée)* Une liste commune –Avantage : On garde l’ordre, tant à la lecture qu’à la réécriture d’un fichier XML –Inconvénient : La liste contient différents types d’éléments, difficulté à la parcourir, utilité réelle ?

L T I Laboratoire de Téléinformatique 13 Projet de semestre Création de la grammaire XML –D’après la définition du W3C, en se restreignant à ce qui est nécessaire –Inconsistances dans la grammaire

L T I Laboratoire de Téléinformatique 14 Projet de semestre Techniques à utiliser –Réflexion pour le stockage des valeurs des éléments dans le parseur –Génération de commentaires dans les fichiers générés  javadoc utilisable pour créer une documentation automatique –Création d’un programme d’exemple d’accès aux fichiers XML pour l’utilisation des classes générées

L T I Laboratoire de Téléinformatique 15 Projet de semestre Points importants –Privilégier un projet comportant des limitations par rapport aux possibilités des DTD mais utilisable, à un projet supportant tous les détails mais pas utilisable car pas terminé –Possibilité d’enregistrer les modifications dans un nouveau fichier XML –Support des contraintes (valeurs des attributs)