STIC:STIC I - exercice 6 (Nestor-Pixel)

De EduTech Wiki
Aller à la navigation Aller à la recherche

Cette page fait partie des cours STIC I et STIC II

Enoncé de l'exercice 6

Cet exercice du cours STIC I vous permet:

  • d'apprendre comment construire des XSD
  • d'améliorer vos connaissances de XSLT

Tâche

  • Faire une XSD de votre choix.
  • Afficher avec une feuille de style XSLT un contenu fait avec cette XSD

Emplacement de la page d'accueil / rapport:

/etu-maltt/nestor/<login>/stic/ex6/

Contraintes

  • Contenu selon vos envies et possibilités, mais en rapport avec les thématiques de MALTT
  • Vous pouvez reprendre la DTD de l'exercice 2, mais essayez d'abord d'en faire une meilleure version (le cas échéant). Donc éviter de multiplier des éléments ayant le même type de contenu par exemple ou encore mieux hiérarchiser.
  • La XSD doit être correcte et vos contenus doivent être valides (respecter la XSD)
  • Vous devez présenter le contenu d’un fichier test avec un XSLT. Cette présentation se fera à choix en HTML, XHTML (strict ou transitoire) ou SVG ou X3D.

Il faut donc produire 4 fichiers au moins: Une XSD, un fichier *.xml, un fichier *.xsl et finalement un rapport.

Le rapport:

  • Titre, auteur et date
  • Le résulat:
    • Lien vers la XSD (XML Schema)
    • Lien vers le fichier XML
    • Lien vers le *.XSLT qui va avec (et la CSS si vous en utilisez)
  • Objectifs XSD: Elle sert à quoi ?
  • Objectifs XSLT: Comment avez-vous pensé la mise en page ?
  • La production: bref résumé de la démarche
  • Difficultés, auto-évaluation, remarques
  • Ressources utilisées, bibliographie.

Evaluation

  • Qualité du rapport (y compris discussion des besoins et du vocabulaire)
  • Thématique (pas de recette de cuisine, liste de CDs etc. !)
  • Ergonomie et qualité de la présentation
  • Fonctionalité, originalité. etc.
  • Qualité de la XSD par rapport au buts fixés
  • Validité des fichiers XML, XSLT et de la XSD
  • Bonus: Richesse de la XSD (faire plus qu’une simple structure tabulaire !)
  • Bonus: Sortie en SVG ou X3D.

Activités en classe

Warm-up - traduire une DTD vers XML Schema (XSD)

  • Copiez vos fichiers de l'exercice 2
  • Faites une traduction avec XML Exchanger light.
    • Menu Schema->Convert Schema

Templates

Comme il existe plusieurs façons d'utiliser un XSD, je vous conseille de suivre la logique ci-dessous. Un peu plus à copier/coller, mais à mon avis la façon la plus simple de travailler avec XSD.

XSD

Remplacez le XXX par votre login sur nos serveurs ou mettez un autre URL à vous.

<xs:schema 
   xmlns:xs="http://www.w3.org/2001/XMLSchema" 
   targetNamespace="http://tecfa.unige.ch/perso/maltt/XXXX" 
   xmlns="http://tecfa.unige.ch/perso/maltt/XXXX"
   elementFormDefault="qualified">
   attributeFormDefault="unqualified" 
   version="1.0">
<xs:annotation>
  <xs:documentation xml:lang="fr">bla bla ... (petite documentation) ... </xs:documentation>
</xs:annotation>

   <!-- ici les règles XSD -->

</xs:schema>

XML

Template XML (remplacez "votre_racine", XXXX, "votre_xsd.xsd et votre_style.xsl")

<?xml version="1.0"?>
<?xml-stylesheet href="votre_style.xsl" type="text/xsl"?>

<votre_racine  
  xmlns="http://tecfa.unige.ch/perso/maltt/XXXX" 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://tecfa.unige.ch/perso/maltt/XXXX" votre_xsd.xsd"
  >

   <!-- ici le contenu -->

</votre_racine>

XSLT

Copiez/collez le chablon ci-dessous si vous voulez et remplacez "VOTRE_RACINE, "UN_ELEMENT" par vos éléments. Sinon, la plupart des éditeurs XML offrent une assistance XSLT.

Template XSLT:

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

  <xsl:output method="html"/>

  <xsl:template match="VOTRE_RACINE">
    <html>
      <body bgcolor="#FFFFFF">
        <xsl:apply-templates/>
      </body>
    </html>
  </xsl:template>

  <xsl:template match="UN_ELEMENT">
    
  </xsl:template>

  <xsl:template match="UN_ELEMENT">
    
  </xsl:template>


</xsl:stylesheet>

Ressources

Transparents
TECFA's XML page
Introduction à XML et DOM - PDF file , (transparents)
Introduction technique à XML - PDF file , (transparents)
Introduction technique à XSLT - PDF file , (transparents)
Introduction à XML Schema (XSD) - PDF File
Exemples de XSD

http://tecfa.unige.ch/guides/xml/examples/xsd-examples/

Autres
XSLT (en, liens)
XML (en, mini-tutoriel + liens)
XSLT Tutorial (en, mini-tutoriel)
Encodage de caractères
Character encoding (en, liens encodage)