epub fix for multiple authors (#3655)
[librarian.git] / librarian / epub / xsltContent.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wl="http://wolnelektury.pl/functions">
3   <xsl:output method="html" version="1.0" omit-xml-declaration="no" />
4
5   <xsl:template match="/">
6     <package xmlns="http://www.idpf.org/2007/opf" unique-identifier="BookId" version="2.0">
7       <metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:opf="http://www.idpf.org/2007/opf">
8         <xsl:apply-templates select="//dc:title" />
9         <dc:language>
10           <xsl:apply-templates select="//dc:language" mode="language" />
11         </dc:language>
12         <dc:identifier id="BookId" opf:scheme="URI">
13           <xsl:apply-templates select="//dc:identifier.url" />
14         </dc:identifier>
15         <dc:subject>
16           <xsl:apply-templates select="//dc:identifier.url" />
17         </dc:subject>
18         <dc:creator opf:role="aut">
19           <xsl:attribute name="opf:file-as">
20             <xsl:value-of select="//dc:creator" />
21           </xsl:attribute>
22           <xsl:for-each select="//dc:creator/text()">
23               <xsl:value-of select="wl:person_name(.)"/>
24               <xsl:if test="not(position() = last())">, </xsl:if>
25           </xsl:for-each>
26         </dc:creator>
27         <dc:publisher>
28           <xsl:apply-templates select="//dc:publisher" />
29         </dc:publisher>
30         <dc:date opf:event="publication">
31           <xsl:apply-templates select="//dc:date" />
32         </dc:date>
33       </metadata>
34       <manifest>
35         <item id="toc" href="toc.ncx" media-type="application/x-dtbncx+xml" />
36         <item id="style" href="style.css" media-type="text/css" />
37         <item id="titlePage" href="title.html" media-type="application/xhtml+xml" />
38         <item id="logo_wolnelektury" href="logo_wolnelektury.png" media-type="image/png" />
39         <item id="jedenprocent" href="jedenprocent.png" media-type="image/png" />
40       </manifest>
41       <spine toc="toc">
42         <itemref idref="titlePage" />
43       </spine>
44       <guide>
45         <reference type="text" title="PoczÄ…tek" href="part1.html" />
46       </guide>
47     </package>
48   </xsl:template>
49
50   <xsl:template match="dc:title" >
51     <dc:title>
52       <xsl:value-of select="." />
53     </dc:title>
54   </xsl:template>
55   
56   <xsl:template match="text()" mode="person">
57     <xsl:value-of select="wl:person_name(.)" />
58   </xsl:template>
59   
60   <xsl:template match="text()" mode="language">
61     <xsl:value-of select="wl:lang_code_3to2(.)" />
62   </xsl:template>
63
64 </xsl:stylesheet>