IFT3225-E2013 Examen Intra Technologie de l internet Date: 25 juin 2013,11:30 13:29, salle 1177 Philippe Langlais RÈGLEMENT SUR LE PLAGIAT Extrait du règlement disciplinaire sur le plagiat ou la fraude de l université de Montréal Constitue un plagiat: faire exécuter son travail par un autre; utiliser, sans le mentionner, le travail d autrui; échanger des informations lors d un examen; falsifier des documents. Le plagiat est passible de sanctions allant jusqu à l exclusion du programme. CONSIGNES Autorisé: une page de documentation (recto-verso) manuscrite et/ou imprimée. Répondez clairement. Indiquez toujours sur le carnet à quelle question vous répondez. Le barème sur 40 est donné à titre indicatif. Votre note à l intra sera normalisée pour la ramener à un maximum de 25. (8) 1. Questions HTTP (a) Sur quel protocole (ou famille de protocoles) s appuie le protocole HTTP? (b) Quelle personne a développé le protocole HTTP? (c) Nommer un protocole à état vu en cours et un protocole sans état. Indiquez à quoi servent ces protocoles. (d) Qu est-ce qu un proxy? À quoi cela sert-il? (e) Indiquez le rôle des entêtes suivantes en indiquant s il s agit d une entête envoyée par le client, par le serveur ou par les deux: 1. User-Agent 2. Connection 3. Date (f) Décrivez un mécanisme par lequel un client HTTP requiert une ressource à un serveur seulement si cette ressource n est plus à jour. (g) http://www.nowhere.com/get offre à des utilisateurs autorisés un accès à des informations concernant des noms de produits. Pour communiquer avec cette application, il suffit de spécifier à même l URL des paires attribut/valeur dont: user qui contient le nom de l utilisateur pwd qui contient le mot de passe de l utilisateur product qui contient le nom du produit pour lequel de l information est demandée Écrivez une requête HTTP qui permet à l utilisateur éric dont le mot de passe est x34t d obtenir de l information sur le produit de nom disque dur. Vous admettrez que l application est disponible dans le répertoire racine du serveur.
IFT3225-E2011 Intra Page 2 (h) Considérez la page XHTML de la question 2 et supposez qu elle se trouve à l URL http://www.iro.umontreal.ca/~pift3225/index.html. Combien de requêtes HTTP seront faites par votre navigateur si vous lui demandez l URL http://www. iro.umontreal.ca/~pift3225? Précisez la nature de ces requêtes. (12) 2. Le coin HTML (a) Indiquez deux éléments HTML de type bloc et deux éléments de type en ligne. (b) Qui a développé la première version du langage HTML? (c) La ressource HTML de la page suivante comporte un certain nombre de problèmes qui rendent sa validation impossible selon la norme XHTM1.0 stricte. Indiquez ces erreurs en mentionnant le numéro de ligne les concernant, le motif de l erreur et la façon de corriger l erreur 1. (d) Indiquez une commande CSS qui permet: 1. de mettre en gris le texte de l élément d identificateur art1 2. de mettre en jaune la couleur de fond des éléments qui possèdent la propriété yellow 3. de mettre en gras le texte des éléments li qui possèdent l attribut class 4. de mettre en souligné le texte du troisième item li de la première liste ul d un document HTML. Vous ne devez pas utiliser nth-child dans cette question. 5. de mettre en bleu la couleur de fond des lignes impaires d un tableau (table) ayant pour identificateur ift. 6. d ajouter la chaîne ift devant le texte de tous les items (li) de toutes les listes ul d un document HTML, à l exception du premier élément de chaque liste. (e) Que veut dire le sélecteur CSS: ul.x ol#y > li + li ul? Donnez un bout de code XHTML1.0 où ce sélecteur pourrait s appliquer en soulignant le ou les éléments sélectionnés. 1 Supprimer un élément n est pas une solution qui vous sera créditée. Les numéros de lignes ne font bien sûr pas parti du code XHTML...
IFT3225-E2011 Intra Page 3 1 <xml version="1.0"> 2 3 <!DOCTYPE html SYSTEM "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> 4 <html> 5 <head> 6 <meta content="text/html"/> 7 </head> 8 <body> 9 10 <hr/> 11 <span class="test">demain, dès l aube...</span> 12 13 <br>demain, dès l aube, à l heure où blanchit la campagne, 14 <BR>Je partirai. Vois-tu, je sais que tu m attends. 15 <br>j irai par la forêt, j irai par la 16 <a href="http://fr.wikipedia.org/wiki/montagne" alt="montagne">montagne</a>. 17 <br>je ne puis demeurer <b>loin</b> de toi plus longtemps. 18 19 <hr/> 20 21 <dl> 22 <dt>strophe 2:</dt> 23 <dd> 24 Je marcherai les yeux fixés sur mes pensées, 25 Sans rien voir au dehors, sans entendre aucun bruit, 26 Seul, inconnu, le dos courbé, les mains croisées, 27 Triste, et le jour pour moi sera comme la nuit. 28 </dd> 29 30 <dt>strophe 3:</dt> 31 <dd> 32 Je ne regarderai ni l or du soir qui tombe, 33 Ni les voiles au loin descendant vers Harfleur, 34 Et quand j arriverai, je mettrai sur ta tombe 35 Un bouquet de houx vert et de bruyère en fleur. 36 </dd> 37 </dl> 39 40 <img source="http://commons.wikimedia.org/wiki/file:k2_8611.jpg" /> 41 42 </body> 43 </html>
IFT3225-E2011 Intra Page 4 (8) 3. Schéma XML / DTD Vous souhaitez manipuler des arbres binaires encodés tels qu illustré dans l instance qui suit qui représente l arbre (5 (2 (3,.), 8 (6, 9 (., 10)))). Chaque noeud de l arbre est encodé à l aide de l élément node dont l attribut val (obligatoire) abrite une valeur entière. Chaque noeud peut avoir au plus un élément fg et un élément fd dans cet ordre qui balisent respectivement (lorsque présents) le fils gauche et droit de ce noeud. L élément arbre, racine de l instance, contient un attribut optionnel de nom name. <arbre name="test"> <node val="5"> <node val="2"> <node val="3"/> <node val="8"> <node val="6"/> <node val="9"> <node val="10"/> </arbre> (a) L instance ci-dessus est-elle bien formée? Justifiez. (b) Écrire une DTD permettant de valider cette instance et d autres du même genre. Indiquer précisément comment lier une instance à cette DTD. (c) Écrire un schéma XML équivalent. Indiquer précisément comment lier une instance à ce schéma.
IFT3225-E2011 Intra Page 5 (12) 4. Programmation XSLT (a) Écrire une instruction XPath pour: 1. savoir s il y a des doublons (au moins deux valeurs identiques), 2. obtenir la liste des valeurs différentes stockées, 3. sélectionner les noeuds dont la valeur est 2, 4. sélectionner les noeuds dont la valeur est supérieur à 6, 5. obtenir la valeur des noeuds de profondeur 3, 6. savoir s il existe une feuille de valeur 1 dans une instance comme celle de la question 4. (b) Écrire une feuille de transformation XSLT qui prend en entrée une instance du langage défini à la question 4 et qui affiche en sortie une page HTML qui doit contenir: 1. l ensemble des valeurs de l arbre sous forme de liste non ordonnée (ul) 2. les valeurs rencontrées à une profondeur donnée que vous ferez varier de 1 à la profondeur de l arbre 3. une représentation de l arborescence en format texte. La page que vous devez produire doit être valide selon la norme XHTM1.0 stricte. Vous n avez cependant pas vous soucier de la déclaration permettant de lier la page HTML à cette norme. La trace qui suit a été produite à l aide de la feuille de transformation demandée à partir de l instance de la question 4.