Imported Upstream version 1.79.0
[platform/upstream/docbook-xsl-stylesheets.git] / fo / publishers.xsl
1 <?xml version="1.0"?>\r
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"\r
3   xmlns:fo="http://www.w3.org/1999/XSL/Format"\r
4   xmlns:dc="http://purl.org/dc/elements/1.1/"\r
5   exclude-result-prefixes="dc"\r
6   version='1.0'>\r
7   \r
8 <xsl:template match="drama/title"/>\r
9 <xsl:template match="poetry/title"/>\r
10 <xsl:template match="dialogue/title"/>\r
11 \r
12 <xsl:template match="drama">\r
13   <xsl:variable name="id">\r
14     <xsl:call-template name="object.id"/>\r
15   </xsl:variable>\r
16     \r
17   <xsl:element name="fo:{$section.container.element}" \r
18                use-attribute-sets="drama.properties">\r
19     <xsl:attribute name="id"><xsl:value-of \r
20                         select="$id"/></xsl:attribute>\r
21     <xsl:call-template name="drama.titlepage"/>\r
22     <xsl:apply-templates/>\r
23   </xsl:element>\r
24 </xsl:template>\r
25   \r
26 <xsl:template match="dialogue">\r
27   <xsl:variable name="id">\r
28     <xsl:call-template name="object.id"/>\r
29   </xsl:variable>\r
30     \r
31   <xsl:element name="fo:{$section.container.element}" \r
32                use-attribute-sets="dialogue.properties">\r
33     <xsl:attribute name="id"><xsl:value-of \r
34                         select="$id"/></xsl:attribute>\r
35     <xsl:call-template name="dialogue.titlepage"/>\r
36     <xsl:apply-templates/>\r
37   </xsl:element>\r
38 </xsl:template>\r
39   \r
40 <xsl:template match="poetry">\r
41   <xsl:variable name="id">\r
42     <xsl:call-template name="object.id"/>\r
43   </xsl:variable>\r
44     \r
45   <xsl:element name="fo:{$section.container.element}" \r
46                use-attribute-sets="poetry.properties">\r
47     <xsl:attribute name="id"><xsl:value-of \r
48                         select="$id"/></xsl:attribute>\r
49     <xsl:call-template name="poetry.titlepage"/>\r
50     <xsl:apply-templates/>\r
51   </xsl:element>\r
52 </xsl:template>\r
53   \r
54 <xsl:template match="stagedir">\r
55   <xsl:variable name="id">\r
56     <xsl:call-template name="object.id"/>\r
57   </xsl:variable>\r
58   \r
59   <xsl:variable name="keep.together">\r
60     <xsl:call-template name="pi.dbfo_keep-together"/>\r
61   </xsl:variable>\r
62   \r
63   <fo:block id="{$id}" xsl:use-attribute-sets="stagedir.properties">\r
64     <xsl:if test="$keep.together != ''">\r
65       <xsl:attribute name="keep-together.within-column"><xsl:value-of\r
66         select="$keep.together"/></xsl:attribute>\r
67     </xsl:if>\r
68     <xsl:apply-templates />\r
69   </fo:block>\r
70 \r
71 </xsl:template>\r
72 \r
73 <xsl:template match="inlinestagedir">\r
74   <fo:inline xsl:use-attribute-sets="inlinestagedir.properties">\r
75     <xsl:call-template name="anchor"/>\r
76     <xsl:text> [</xsl:text>\r
77     <xsl:apply-templates />\r
78     <xsl:text>] </xsl:text>\r
79   </fo:inline>\r
80 </xsl:template>\r
81 \r
82 <xsl:template match="linegroup">\r
83   <xsl:variable name="id">\r
84     <xsl:call-template name="object.id"/>\r
85   </xsl:variable>\r
86 \r
87   <xsl:variable name="keep.together">\r
88     <xsl:call-template name="pi.dbfo_keep-together"/>\r
89   </xsl:variable>\r
90   \r
91   <fo:list-block id="{$id}" xsl:use-attribute-sets="linegroup.properties">\r
92     <xsl:if test="$keep.together != ''">\r
93       <xsl:attribute name="keep-together.within-column"><xsl:value-of\r
94         select="$keep.together"/></xsl:attribute>\r
95     </xsl:if>\r
96     <fo:list-item>\r
97       <fo:list-item-label end-indent="label-end()">\r
98         <xsl:apply-templates select="speaker"/>\r
99       </fo:list-item-label>\r
100       <fo:list-item-body start-indent="body-start()">\r
101         <xsl:apply-templates select="*[not(self::speaker)]"/>\r
102       </fo:list-item-body>\r
103     </fo:list-item>\r
104   </fo:list-block>\r
105 </xsl:template>\r
106 \r
107 <xsl:template match="speaker">\r
108   <fo:block xsl:use-attribute-sets="speaker.properties">\r
109     <xsl:call-template name="anchor"/>\r
110     <xsl:apply-templates/>\r
111   </fo:block>\r
112 </xsl:template>\r
113 \r
114 <xsl:template match="line">\r
115   <fo:block xsl:use-attribute-sets="line.properties">\r
116     <xsl:call-template name="anchor"/>\r
117     <xsl:apply-templates/>\r
118   </fo:block>\r
119 </xsl:template>\r
120 \r
121 </xsl:stylesheet>\r