--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/story_html.xsl Tue Dec 27 13:55:27 2005 -0500
@@ -0,0 +1,246 @@
+<?xml version="1.0"?>
+<xsl:stylesheet version="1.1"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:xt="http://www.jclark.com/xt"
+ extension-element-prefixes="xt"
+ xmlns="http://www.w3.org/1999/xhtml">
+ <xsl:import href="html.xsl"/>
+ <xsl:output method="xml"
+ encoding="UTF-8"
+ doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
+ indent="yes"/>
+<!-- book processing -->
+<xsl:param name="stylesheet"><xsl:text>contes.css</xsl:text></xsl:param>
+<xsl:param name="pdf-filename"><xsl:text>contes.pdf</xsl:text></xsl:param>
+
+<xsl:template match="story" mode="section-toc">
+ <xsl:variable name="href">
+ <xsl:call-template name="get-id"/>
+ </xsl:variable>
+ <li>
+ <p><a href="{$href}.html"><xsl:value-of select="docinfo/title"/></a></p>
+ <xsl:if test="nda">
+ <xsl:apply-templates select="nda"/>
+ </xsl:if>
+ </li>
+</xsl:template>
+
+<xsl:template match="story" mode="get-story-link">
+ <xsl:call-template name="get-id"/>
+</xsl:template>
+<xsl:template match="story" mode="get-story-name">
+ <xsl:choose>
+ <xsl:when test="docinfo/title">
+ <xsl:value-of select="docinfo/title/text()"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="story/title/text()"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<!-- navigation-bar of story and nda -->
+<xsl:template name="links-story-link">
+ <xsl:param name="prefix"></xsl:param>
+ <link>
+ <xsl:attribute name="href">
+ <xsl:apply-templates select="." mode="get-story-link"/>
+ <xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="rel">
+ <xsl:value-of select="$prefix"/>
+ </xsl:attribute>
+ <xsl:attribute name="title">
+ <xsl:apply-templates select="." mode="get-story-name"/>
+ </xsl:attribute>
+ </link>
+</xsl:template>
+<xsl:template match="story" mode="links-prec">
+ <xsl:call-template name="links-story-link">
+ <xsl:with-param name="prefix">
+ <xsl:text>previous</xsl:text>
+ </xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+<xsl:template match="story" mode="links-next">
+ <xsl:call-template name="links-story-link">
+ <xsl:with-param name="prefix">
+ <xsl:text>next</xsl:text>
+ </xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+<xsl:template match="story" mode="links-story">
+ <xsl:choose>
+ <xsl:when test="preceding-sibling::story[1]">
+ <xsl:apply-templates
+ select="preceding-sibling::story[1]"
+ mode="links-prec"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates
+ select="../preceding-sibling::*[1]/story[last()]"
+ mode="links-prec"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="following-sibling::story[1]">
+ <xsl:apply-templates
+ select="following-sibling::story[1]"
+ mode="links-next"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates
+ select="../following-sibling::*[1]/story[1]"
+ mode="links-next"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:variable name="section-ref">
+ <xsl:call-template name="parent-id"/>
+ </xsl:variable>
+ <link href="index.html#{$section-ref}"
+ rel="up" title="Table des matières"/>
+</xsl:template>
+
+<!-- navigation-bar of story and nda -->
+<xsl:template name="navbar-story-link">
+ <xsl:param name="prefix"></xsl:param>
+ <a>
+ <xsl:attribute name="href">
+ <xsl:apply-templates select="." mode="get-story-link"/>
+ <xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="$prefix"/>
+ <xsl:apply-templates select="." mode="get-story-name"/>
+ </a><br/>
+</xsl:template>
+<xsl:template match="story" mode="navbar-prec">
+ <xsl:call-template name="navbar-story-link">
+ <xsl:with-param name="prefix">
+ <xsl:text>Précédent: </xsl:text>
+ </xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+<xsl:template match="story" mode="navbar-next">
+ <xsl:call-template name="navbar-story-link">
+ <xsl:with-param name="prefix">
+ <xsl:text>Suivant: </xsl:text>
+ </xsl:with-param>
+ </xsl:call-template>
+</xsl:template>
+<xsl:template match="story" mode="navbar-story">
+ <xsl:choose>
+ <xsl:when test="preceding-sibling::story[1]">
+ <xsl:apply-templates
+ select="preceding-sibling::story[1]"
+ mode="navbar-prec"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates
+ select="../preceding-sibling::section[last()]"
+ mode="navbar-prec"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="following-sibling::story[1]">
+ <xsl:apply-templates
+ select="following-sibling::story[1]"
+ mode="navbar-next"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates
+ select="../following-sibling::*[1]"
+ mode="navbar-next"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:variable name="section-ref">
+ <xsl:call-template name="parent-id"/>
+ </xsl:variable>
+ <a href="{$section-ref}.html">Retour à la section</a><br/>
+</xsl:template>
+
+<!-- story section -->
+<xsl:template match="story">
+ <xsl:variable name="href">
+ <xsl:call-template name="get-id"/>
+ </xsl:variable>
+ <xt:document href="{$href}.html" method="xml"
+ encoding="UTF-8"
+ doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
+ indent="yes">
+ <html>
+ <head>
+ <link href="{$css-base-dir}contes.css" media="screen"
+ rel="stylesheet" type="text/css"/>
+ <xsl:apply-templates select="../docinfo" mode="heading"/>
+ <xsl:apply-templates select="." mode="links-story"/>
+ </head>
+ <body>
+ <xsl:apply-templates/>
+ <xsl:apply-templates select="../docinfo/date"/>
+ <hr/>
+ <address>
+ <xsl:apply-templates select="../docinfo/copyright"/>
+ </address>
+ <xsl:apply-templates mode="navbar-story" select="."/>
+ </body>
+ </html>
+ </xt:document>
+</xsl:template>
+
+<!-- strophe -->
+<xsl:template match="strophe">
+ <p><xsl:apply-templates/></p>
+</xsl:template>
+
+<!-- verse -->
+<xsl:template match="verse">
+ <xsl:apply-templates/><br/>
+</xsl:template>
+
+<!-- cue -->
+<xsl:template match="cue">
+ <p><xsl:apply-templates/></p>
+</xsl:template>
+<xsl:template match="caracter">
+ <strong class="caracter">
+ <xsl:apply-templates/>
+ </strong><xsl:text>: </xsl:text>
+</xsl:template>
+<xsl:template match="cue/para">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template match="dialog">
+ <blockquote class="dialog">
+ <xsl:apply-templates/>
+ </blockquote>
+</xsl:template
+>
+<xsl:template match="dialog/cite">
+ <p><xsl:text>« - </xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text> »</xsl:text></p>
+</xsl:template>
+<xsl:template match="cite/desc">
+ <xsl:text> »</xsl:text>
+ <xsl:apply-templates/>
+ <xsl:text>« </xsl:text>
+</xsl:template>
+
+<xsl:template match="story/section/title">
+ <h2><xsl:apply-templates/></h2>
+</xsl:template>
+<xsl:template match="story/section/section/title">
+ <h3><xsl:apply-templates/></h3>
+</xsl:template>
+
+<xsl:template match="story/nda">
+ <div class="nda">
+ <xsl:apply-templates/>
+ </div>
+</xsl:template>
+
+</xsl:stylesheet>
+