Correction1ExamenXML20081A.doc

Corrige Examen XML 2008. documents autorisés ? Durée : 2h. Exercice 1 : XML
et DTD 5 points. On considère la DTD Univ.dtd suivante décrivant une base de ...

Part of the document


ESIAL

Corrige Examen XML 2008

documents autorisés - Durée : 2h



Exercice 1 : XML et DTD 5 points

On considère la DTD Univ.dtd suivante décrivant une base de données pour
la gestion d'une université :














Question 1. Indiquez les raisons pour lesquelles le document ci-dessous
n'est pas valide, et corrigez les
erreurs.




Toto
bases de données


Titi
langage


LI345
bases de données et sites Web


LI349
compilation

Amphi B1
Amphi B2



1 point


Réponse : pb de casse pour universite, mettre tt en minuscule.


Manque la balise fermante de code.

Salle est un élément vide,et ne contient donc pas l'élément numéro.

L'ordre des éléments (mettre par paquet (enseignant, cours, salle) n'est
pas respecté.

Question 2. Complétez la DTD Univ.dtd pour prendre en compte les
informations suivantes (écrire seulement la ou les lignes modifiées ou
ajoutées) :














a) Un enseignant enseigne plusieurs matières

|1 point |
| |Réponse : | |
| | | |
| | | |
| | | |
| |matiere | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |


b) Un enseignant enseigne plusieurs cours
|1 point |
| | | |
| | | |
| | | |
| |matiere | | | |
| | | | |
| | | |
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |



c) Un cours a lieu dans une salle

1 point

















d) On veut pouvoir gérer les étudiants dans la base. Un étudiant a un
nom, un numéro et suit des cours.


1 point



























































Exercice 2 : Xpath 3 points

On considère la DTD dtdVente.dtd suivante décrivant une base de données
pour la gestion de ventes de produits.:


























(Requêtes Xpath)

Exprimez en Xpath les requêtes suivantes, portant sur un document
conforme à la DTD dtdVente.dtd. Si
la requête demandée n'est pas exprimable en Xpath, justifiez.


1) L'identifiant des clients ayant acheté le produit P1


1 point


//commande[ligne/@prod='P1']/@client


2) L'adresse des clients ayant acheté le produit P1


1 point


//client[//commande[ligne/@prod='P1']/@client=@ident]/adresse


3) Le nombre de commandes passées par le client C1


1 point



count(//commande[@client='C1'])
Exercice 3 : SCHEMA (4points) 1 point par question

Précisez si les éléments de Schéma et les types suivant sont en accord avec
le document journal.xml (en annexe). Justifiez et complétez/corrigez le cas
échéant.

a)









FAUX : le maxOccurs de dossier ne doit pas être à 1

b)








FAUX : Ici, la valeur de max exclusive doit être 4, et non pas 10

c )








VRAI : tout est ok.

d)








< xsd:attribute name="auteur" type="xsd:string"/>



FAUX : préciser le minOccurs à 0 pour le résumé.






Exercice 4 : XSLT (8points)
Soit le fichier XML suivant représentant un carnet d'adresses :




Jean
Chenier



Marie
Pariseau



Jean
Poirier




1) Donner pour chaque programme XSLT qui suit le résultat de sa
transformation appliqué au fichier carnet d'adresse :
a/ 1 point