XML, DTD
Transcription
XML, DTD
Université de Provence L3 Info Année 2009-2010 XML, DTD TP7 Exercice 1 : Document XML bien formé 1. Dans un fichier texte nommé biblio.xml saisir le document XML ci-dessous. Ce document décrit plusieurs types de livres. <?xml version="1.0" encoding="ISO-8859-1"?> <biblio> <livre> <!-- Élément enfant titre --> <titre>Les Misérables</titre> <auteur>Victor Hugo</auteur> <nb_tomes>3</nb_tomes> </livre> <livre> <titre>L’Assomoir</titre> <auteur>Émile Zola</auteur> </livre> <livre lang="en"> <titre>David Copperfield</titre> <auteur>Charles Dickens</auteur> <nb_tomes>3</nb_tomes> </livre> </biblio> 2. Visualisez votre document XML dans le browser. Exercice 2 : Écriture d’une DTD avec éléments Rédiger une DTD pour une bibliographie. Cette bibliographie : • contient des livres et des articles ; • les informations nécessaires pour un livre sont : – son titre général ; – les noms des auteurs ; – ses tomes et pour chaque tome, leur nombre de pages ; – des informations générales sur son édition comme par exemple le nom de l’éditeur, le lieu d’édition, le lieu d’impression, son numéro ISBN ; • les informations nécessaires pour un article sont : – son titre ; – les noms des auteurs ; 1 – ses références de publication : nom du journal, numéro des pages, année de publication et numéro du journal • on réservera aussi un champ optionnel pour un avis personnel. Tester cette DTD avec un fichier XML. Exercice 3 : Écriture d’une DTD avec attributs Modifier la DTD précédente: • en ajoutant un attribut optionnel soustitre à l’élément titre ; • en faisant de l’élément tome un élément vide et en lui ajoutant un attribut requis nb pages et un attribut optionnel soustitre ; • en faisant de l’élément nom journal un attribut de l’élément journal et en lui donnant comme valeur par défaut Feuille de Chou ; • en faisant de l’élément annee un attribut de type énuméré, prenant comme valeurs possibles 2000, 2001, 2002, ”avant 2000” et ”inconnue” et proposant comme valeur par défaut inconnue. Utiliser cette DTD pour créer un fichier XML valide. Exercice 4 : Déclarations d’entités 1. Rédiger un document XML de quelques mots, comportant une DTD externe déclarant deux éléments : • elt.racine peut contenir autant de fois que l’on veut du texte ou elt.enfant ; • elt.enfant peut contenir du texte. 2. Déclarer dans la DTD une entité paramétrique entite1 permettant d’insérer dans la DTD la chaı̂ne de caractères "#PCDATA|elt.enfant". Utiliser cette entité dans la déclaration de l’élément elt.racine. 3. Compléter la déclaration de type de document du fichier XML, dans le document XML lui-même en : • déclarant une entité entite2 permettant d’insérer "<elt.enfant>entité</elt.enfant>" et l’appeler dans un corps de texte d’elt.racine. • déclarant l’entité de caractère Eacute comme étant le caractère É (qui correspond à É). L’appeler dans un corps de texte. Exercice 5 : Affichage document XML, XSLT • Proposez un fichier XML.CSS pour un affichage élégant de votre document XML. • Définissez une transformation XSLT permettant d’afficher, pour chaque livre, son titre, son auteur, et la liste des personnages principales. On souhaite obtenir une présentation html qui utilise des mises en forme simples (gras, souligné) et des listes à puces. Associez ensuite le style à votre document biblio.xml et vérifiez le résultat à l’affichage. Les elements personnage sont à rajouter pour chaque livre dans le fichier XML de l’exercice 1 2