Examen XML

ESIAL 3A. NOM : PRENOM : 13 Janvier 2007. Examen XML. Durée : 2 heures.
Documents autorisés. La première page est à rendre à la fin de l'épreuve.

Part of the document

NOM :
PRENOM : 13 Janvier 2007
Examen XML Durée : 2 heures
Documents autorisés
La première page est à rendre à la fin de l'épreuve.
Exercice 1: Syntaxe XML ( 2 points) L'auteur du document XML suivant a cru pouvoir rédiger son document en se
passant d'un éditeur XML. Aidez
le à corriger les erreurs qu'il contient pour qu'il puisse être bien formé. Répondez sur la feuille : entourez chaque erreur par un numéro et annotez-
la. Mes mémoires

Gump
Forrest


Ma maman disait
toujours : " la vie c'est comme une
boite de chocolat, on ne sait jamais
sur quoi on va tomber".
0; i++) {
if ( a[b[i]]>5 ) break;
}
}
]]>


La suite, je ne m'en souviens plus...

Mon document ne parse pas
fin du document
Exercice 2: Syntaxe et Construction de DTD (4 points) Pour chacun des documents 1,2,et 3, indiquez s'il est valide ou pas. Quand
le document n'est pas valide, indiquez la nature de l'erreur (ou des
erreurs). Les documents sont indépendants les uns des autres.
1.


]> du texte
2.

]> ljs sldjf sljd
mmmqmm qqq mmm qq 3.


]> Et voil` 4.
Écrivez une DTD pour des documents XML de type examen. Un examen contient
un code de cours, un titre et une date qui contient uniquement le mois et
l'année. Ces éléments sont suivis par une liste de questions. Un examen a
entre 5 et 6 questions et chaque question a une ou plusieurs parties.
Une partie peut être vide ou bien avoir du texte ou bien encore avoir du
texte mélangé avec d'autres parties.
Le code ainsi que l'année doivent être des chaînes de caractères valides
(ie caractères autorisés par xml), le mois
est une chaine parmi la liste suivantes : ( jan , fev, mar, avr, mai, ju,
jui, aou, sep, oct, nov, dec). Exemple d'instance :
Outils et documents XML






ma partie


une autre partie
encore du texte une autre partie autre partie


Ou bien
Outils et documents XML





ma partie




Exercice 3: Des DTD vers les schémas (4 points) Objectif: Les schémas permettent de décrire les modèles de données de façon
plus précise. Transposez la DTD Livres.dtd en un schéma XSD avec les caractéristiques
suivantes : .Une année est une chaîne de 4 caractères compris dans l'espace 0...9
.Un livre contient exactement un titre, un prix, une année et au moins
un auteur. De plus, on
associe à des éléments de ce type l'attribut "edition" qui précise
si il s'agit d'un paperback
ou d'une édition reliée.
.Un prix est un type complexe, on lui associe deux attributs: "valeur"
et "monnaie" ("monnaie" a
un type qui dérive de "string", son champs de valeur se limite aux
chaînes "USD" et "EUR")
Livres.dtd











Exercice 4: Chemins XPath (3 points)
Voici un extrait du fichier qui contient la liste des gagnants du booker
prize (liste de livres avec leur auteur et l'année de l'obtention du prix). [pic] Trouvez les expressions XPath qui retournent les informations suivantes : a) l'auteur du sixième livre dans la liste
b) le titre du livre qui a gagné en 2000
c) le nom de l'auteur du livre intitulé "Possession"
d) le titre des livres dont "J M Coetzee" est l'auteur
e) le nom de tous les auteurs dont le livre a gagné depuis 1995
f) le nombre total de prix décernés
Exercice 5 : Programmation XSLT (7 points)
1.
Dans cet exercice on travaille sur un document XML : Cours.xml qui contient
des informations sur des cours en informatique comme indiqué en annexe.
Donnez le résultat de la transformation du document suivant appliqué à
Cours.xml -------------------------------------------------


Salle:
Modules :
Inscrits (note):


()

, 2.
Modifiez le programme afin qu'il affiche d'une part, uniquement les
numéros des étudiants qui possèdent une note, et d'autre part, les
enseignants pour chaque module (entre parenthèses après le nom du module)
; 3.
Proposer un fichier xsl qui permet d'obtenir un document xml ne contenant
que les éléments MODULE. Ajouter ensuite à chacun de ces éléments, un
élément fils OPTION contenant le texte : à venir... : (voir ci-dessous)
à venir...
Enseignant1 à venir...
Enseignant2
Enseignant3 à venir...
Enseignant2 à venir...
Enseignant4
4.
Obtenir un document xml contenant les mêmes informations que le document
initial en annexe (Cours.xml), mais qui n'a pas recours aux attributs (les
attributs deviennent des éléments). (voir ci-dessous)

Commerce Electronique
Amphi A

PHP et MySQL
Enseignant1


XML
Enseignant2
Enseignant3


I235678
16


I784451


F569834


..................
.................. Remarque :
En XSL, l'élément permet la création dynamique d'éléments et
dont la syntaxe est la suivante :
Exemple :Mon texte
produit l'élement : Mon texte.
Annexe, Cours.xml Amphi A
Enseignant1

Enseignant2
Enseignant