Dans ce TP, vous allez créer des documents xml à la fois bien formés et valides par rapport à des schémas donnés.

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

Manuel d'installation de GESLAB Client Lourd

Approche Contract First

Outils logiciels pour l'ingénierie documentaire

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Utilisation du logiciel Epson Easy Interactive Tools

Uniboard: optimiser votre enseignement à l'aide du tableau noir électronique

Bases Java - Eclipse / Netbeans

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

MEMENTO D'UTILISATION Du T.N.I. SmartBoard (Version )

Comment retrouver le fichier "bingo" sauvegardé dans l'ordinateur? Socle commun

MANUEL TBI - STARBOARD

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var Tel : bij@agasc.fr Word: Les tableaux.

Manuel d utilisation NETexcom

TP SIN Programmation sur androïde Support : eclipse

Réservation de matériel

I La création d'un compte de messagerie Gmail.

SOS Info: Traitement de textes. 1. Structurer un document. 2. Enregistrer un document

Table des matières. F. Saint-Germain / S. Carasco Document réalisé avec OpenOffice.org Page 1/13

Installation et paramétrage. Accès aux modèles, autotextes et clip- art partagés

SECTION 5 BANQUE DE PROJETS

Logiciels concernés. Situation. Ciel et le pont comptable. Note conçue et rédigée par Jalons sprl tous droits réservés - 27/06/2007.

Chapitre 3 : outil «Documents»

Prise en main du logiciel. Smart BOARD Notebook 10

Voici les objectifs de la séance d'aujourd'hui :

TP1 : Initiation à Java et Eclipse

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Licence de Biologie, 1ère année. Aide. [Aide 1] Comment utiliser l'explorateur Windows? Comment créer des dossiers?

Utilisation de l'outil «Open Office TEXTE»

Reaper : utilisations avancées

1. Installation de COMPTINE

PORTAIL INTERNET DE LA GESTION PUBLIQUE Guide d'utilisation du Portail Internet de la Gestion Publique

Guide de démarrage rapide

GUIDE DE DEMARRAGE RAPIDE:

1. Installation d'un serveur d'application JBoss:

7 S'abonner aux notifications des nouveaux appels

TP2 : Client d une BDD SqlServer

HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM. Manuel d'utilisation

Installation et prise en main

Utilisation de l outil lié à MBKSTR 9

Chapitre 4 : Édition de fichiers texte - Vi

Le meilleur de l'open source dans votre cyber cafe

Date de diffusion : Rédigé par : Version : Mars 2008 APEM 1.4. Sig-Artisanat : Guide de l'utilisateur 2 / 24

Open-Sankoré. Mise en route. Guide utilisateur Février 2013 NTICE (E. S.)

TP réseaux 4 : Installation et configuration d'un serveur Web Apache

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

Introduction à Eclipse

«Vous éditez, nous archivons!»

Import des utilisateurs depuis Sconet et STSweb - mise à jour du 04/10/06

GUIDE D UTILISATION CRÉER SON SITE WEB - PROJET RESCOL

Administration du site (Back Office)

Manuel Utilisateur. Boticely

Séquencer une application

Manuel utilisateur Netviewer one2one

Programmation par les Objets en Java

Inspiration 7.5. Brève description d Inspiration. Avantages d Inspiration. Inconvénients d Inspiration

ésylog, direction technique Esylog_PeerBackup outil de sauvegarde individuelle mails & fichiers personnels documentation technique

VTigerCRM. CRM : Logiciel de gestion des activités commerciales d'une (petite) entreprise

SAUVEGARDER SES DONNEES PERSONNELLES

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Livre Blanc WebSphere Transcoding Publisher

YAPBA M. Logiciel libre de suivi de vos comptes

MODE D EMPLOI DU LOGICIEL LIGNES DE TEMPS A partir du film La Mort aux trousses d Alfred Hitchcock

Valeur cible et solveur. Les calculs effectués habituellement avec Excel utilisent des valeurs numériques qui constituent les données d'un problème.

Diigo : fonctions avancées

Prise en main du logiciel Smart BOARD

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février :30 à 20:30

GROOBAX. cliquer sur le «G» Cliquer sur «options» Sélectionner le dossier qui contiendra les paramètres => Cliquer A chercher le dossier créé en 2/

Information utiles. webpage : Google+ : digiusto/

TUTORIEL IMPRESS. Ouvrir Impress cocher «présentation vierge», «suivant» cocher «écran», «suivant» cocher «standard», «créer»

MINISTÈRE DES SOLIDARITÉ ET DE LA COHÉSION SOCIALE

PRE-REQUIS A L INSTALLATION...

Bases de données. Table des matières. Introduction. (ReferencePlus.ca)

KM2 W1 EVC1 M3~ Manuel AUTOMSIM API 24V. BP Dcy 1MINI 1MAXI.

Le générateur d'activités

FAIRE SES COMPTES AVEC GRISBI

FAQ L&TT Version avec interface graphique pour Windows

Business Intelligence avec SQL Server 2012

Si vous décidez d utiliser un autre chemin, c est ce nouveau chemin qu il faudra prendre en compte pour la sauvegarde. Cf. : Chapitre 9 Sauvegarde

Prendre en main le logiciel ActivInspire 1.4

Sélection du contrôleur

Les Enseignants de l Ere Technologique - Tunisie. Niveau 1

Table des matières. 1 À propos de ce manuel Icônes utilisées dans ce manuel Public visé Commentaires...

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Guide de mise à jour BiBOARD

OpenOffice Base Gestionnaire de Base de Données

Téléchargement du micrologiciel de téléviseur ACL AQUOS

TP réseau Android. Bidouilles Tomcat. a) Installer tomcat : il suffit de dézipper l'archive apache-tomcat windowsx64.zip.

INFORM :: DEMARRAGE RAPIDE A service by KIS

DOSSIER D'ACTIVITES SUR TUXPAINT Dessiner avec Tuxpaint. Objectifs :

Utilitaires méconnus de StrataFrame

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

MEGA ITSM Accelerator. Guide de Démarrage

Didacticiel de mise à jour Web

INFO 2 : Traitement des images

Transcription:

<?xml version="." encoding="utf-8" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="scripts/tutorialhtml.xsl"?> L3MIAGE - Langages pour le Web L3MIAGE - Langages pour le Web TP3 Des schémas et des instances Objectifs Dans ce TP, vous allez créer des documents xml à la fois bien formés et valides par rapport à des schémas donnés. Mise en place Créez un nouveau projet NetBeans de type Java Web, Web Application nommé TP3 dans votre répertoire de TPs de langages pour le web Dans le répertoire web de ce projet, créez les répertoires suivant: un répertoire xml où vous rangerez vos fichiers xml un répertoire xsd où vous rangerez vos schemas un répertoire xslt dans lequel vous rangerez les tranformations données dans les exercices ci-dessous un répertoire jeu dans lequel vous déziperez l'archive jeu.zip que l'on vous donne dans l'exercice Partie d'échec Exercices. XML Schemas météorologiques. XML Schemas météorologiques On veut modéliser le type décrit par le diagramme UML suivant : Figure.. Météorologie simple Question. Quel est le nombre de type(s) complexe(s) défini(s) par ce diagramme? unbounded /9

/9

Question. Quel est le nombre de type(s) simple(s) défini(s) par ce diagramme? unbounded Question.3 Créez un nouveau XML Schema (File -> New File-> XML -> XML schema). appelé meteo. Comme vous pouvez le voir, le document généré par NetBeans 6. contient bien les informations concernant le target namespace. Il y a trois modes de visualisation d'un XML Schema dans NetBeans 6. (Source, Schema et Design). Pour l'ensemble de notre travail dans cette UE, nous allons toujours utiliser la visualisation Source (cliquez sur le bouton Source dans la barre d'outils de l'éditeur). Question.4 Quel est le nom du vocabulaire par défaut défini dans le nouveau fichier? http://www.w3.org//xmlschema http://xml.netbeans.org/schema/meteo aucun qualified Question.5 Complétez meteo.xsd pour qu'il correspondent au diagramme UML. Question.6 Créez un document xml contraint sur ce XML Schema. Pour cela, demandez un nouveau "XML Document", qui soit "XML Schema constrained" : Figure.. Document xml contraint sur un XML Schema Figure.3. Document xml contraint sur un XML Schema En cas de problème de selection du XML Schema (cf figure ci-dessus), faites un clic bouton droit sur meteo.xsd et choisissez le menu Generate Sample XML. Cela générera un fichier XML pré-rempli (mais pas toujours correctement). Question.7 Dans le fichier généré par NetBeans, combien de préfixes sont définis? 3 Question.8 3/9

Quel est le préfixe (l'alias) du vocabulaire http://xml.netbeans.org/schema/meteo? http://www.w3.org//xmlschema http://xml.netbeans.org/schema/meteo xsi ns schemalocation Question.9 Pour un mot qui appartient au vocabulaire http://xml.netbeans.org/schema/meteo, quel préfixe doit-on employer? aucun meteo: xsi: ns: ou ns: schemalocation: Question. Vérifiez que votre document xml est valide par rapport au XML Schema On souhaite à présent modéliser le type suivant : Figure.4. Météorologie plus complexe Question. Quel est le nombre de type(s) complexe(s) défini(s) par ce diagramme? unbounded Question. Quel est le nombre de type(s) simple(s) défini(s) par ce diagramme? unbounded Question.3 Crééz un nouveau XML Schema définissant ce type Question.4 Crééz un document XML contraint sur ce XML Schema. Vérifiez qu'il est valide 4/9

Question.5 Créez un deuxième document XML contraint sur ce XML Schema. Vérifiez qu'il est lui aussi valide Maintenant que vous avez créé un XML Schema, vous pouvez avoir autant de documents XML valides par rapport à ce schema. Ces documents XML sont appelées instances. [Fermer]. Partie d'échecs. Partie d'échecs On considère un jeu d'échec à un instant donné de la partie et sa spécification XML. On rappelle qu'un jeu d'échec comprend pour les pièces blanches et les pièces noires respectivement: un roi (toujours présent, on ne peut capturer un roi) une reine deux tours deux fous deux cavaliers huit pions Toutes ces pièces se trouvent sur les cases d'un damier 8x8 comme montré sur la figure suivante, qui représente la partie du 7 février 3 entre Jek et AFG, au 3eme coup : Figure.. Représentation d'une partie d'échec à un instant donné Question. Créez un nouveau document de type "XML schema", appelé echec.xsd. Pour l'instant ce document est vide et nous allons le compléter petit à petit. Attention l'élément elementformdefault doit être égal à qualified. Question. Changez le nom du vocabulaire que nous sommes en train d'écrire. Appelez-le http://ujf-grenoble.fr/echec. Ce sera aussi le nom du vocabulaire par défaut défini à l'attribut xmlns Créez un nouvel élément racine echec dont le type est un complextype de nom Echec. Echec ne contient pour l'instant qu'un élément commentaire permettant de décrire ce que l'on est en train de représenter (exemple : AFG (noir) contre Jek (blanc), au 3eme coup, partie du 7 février 3). Question.3 De quel type est l'élément commentaire? int string boolean un type complexe que vous créez un type simple que vous créez Le commentaire que l'on souhaite insérer ici a pour but d'expliquer à l'utilisateur de quelle partie il 5/9

s'agit. Il doit donc pouvoir contenir n'importe quel caractère de l'alphabet du prologue. Il s'agit donc bien d'un type string. Question.4 Créez un nouveau document XML exemple-partie-.xml contraint sur le schéma echec.xsd. Vérifiez que le nom du vocabulaire est bien le bon et qu'il s'agit bien du vocabulaire défini par défaut. Question.5 Munissez-vous de deux outils essentiel en informatique : un papier et un crayon (ou stylo), et dessinez le diagramme de classes UML correspondant à votre XML Schema. A present, nous allons utiliser un transformation xslt pour présenter vos données organisées en xml sous forme d'un échiquier. Pour cela vous aurez besoin des fichiers images (pour représenter les pièces), ainsi que d'un ficiher de transformation xslt. Récupérez et sauvegardez dans les répertoires adequat : Le répertoire jeu.zip que vous décompresserez dans le répertoire web de votre projet. le fichier afficheechecs.xsl que vous sauvegarderez dans le répertoire xsl de votre projet. Question.6 Appliquez la transformation afficheechec.xsl sur le document XML afin de vérifier que votre exemple est conforme à ce qui a été demandé. Pour l'instant, votre document xml ne comprend qu'un commentaire. Le jolie présentation sous forme d'échiquier ne doit donc logiquement pas contenir grand chose de plus (en tout cas aucune autre donnée). Comme nous nous sommes mis d'accord sur l'organisation des données (le schéma) : Vos données devraient correspondre à nos données Notre affichage automatisé (à l'aide de la transformation XSL) devrait pouvoir utiliser vos données sans problème Voici un fragment de document XML permettant de représenter une pièce et sa position. Question.7 Comments définireriez-vous le type de l'élément nom? int string boolean un type complexe que vous créez un type simple que vous créez Dans un jeu d'échec, le nom d'une pièce doit se choisir parmi l'énumération suivante : roi reine 6/9

tour fou cavalier pion Il faut donc un type simple défini comme une restriction de type string avec l'énumération du nom des pièces. Question.8 Comments définireriez-vous le type de l'élément colonne? int string boolean un type complexe que vous créez un type simple que vous créez Les colonnes ne peuvent aller que de A à H. Il faut donc créer un type simple sur la base d'une chaîne de caractères soit à l'aide d'une expression régulière, soit à l'aide d'une énumération. Question.9 Comments définireriez-vous le type de l'élément ligne? int string boolean un type complexe que vous créez un type simple que vous créez Les lignes ne peuvent aller que de à 8. Il s'agit donc d'un sous-ensemble d'entiers, dans l'intervalle [..8]. On veut maintenant pouvoir représenter toutes les pièces d'une même couleur. Voici un fragment de document permettant de représenter toutes les pièces d'une même couleur : où nomdecouleur peut prendre soit la valeur piecesblanches soit la valeur piecesnoires. Les autres noms de balises sont évidemment les mêmes pour une couleur ou une autre. Question. Complétez votre XML Schema pour ajouter le type Piece et les types utilisés par ce type complexe. Question. Complétez le type complexe Echec. Question. A l'aide de votre OPC (Outils Papier-Crayon) dessinez le diagramme de classes UML correspondant à votre XML Schema. 7/9

Question.3 Créez un nouveau document XML exemple-couleur.xml valide par rapport à ce nouveau schéma. Question.4 Appliquez la transformation afficheechec.xsl sur le document XML afin de vérifier que votre exemple est conforme à ce qui a été demandé. Représentation des deux camps. Dans un jeu d'échec, il y a bien deux camps, qui au départ ont le même nombre de pièces. On veut pouvoir décrire la partie, par exemple comme ceci : Question.5 Créez un nouveau document xml contenant ce code et faites en sorte qu'il soit contraint par rapport à votre schema. Définissez un namespace par défaut! Question.6 Appliquez la transformation afficheechec.xsl sur le document XML afin de vérifier que votre exemple est conforme à ce qui a été demandé. Question.7 Complétez votre diagramme de classes UML correspondant à votre XML Schema à l'aide de l'opc. [Fermer] 3. TuxLetterGame File Rouge 3. TuxLetterGame File Rouge Pendant cette séance, nous allons reprendre les instances XML créées auparavant. Comme vous pouvez le voir, il faudra donc qu'avant chaque nouveau TP la partie du TP précédent correspondant à TuxLetterGame soit réalisée. Vous devriez avoir le temps nécéssaire en TP. Nous allons créer les XMLSchema validant les instances créées au dernier TP. Question 3. Ecrire le schéma correspondant à l'instance XML du dictionnaire. Penser à lire attentivement le paragraphe décrivant le dictionnaire dans le dernier TP! A ce niveau du travail, nous avons mis en place les bases pour configurer notre jeu. En effet, nous avons un dico et la configuration du jeu avec les paramètres "décor". Pensons maintenant à ce qui se passe à la fin d'un jeu! Nous allons créer une instance XML et son schéma valide permettant la sauvegarde des parties jouées dans le profil d'un joueur. Nous l'utiliserons plus tard pour afficher les performances d'un joueur. L'instance XML vous est donnée profile.xml. En remarquant les différentes cardinalités, ordre des balises ou encore les types de chaque élément, répondez aux questions suivantes: Question 3. Quelle est la particularité de l'attribut found? Il peut être de type String Il peut être de type double Il est possible de ne pas l'avoir à chaque fois Toutes les réponses sont justes 8/9

des réponses sont justes Aucune réponses est juste Réfléchissons par élimination! Peut-il être un double? Non car il y a le signe %. Par contre le reste des propositions est juste. Question 3.3 Créer une autre instance XML et le XMLSchema associé. [Fermer] Université Joseph Fourier 5 9/9