site de Fabien Torre


Source de films2html.xsl

<?xml version="1.0" ?>
<xsl:stylesheet version="1.0">
<xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="DTD/xhtml1-strict.dtd" indent="yes" />
<!-- traitement de la racine films -->
<xsl:template match="/films">
<html>
<head>
<link rel="stylesheet" type="text/css" href="films.css" />
<title>Mes films</title>
<meta name="robots" content="noindex" />
</head>
<body>
<h1>Ma liste de films</h1>
<p>
Cette page est produite dans le cadre d'exercices sur XSLT. Son contenu n'est peut-être pas pertinent.
</p>
<ul>
<li>
retour aux <a href="http://www.grappa.univ-lille3.fr/~torre/Enseignement/tp/XML/Corrections/#xsltfilms">solutions des exercices XML</a>
</li>
<li>
retour aux <a href="http://www.grappa.univ-lille3.fr/~torre/Enseignement/tp/XML/XSLT/">exercices XSLT</a>
</li>
<li>
retour à la page de <a href="http://www.grappa.univ-lille3.fr/~torre/">Fabien Torre</a>
</li>
</ul>
<xsl:apply-templates select="film" />
</body>
</html>
</xsl:template>
<!-- Transformation des films -->
<xsl:template match="film">
<div class="film">
<h2><xsl:value-of select="titre" /></h2> <xsl:apply-templates select="photo" /> <xsl:apply-templates select="@lang" /> de <em><xsl:value-of select="realisateur" /></em><br /> <strong><xsl:value-of select="annee" /></strong><br /> <h3>Casting</h3> <ul> <xsl:apply-templates select="casting/acteur" /> </ul> <h3>Synopsis</h3> <p> <xsl:apply-templates select="synopsis/node()" /> </p>
</div>
</xsl:template>
<!-- Transformation de la photo -->
<xsl:template match="photo">
<xsl:element name="img">
<xsl:attribute name="class">photo</xsl:attribute>
<xsl:attribute name="src">
<xsl:value-of select="@href" />
</xsl:attribute>
</xsl:element>
<br />
</xsl:template>
<!-- Transformation de la langue -->
<xsl:template match="@lang">
<xsl:element name="img">
<xsl:attribute name="src">
<xsl:value-of select="." />.png
</xsl:attribute>
</xsl:element>
<br />
</xsl:template>
<!-- Transformation des acteurs -->
<xsl:template match="acteur">
<li>
<xsl:value-of select="." /> : <xsl:value-of select="@personnage" />
</li>
</xsl:template>
<xsl:template name="findactor">
<xsl:param name="id" /> <xsl:value-of select="//casting/acteur[@id=$id]/@personnage" /> (<xsl:value-of select="//casting/acteur[@id=$id]/." />)
</xsl:template>
<xsl:template match="perso">
<em>
<xsl:call-template name="findactor">
<xsl:with-param name="id" select="@ref" />
</xsl:call-template>
</em>
</xsl:template>
</xsl:stylesheet>
Fabien Torre Valid HTML5! Valid CSS!
site de Fabien Torre