STIC:STIC I - exercice 2 (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 2

Cet exercice du cours STIC I vous permet:

  • d'apprendre comment construire des DTDs pour XML
  • d'apprendre les bases de XSLT
  • d'apprendre comment associer une feuille de style CSS à une "sortie XHTML"

Tâche

  • Créer une DTD simple sur un sujet de votre choix, mais en rapport avec une thématique "MALTT"
  • Afficher avec une feuille de style XSLT un contenu valide crée avec cette
  • Afficher avec une feuille de style XSLT partiellement un contenu valide crée avec cetteDTD
  • Bonus: associer une CSS au résultat HTML
  • Ecrire un rapport
  • Participer au Wiki

Emplacement de la page d'accueil / rapport:

 /etu-maltt/<promo>/<login>/stic/ex2/

par exemple:

 /etu-maltt/pixel/user1/stic/ex2/
  • Donc ex2 et ne pas exercice 2 etc. !!

Contraintes

  • Contenu selon vos envies et possibilités, mais en rapport avec les thématiques de MALTT
  • Vous pouver soit définir une nouvelle DTD, soit adapter une DTD
  • La DTD doit être correcte et vos contenus doivent être valides (respecter la DTD)
  • Vous devez créer deux feuilles de style XSLT qui présentent les informations de deux façons différentes. Vous êtes notamment encouragés à présenter des informations partielles dans une des variantes. Cette présentation se fera en XHTML (strict ou transitoire).

Il faut donc produire 6 fichiers:

  • Une DTD,
  • deux fichiers *.xml qui sont identiques,
  • deux fichiers *.xsl associés à ces fichiers xml
  • un rapport.

Le rapport:

  • Titre, auteur et date
  • Le résulat:
    • Lien vers la DTD
    • Lien vers le fichier XML 1
    • Lien vers le *.XSLT qui va avec (et la CSS si vous en utilisez)
    • Lien vers une copie du fichier XML 1 (XML 2)
    • Lien vers le *.XSLT qui va avec (et la CSS si vous en utilisez)
  • Objectifs DTD: Elle sert à quoi ?
  • Objectifs XSLT: Comment avez-vous pensé la mise en page ?
  • La production: bref résumé de la démarche
  • Contribution Wiki (il suffit de faire un lien vers votre home page wiki)
  • 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. ! Soyez créatifs ...)
  • Ergonomie et qualité de la présentation (X)HTML
  • Fonctionalité, originalité. etc.
  • Qualité de la DTD par rapport au buts fixés
  • Validité des fichiers XML, XSLT et de la DTD
  • Bonus: Richesse de la DTD (faire plus qu’une simple structure tabulaire ! Evitez donc les DTD pour gérér vos CD et vos livres ....)
  • Participation au wiki (en dehors de la page discussion !)

Propositions wiki-writing pour les experts

  1. Compléter XML
  2. Compléter Tutoriel XSLT débutant
  3. Compléter Tutoriel DTD
  4. XML dans l'éducation
  5. Décrire un vocabulaire XML qui vous intéresse (regardez ce que publie W3C,, OASIS,....)

Activités en classe

Logiciels

Choix 1
Choix 2

Introduction à XML

Warm-up - éditer une DTD de cuisine

Copiez ces fichiers:

ATTENTION: il faut "sauver les lien sous" / "save link as" ! Pas afficher dans le navigateur et sauver ensuite ...

Avec votre éditeur XML, ouvrez le document cuisine-template.xml

Entrez une recette ...

Créer une DTD

  • Créez une DTD
  • Faites un fichier XML avec cette DTD

Template XML (remplacez "VOTRE_RACINE" et "VOTRE_DTD")

<?xml version="1.0"?>
<!DOCTYPE VOTRE_RACINE SYSTEM "VOTRE_DTD.dtd">

<VOTRE_RACINE>

</VOTRE_RACINE>


Introduction à XSLT

XSLT

(1) Regardez d'abord des examples, notamment la recette de cuisine ci-dessus !

Sinon, fouillez par exemple les exemples très simples: http://tecfa.unige.ch/guides/xml/examples/xsl-simple/

(2) Pour votre XML/DTD faites une simple feuille de style 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>

Template XML avec XSLT

<?xml version="1.0" ?>
<!DOCTYPE VOTRE_RACINE SYSTEM "VOTRE_DTD.dtd">
<?xml-stylesheet href="VOTRE_STYLE.xsl" type="text/xsl"?>

<VOTRE_RACINE>

</VOTRE_RACINE>

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)
Exemples de DTD
http://tecfa.unige.ch/guides/xml/examples/dtd-examples/
http://tecfa.unige.ch/guides/xml/examples/xsl-simple/
Pages wiki fr
XML
Encodage de caractères
Pages wiki en
XML (en, mini-tutoriel + liens)
XSLT (en, liens)
XSLT Tutorial (en, mini-tutoriel)
Character encoding (en, liens encodage)