Bases de Données II, Mons



Documents pareils
Module Title: French 4

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

BD et XML : Exercices

Étude des formes de pratiques de la gymnastique sportive enseignées en EPS à l école primaire

Gestion Électronique de Documents et XML. Master 2 TSM

HELLO KIDS. Learn English with Charlie, Lily, Max & Fiona GUIDE PÉDAGOGIQUE

Bacula R - The Network Backup Solution

NFE204 Bases de données avancées

Peut-on perdre sa dignité?

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Production de documents avec XSLT. Production de documents p.1/??

XML et Bases de données. Les bases de données XML natives.

Les ontologies pour l intégration sémantique : enjeux et défis

Bases de données documentaires et distribuées Cours NFE04

titre : CENTOS_CUPS_install&config Système : CentOs 5.7 Technologie : Cups Auteur : Charles-Alban BENEZECH

Les intermédiaires privés dans les finances royales espagnoles sous Philippe V et Ferdinand VI

Master Développement Durable et Organisations Master s degree in Sustainable Development and Organizations Dossier de candidature Application Form

Archivage pérenne : les formats conformes Version :

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Septembre Kit Intégration Commercium. Introduction. Version 1.0

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Master d Informatique Corrigé du partiel novembre 2010

1ère partie Nadine Cullot. Bases de données déductives. Bases de données déductives Introduction et Motivation

Sage Simpl-ECF 2014, La gestion simplifiée des Etats Comptables & Fiscaux

Sécurité des applications web. Daniel Boteanu

Tâche finale : communiquer avec un locuteur natif par webconference lors d activités menées en classe par petits groupes. Niveau : Cycle 3 CM1 /CM2

Content Management System. bluecube. Blue Cube CMS V4.3 par Digitalcube

Le passé composé. C'est le passé! Tout ça c'est du passé! That's the past! All that's in the past!

Qu'est-ce que XML? XML : Extensible Markup Language. Exemple de document SGML SGML

Procédure d installation de la Sauvegarde de Windows Server

Big Data et Graphes : Quelques pistes de recherche

Adobe Technical Communication Suite 5

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Rôles serveur Notion de Groupe de Travail Active Directory Utilisation des outils d administration Microsoft Windows Server 2008

<?xml version="1.0" encoding="iso " standalone="yes"?>

Votre succès notre spécialité!

GUIDE D UTILISATION DE LA PLATEFORME D ENVOI DE COURRIELS

A. Architecture du serveur Tomcat 6

L industrie pharmaceutique et la grippe aviaire

La voix en images : comment l évaluation objectivée par logiciel permet d optimiser la prise en charge vocale

Sage Simpl-ECF * Online, le 1 er logiciel d édition, de déclaration et de télé-déclaration fiscale.

PROGRAMMES FORMATION CONTINUE / EXECUTIVE EDUCATION (à temps partiel)

Formulaire de candidature pour les bourses de mobilité internationale niveau Master/ Application Form for International Master Scholarship Programme

Programmation des Applications Réparties. Parsers XML DOM et SAX

INDIVIDUALS AND LEGAL ENTITIES: If the dividends have not been paid yet, you may be eligible for the simplified procedure.

Utiliser un proxy sous linux

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Système de diffusion d information pour encourager les PME-PMI à améliorer leurs performances environnementales

INSCRIPTION MASTER / MASTER S APPLICATION

L UNIVERS INSTANTANÉ:

Polytech Montpellier IG PROJET C Réseaux sociaux : recherche de composantes fortement connexes

DOSSIER DE CANDIDATURE PEDAGOGIQUE En seconde Année du MASTER «Sciences de l Ingénieur» (SDI) Année universitaire

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Séance 1 Introduction aux bases de données

NON URGENTE TEMPORAIRE DEFINITIVE OBJET : RÉCUPÉRATION DES DONNÉES CLIENT SUR DISQUE DUR DÉFECTUEUX OU INVALIDÉ

Sommaire. Introduction. Nouveautés d Adobe InDesign CS3. Visite guidée d Adobe InDesign

Outils logiciels pour l'ingénierie documentaire

La propriété intellectuelle à Hong Kong: ce qu un canadien doit savoir!

TP 5 Les CMS, la forme et le fond Internet et Outils (IO2)

CAHIER DES CHARGES SITE WEB : Steve Mind Magicien Close-up & Mentaliste - 1 -

CRÉER UNE PAGE FACEBOOK POUR SON INSTITUTION

Faculté Polytechnique de Mons. Le processus d Extraction, Transformation et Load (ETL) dans des entrepôts de données XML

Développement Web - Object Relational Mapping and Hibernate

Design et implémentation d un logiciel de validation et de génération de configurations réseaux

Big Data et Graphes : Quelques pistes de recherche

PHOTO ROYAUME DE BELGIQUE /KINDOM OF BELGIUM /KONINKRIJK BELGIE. Données personnelles / personal data

Prolink net via internet

If the corporation is or intends to become a registered charity as defined in the Income Tax Act, a copy of these documents must be sent to:

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Utiliser une WebCam. Micro-ordinateurs, informations, idées, trucs et astuces

Comment Accéder à des Bases de Données MySQL avec Windows lorqu'elles sont sur un Serveur Linux

Port de Saint Laurent du Var - Barème des redevances Année /10

Bases de données et sites WEB Licence d informatique LI345

UNIVERSITE DE YAOUNDE II

Tout sur l autoship SOMMAIRE

Machine virtuelle Java pour Palm TX

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

F-7a-v3 1 / Bourses de mobilité / Mobility Fellowships Formulaire de demande de bourse / Fellowship Application Form

Déploiement OOo en environnement Windows Terminal Server

Installation de Smokeping sur Debian

Flex. Lire les données de manière contrôlée. Programmation Flex 4 Aurélien VANNIEUWENHUYZE

PAS DE VISA POUR AÏDA

Faculté de Génie Chaire industrielle en infrastructures de communication. La technologie XML. Wajdi Elleuch

XML : documents et outils

May Lopez PETIT COUTEAU SUISSE CRÉATIF. May Lopez Petit couteau suisse créatif

OpenPaaS Le réseau social d'entreprise

SEO & WordPress. Neil McCarthy GOODNESS CONSEIL EN WEBMARKETING & RÉFÉRENCEMENT. Bâtiment Enerpôle Technopôle Izarbel BIDART

pouchard tubes pouchard tubes C A T A L O G U E G E N E R A L Pouchard Tubes Pantin Pouchard Tubes Lyon Pouchard Tubes Nantes PANTIN

8. Cours virtuel Enjeux nordiques / Online Class Northern Issues Formulaire de demande de bourse / Fellowship Application Form

BASE DE DONNÉES XML NATIVE

Insérer des images dans Base

Document Object Model (DOM)

FICHE D INSCRIPTION ET FICHE D INFORMATION MEDICALE POUR ELEVES LYCEE FRANÇAIS INTERNATIONAL

Architectures PKI. Sébastien VARRETTE

Igor Štohl - Les meilleures parties de Garry Kasparov / Volume 1 PARTIE 13

To PIM or not to PIM? Managing your Product Catalog

Peut-on imiter le hasard?

Ligne directrice du cours menant à une qualification additionnelle. Musique instrumentale (deuxième partie)

Afin de valider votre inscription merci de bien veiller à :

Chapitre 5 : Flot maximal dans un graphe

Transcription:

Bases de Données II, Mons Jef Wijsen 29 mai 2012 Cahier fermé. Durée : 2 heures Nom et prénom Année La figure 2 montre une base de données XML pour stocker les CD possédés par mes amis. Chaque CD (balise CD) est identifié de façon unique par un identifiant (balise ID, avec valeurs bd85, bt88, dp82,...). La base de données stocke, par exemple, que mon ami Jean possède un exemplaire de dh73 et un exemplaire de rs90. La figure 1 montre le DTD. <!-- This file is called cd.dtd --> <!ELEMENT COLLECTIONS (CATALOG, FRIENDS)> <!ELEMENT CATALOG (CD*)> <!ELEMENT FRIENDS (FRIEND*)> <!ELEMENT CD (TITLE, ARTIST, COUNTRY, COMPANY, YEAR)> <!ELEMENT FRIEND (DISK*)> <!ELEMENT TITLE (#PCDATA)> <!ELEMENT ARTIST (#PCDATA)> <!ELEMENT COUNTRY (#PCDATA)> <!ELEMENT COMPANY (#PCDATA)> <!ELEMENT YEAR (#PCDATA)> <!ELEMENT DISK (#PCDATA)> <!ATTLIST CD ID CDATA #REQUIRED> <!ATTLIST FRIEND NAME CDATA #REQUIRED> <!ATTLIST DISK ID CDATA #REQUIRED> Figure 1 DTD. 1

Question 1 Écrivez une expression XPath (aussi simple que possible) qui rend chaque nœud de type texte dont la valeur est le nom d un artiste qui a sorti un album avant 1975. Pour le document de la figure 2, la réponse contient Dr.Hook..../1 Question 2 Écrivez une expression XPath (aussi simple que possible) qui rend chaque nœud de type attribute dont la valeur est le nom d un ami qui ne possède pas de CD. Pour le document de la figure 2, An ne possède pas de CD..../1 Question 3 Écrivez une expression XPath (aussi simple que possible) qui rend chaque nœud de type attribute dont la valeur est le nom d un ami qui possède un CD de Joe Cocker. Pour le document de la figure 2, Jean et Ed possèdent un CD de Joe Cocker. Question 4 Écrivez une expression XPath (aussi simple que possible) qui rend chaque nœud de type attribute dont la valeur est le nom d un ami qui possède un CD qui se trouve aussi dans la collection de Jean. Pour le document de la figure 2, Ed possède un CD que Jean possède aussi (notamment dh73). 2

<?xml version="1.0"?> <!DOCTYPE COLLECTIONS SYSTEM "cd.dtd"> <COLLECTIONS> <CATALOG> <CD ID="bd85"><TITLE>Empire Burlesque</TITLE><ARTIST>Bob Dylan</ARTIST> <COUNTRY>USA</COUNTRY><COMPANY>Columbia</COMPANY><YEAR>1985</YEAR></CD> <CD ID="bt88"><TITLE>Hide your heart</title><artist>bonnie Tyler</ARTIST> <COUNTRY>UK</COUNTRY><COMPANY>CBS Records</COMPANY><YEAR>1988</YEAR></CD> <CD ID="dp82"><TITLE>Greatest Hits</TITLE><ARTIST>Dolly Parton</ARTIST> <COUNTRY>USA</COUNTRY><COMPANY>RCA</COMPANY><YEAR>1982</YEAR></CD> <CD ID="gm90"><TITLE>Still got the blues</title><artist>gary Moore</ARTIST> <COUNTRY>UK</COUNTRY><COMPANY>Virgin records</company><year>1990</year></cd> <CD ID="er97"><TITLE>Eros</TITLE><ARTIST>Eros Ramazzotti</ARTIST> <COUNTRY>EU</COUNTRY><COMPANY>BMG</COMPANY><YEAR>1997</YEAR></CD> <CD ID="bg88"><TITLE>One night only</title><artist>bee Gees</ARTIST> <COUNTRY>UK</COUNTRY><COMPANY>Polydor</COMPANY><YEAR>1998</YEAR></CD> <CD ID="dh73"><TITLE>Sylvias Mother</TITLE><ARTIST>Dr.Hook</ARTIST> <COUNTRY>UK</COUNTRY><COMPANY>CBS</COMPANY><YEAR>1973</YEAR></CD> <CD ID="rs90"><TITLE>Maggie May</TITLE><ARTIST>Rod Stewart</ARTIST> <COUNTRY>UK</COUNTRY><COMPANY>Pickwick</COMPANY><YEAR>1990</YEAR></CD> <CD ID="jc87"><TITLE>Unchain my heart</title><artist>joe Cocker</ARTIST> <COUNTRY>USA</COUNTRY><COMPANY>EMI</COMPANY><YEAR>1987</YEAR></CD> <CD ID="jc96"><TITLE>Organic</TITLE><ARTIST>Joe Cocker</ARTIST> <COUNTRY>USA</COUNTRY><COMPANY>EMI</COMPANY><YEAR>1996</YEAR></CD> </CATALOG> <FRIENDS> <FRIEND NAME="Jean"> <DISK ID="dh73"/><DISK ID="rs90"/><DISK ID="jc87"/><DISK ID="jc96"/> </FRIEND> <FRIEND NAME="Ed"> <DISK ID="gm90"/><DISK ID="dh73"/><DISK ID="jc87"/> </FRIEND> <FRIEND NAME="Pierre"> <DISK ID="gm90"/> </FRIEND> <FRIEND NAME="An"/> </FRIENDS> </COLLECTIONS> Figure 2 Fichier XML avec des informations sur des propriétaires de CD. 3

Question 5 Écrivez un programme XSLT qui affiche, pour chacun de mes ami(e)s, les CD dans sa collection. Le résultat doit être formaté comme suit (la position des blancs et retours à la ligne n a pas d importance) : <?xml version="1.0" encoding="utf-16"?> <answer> <Jean> <OWNS>Sylvias Mother (Dr.Hook)</OWNS> <OWNS>Maggie May (Rod Stewart)</OWNS> <OWNS>Unchain my heart (Joe Cocker)</OWNS> <OWNS>Organic (Joe Cocker)</OWNS> </Jean> <Ed> <OWNS>Still got the blues (Gary Moore)</OWNS> <OWNS>Sylvias Mother (Dr.Hook)</OWNS> <OWNS>Unchain my heart (Joe Cocker)</OWNS> </Ed> <Pierre> <OWNS>Still got the blues (Gary Moore)</OWNS> </Pierre> <An></An> </answer>.../7 4

Question 6 Un graphe dirigé est encodé en utilisant le prédicat V pour les nœuds et le prédicat E pour les arêtes. Par exemple, le graphe ci-après est encodé par {V (a), V (b), V (c), V (d), V (e), V (f), V (g), E(a, b), E(b, c), E(c, a), E(d, b), E(d, e), E(e, f)}. On exige x y pour tout arête E(x, y). a b g c d e f Un nœud sans arête sortante est appelé un puit. Dans l exemple, les puits sont f et g. Écrivez un programme en datalog (i.e., datalog avec négation) qui calcule les puits. Utilisez le prédicat Puit, i.e., Puit(x) est vrai si x est un puit. Question 7 Expliquez de façon détaillée pourquoi le prédicat Puit de la question 6 ne peut pas être calculé en datalog sans négation. 5

Question 8 En faisant appel au prédicat Puit de la question 6, écrivez un programme en datalog qui donne chaque nœud x tel que (i) x n est pas un puit et (ii) il existe un chemin de x vers un puit. Pour le graphe montré ci-dessus, la réponse contient d et e. Il ne faut pas répéter les règles définissant Puit. Question 9 Pour n {2, 3, 4,...}, soit q n la requête conjonctive suivante : Donc, q n : Answer(x 1 ) E(x 1, x 2 ), E(x 2, x 3 ), E(x 3, x 4 ),..., E(x n 1, x n ), E(x n, x 1 ) q 2 : Answer(x 1 ) E(x 1, x 2 ), E(x 2, x 1 ) q 3 : Answer(x 1 ) E(x 1, x 2 ), E(x 2, x 3 ), E(x 3, x 1 ) q 4 : Answer(x 1 ) E(x 1, x 2 ), E(x 2, x 3 ), E(x 3, x 4 ), E(x 4, x 1 ). Intuitivement, q n repère tout nœud qui se trouve dans un cycle de longueur n. Pour le graphe de la question 6, q 2 et q 4 ne repèrent aucun nœud ; q 3 repère les nœuds a, b et c. Déterminez l ensemble A des paires (i, j) telle que q i q j. Évidemment, A contient les paires (2, 2), (3, 3), (4, 4),... Mais quelles sont les autres paires dans A? Détaillez votre réponse. En particulier, expliquez les homomorphismes que peuvent exister de q j vers q i. 6

7.../8

Question 10 Considérez les requêtes q 2, q 3, q 4,... de la question 9. Écrivez un programme P en datalog tel que pour toute base de données I, pour tout nœud x, Donc, en quelque sorte, Ans(x) P(I) j {2, 3, 4,...} : Ans(x) q j (I) P q 2 q 3 q 4... Notez que l expression q 2 q 3 q 4... n est pas finie et ne correspond donc pas à une union of conjunctive queries..../4 8