1 <?xml version="1.0" encoding="utf-8"?>
 
   4         This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
 
   5         Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
 
   8 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 
   9         xmlns:wl="http://wolnelektury.pl/functions"
 
  10         xmlns:dc="http://purl.org/dc/elements/1.1/"
 
  11         xmlns="http://www.gribuser.ru/xml/fictionbook/2.0"
 
  12         xmlns:l="http://www.w3.org/1999/xlink">
 
  14         <!-- footnote body mode -->
 
  15         <xsl:template match="pa|pe|pr|pt" mode="footnotes">
 
  16                 <!-- we number them absolutely -->
 
  17                 <xsl:variable name="n" select="count(preceding::pa) + count(preceding::pe) + count(preceding::pr) + count(preceding::pt) + 1"/>
 
  19                 <xsl:element name="section">
 
  20                         <xsl:attribute name="id">fn<xsl:value-of select="$n"/></xsl:attribute>
 
  22                         <p><xsl:apply-templates mode="inline"/>
 
  23                 <xsl:if test="local-name() = 'pa'">
 
  24                     <xsl:text> [przypis autorski]</xsl:text>
 
  26                 <xsl:if test="local-name() = 'pt'">
 
  27                     <xsl:text> [przypis tłumacza]</xsl:text>
 
  29                 <xsl:if test="local-name() = 'pr'">
 
  30                     <xsl:text> [przypis redakcyjny]</xsl:text>
 
  32                 <xsl:if test="local-name() = 'pe'">
 
  33                     <xsl:text> [przypis edytorski]</xsl:text>
 
  37         <xsl:template match="text()" mode="footnotes"/>
 
  39         <!-- footnote links -->
 
  40         <xsl:template match="pa|pe|pr|pt" mode="inline">
 
  41                 <xsl:variable name="n" select="count(preceding::pa) + count(preceding::pe) + count(preceding::pr) + count(preceding::pt) + 1"/>
 
  42                 <xsl:element name="a">
 
  43                         <xsl:attribute name="type">note</xsl:attribute>
 
  44                         <xsl:attribute name="l:href">#fn<xsl:value-of select="$n"/></xsl:attribute>
 
  46                         <xsl:text>[</xsl:text>
 
  47                         <xsl:value-of select="$n"/>
 
  48                         <xsl:text>]</xsl:text>