first attempt at integrating the "puzzle" and "deadend" elements into XSLT
authorJonathan Blake <jonathan.blake@projectaon.org>
Tue, 13 Nov 2012 19:27:31 +0000 (19:27 +0000)
committerJonathan Blake <jonathan.blake@projectaon.org>
Tue, 13 Nov 2012 19:27:31 +0000 (19:27 +0000)
git-svn-id: https://projectaon.org/data/trunk@2166 f6f3e2d7-ff33-0410-aaf5-b4bee2cdac11

common/xsl/dot.xsl
common/xsl/epub-xhtml.xsl
common/xsl/xhtml-less-simple.xsl
common/xsl/xhtml-simple.xsl
common/xsl/xhtml.xsl

index a0e5818..6e612ab 100644 (file)
@@ -12,7 +12,7 @@ TODO:
 
 -->
 
-<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+<xsl:transform version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 
  <xsl:output method="text" encoding="UTF-8"/>
 
@@ -112,6 +112,27 @@ TODO:
     <xsl:value-of select="$newline"/>
    </xsl:if>
   </xsl:for-each>
+
+  <xsl:for-each select=".//puzzle">
+   <xsl:if test="@idref">
+    <xsl:value-of select="$indent"/>
+    <xsl:value-of select="$section"/>
+    <xsl:text> -&gt; </xsl:text>
+    <xsl:value-of select="format-number( substring( @idref, 5 ), '000' )"/>
+    <xsl:text>;</xsl:text>
+    <xsl:value-of select="$newline"/>
+   </xsl:if>
+   <xsl:if test="@idrefs">
+    <xsl:for-each select="tokenize(normalize-space(@idrefs))"/>
+     <xsl:value-of select="$indent"/>
+     <xsl:value-of select="$section"/>
+     <xsl:text> -&gt; </xsl:text>
+     <xsl:value-of select="format-number( substring( ., 5 ), '000' )"/>
+     <xsl:text>;</xsl:text>
+     <xsl:value-of select="$newline"/>
+    </xsl:for-each>
+   </xsl:if>
+  </xsl:for-each>
  </xsl:template>
 
  <xsl:template match="date"> 
index cec8e0d..794fbc4 100644 (file)
@@ -25,7 +25,7 @@ Todo:
              doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" />
 
  <xsl:strip-space elements="section data ol ul dl li dd footnotes footnote" />
- <xsl:preserve-space elements="p choice" />
+ <xsl:preserve-space elements="p choice puzzle deadend" />
 
  <!-- ====================== parameters ========================== -->
 
@@ -524,6 +524,18 @@ Todo:
 
  </xsl:template>
 
+ <xsl:template match="puzzle">
+  <p class="puzzle">
+   <xsl:apply-templates /><xsl:value-of select="$newline" />
+  </p>
+ </xsl:template>
+ <xsl:template match="deadend">
+  <p class="deadend">
+   <xsl:apply-templates /><xsl:value-of select="$newline" />
+  </p>
+ </xsl:template>
+
  <xsl:template match="data/signpost">
   <div class="signpost">
    <xsl:apply-templates />
index 7955297..c01c0ac 100644 (file)
@@ -25,7 +25,7 @@ Todo:
             doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" />
 
 <xsl:strip-space elements="section data ol ul dl li dd footnotes footnote" />
-<xsl:preserve-space elements="p choice" />
+<xsl:preserve-space elements="p choice puzzle deadend" />
 
 <!-- ====================== parameters ========================== -->
 
@@ -749,6 +749,18 @@ Todo:
  <xsl:value-of select="$newline" />
 </xsl:template>
 
+<xsl:template match="puzzle">
+ <p class="puzzle">
+  <xsl:apply-templates /><xsl:value-of select="$newline" />
+ </p>
+</xsl:template>
+
+<xsl:template match="deadend">
+ <p class="deadend">
+  <xsl:apply-templates /><xsl:value-of select="$newline" />
+ </p>
+</xsl:template>
+
 <xsl:template match="data/signpost">
  <div class="signpost">
   <xsl:apply-templates />
index cd91d01..5f88b55 100644 (file)
@@ -131,7 +131,7 @@ Todo:
             doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" />
 
 <xsl:strip-space elements="section data ol ul dl li dd footnotes footnote" />
-<xsl:preserve-space elements="p choice" />
+<xsl:preserve-space elements="p choice puzzle deadend" />
 
 <!-- ====================== parameters ========================== -->
 
@@ -844,6 +844,18 @@ Todo:
  <xsl:value-of select="$newline" />
 </xsl:template>
 
+<xsl:template match="puzzle">
+ <p class="puzzle">
+  <xsl:apply-templates /><xsl:value-of select="$newline" />
+ </p>
+</xsl:template>
+
+<xsl:template match="deadend">
+ <p class="deadend">
+  <xsl:apply-templates /><xsl:value-of select="$newline" />
+ </p>
+</xsl:template>
+
 <xsl:template match="data/signpost">
  <div class="signpost">
   <xsl:apply-templates />
index fe9a737..1449e52 100644 (file)
@@ -25,7 +25,7 @@ Todo:
             doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" />
 
 <xsl:strip-space elements="section data ol ul dl li dd footnotes footnote" />
-<xsl:preserve-space elements="p choice" />
+<xsl:preserve-space elements="p choice puzzle deadend" />
 
 <!-- ====================== parameters ========================== -->
 
@@ -571,6 +571,18 @@ Todo:
  <xsl:value-of select="$newline" />
 </xsl:template>
 
+<xsl:template match="puzzle">
+ <p class="puzzle">
+  <xsl:apply-templates /><xsl:value-of select="$newline" />
+ </p>
+</xsl:template>
+
+<xsl:template match="deadend">
+ <p class="deadend">
+  <xsl:apply-templates /><xsl:value-of select="$newline" />
+ </p>
+</xsl:template>
+
 <xsl:template match="data/signpost">
  <div class="signpost">
   <xsl:apply-templates />