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>
</xsl:template><head>
<link rel="stylesheet" type="text/css" href="films.css" />
<title>Mes films</title>
<meta name="robots" content="noindex" />
</head><body>
</html><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="https://fabien-torre.fr/Enseignement/tp/XML/Corrections/#xsltfilms">solutions des exercices XML</a>
</li><li>
retour aux <a href="https://fabien-torre.fr/Enseignement/tp/XML/XSLT/">exercices XSLT</a>
</li><li>
</ul>retour à la page de <a href="https://fabien-torre.fr/">Fabien Torre</a>
</li><xsl:apply-templates select="film" />
</body>
<!-- Transformation des films -->
<xsl:template match="film">
<div class="film">
</xsl:template>
<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>
<!-- Transformation de la photo -->
<xsl:template match="photo">
<xsl:element name="img">
<xsl:attribute name="class">photo</xsl:attribute>
<xsl:attribute name="src">
</xsl:element><xsl:value-of select="@href" />
</xsl:attribute><br />
</xsl:template>
<!-- Transformation de la langue -->
<xsl:template match="@lang">
<xsl:element name="img">
<xsl:attribute name="src">
</xsl:element><xsl:value-of select="." />.png
</xsl:attribute><br />
</xsl:template>
<!-- Transformation des acteurs -->
<xsl:template match="acteur">
<li>
</xsl:template><xsl:value-of select="." /> : <xsl:value-of select="@personnage" />
</li><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">
</xsl:stylesheet><em>
</xsl:template><xsl:call-template name="findactor">
</em><xsl:with-param name="id" select="@ref" />
</xsl:call-template>