]> git.stg.codes - stg.git/blob - doc/xslt/common/subtitles.xsl
Correct conversion of resetable structures.
[stg.git] / doc / xslt / common / subtitles.xsl
1 <?xml version='1.0'?>
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3                 xmlns:doc="http://nwalsh.com/xsl/documentation/1.0"
4                 exclude-result-prefixes="doc"
5                 version='1.0'>
6
7 <!-- ********************************************************************
8      $Id: subtitles.xsl 6910 2007-06-28 23:23:30Z xmldoc $
9      ********************************************************************
10
11      This file is part of the XSL DocBook Stylesheet distribution.
12      See ../README or http://docbook.sf.net/release/xsl/current/ for
13      copyright and other information.
14
15      ******************************************************************** -->
16
17 <!-- ==================================================================== -->
18
19 <!-- subtitle markup -->
20
21 <doc:mode mode="subtitle.markup" xmlns="">
22 <refpurpose>Provides access to element subtitles</refpurpose>
23 <refdescription id="subtitle.markup-desc">
24 <para>Processing an element in the
25 <literal role="mode">subtitle.markup</literal> mode produces the
26 subtitle of the element.
27 </para>
28 </refdescription>
29 </doc:mode>
30
31 <xsl:template match="*" mode="subtitle.markup">
32   <xsl:message>
33     <xsl:text>Request for subtitle of unexpected element: </xsl:text>
34     <xsl:value-of select="local-name(.)"/>
35   </xsl:message>
36   <xsl:text>???SUBTITLE???</xsl:text>
37 </xsl:template>
38
39 <xsl:template match="subtitle" mode="subtitle.markup">
40   <xsl:param name="allow-anchors" select="'0'"/>
41   <xsl:apply-templates/>
42 </xsl:template>
43
44 <xsl:template match="set" mode="subtitle.markup">
45   <xsl:param name="allow-anchors" select="'0'"/>
46   <xsl:apply-templates select="(setinfo/subtitle|info/subtitle|subtitle)[1]"
47                        mode="subtitle.markup">
48     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
49   </xsl:apply-templates>
50 </xsl:template>
51
52 <xsl:template match="book" mode="subtitle.markup">
53   <xsl:param name="allow-anchors" select="'0'"/>
54   <xsl:apply-templates select="(bookinfo/subtitle|info/subtitle|subtitle)[1]"
55                        mode="subtitle.markup">
56     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
57   </xsl:apply-templates>
58 </xsl:template>
59
60 <xsl:template match="part" mode="subtitle.markup">
61   <xsl:param name="allow-anchors" select="'0'"/>
62   <xsl:apply-templates select="(partinfo/subtitle
63                                 |docinfo/subtitle
64                                 |info/subtitle
65                                 |subtitle)[1]"
66                        mode="subtitle.markup">
67     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
68   </xsl:apply-templates>
69 </xsl:template>
70
71 <xsl:template match="preface|chapter|appendix" mode="subtitle.markup">
72   <xsl:param name="allow-anchors" select="'0'"/>
73   <xsl:apply-templates select="(docinfo/subtitle
74                                 |info/subtitle
75                                 |prefaceinfo/subtitle
76                                 |chapterinfo/subtitle
77                                 |appendixinfo/subtitle
78                                 |subtitle)[1]"
79                        mode="subtitle.markup">
80     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
81   </xsl:apply-templates>
82 </xsl:template>
83
84 <xsl:template match="article" mode="subtitle.markup">
85   <xsl:param name="allow-anchors" select="'0'"/>
86   <xsl:apply-templates select="(artheader/subtitle
87                                 |articleinfo/subtitle
88                                 |info/subtitle
89                                 |subtitle)[1]"
90                        mode="subtitle.markup">
91     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
92   </xsl:apply-templates>
93 </xsl:template>
94
95 <xsl:template match="dedication|colophon" mode="subtitle.markup">
96   <xsl:param name="allow-anchors" select="'0'"/>
97   <xsl:apply-templates select="(subtitle|info/subtitle)[1]"
98                        mode="subtitle.markup">
99     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
100   </xsl:apply-templates>
101 </xsl:template>
102
103 <xsl:template match="reference" mode="subtitle.markup">
104   <xsl:param name="allow-anchors" select="'0'"/>
105   <xsl:apply-templates select="(referenceinfo/subtitle
106                                 |docinfo/subtitle
107                                 |info/subtitle
108                                 |subtitle)[1]"
109                        mode="subtitle.markup">
110     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
111   </xsl:apply-templates>
112 </xsl:template>
113
114 <xsl:template match="qandaset" mode="subtitle.markup">
115   <xsl:param name="allow-anchors" select="'0'"/>
116   <xsl:apply-templates select="(blockinfo/subtitle|info/subtitle)[1]"
117                        mode="subtitle.markup">
118     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
119   </xsl:apply-templates>
120 </xsl:template>
121
122 <xsl:template match="refentry" mode="subtitle.markup">
123   <xsl:param name="allow-anchors" select="'0'"/>
124   <xsl:apply-templates select="(refentryinfo/subtitle
125                                 |info/subtitle
126                                 |docinfo/subtitle)[1]"
127                        mode="subtitle.markup">
128     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
129   </xsl:apply-templates>
130 </xsl:template>
131
132 <xsl:template match="section
133                      |sect1|sect2|sect3|sect4|sect5
134                      |refsect1|refsect2|refsect3
135                      |simplesect"
136               mode="subtitle.markup">
137   <xsl:param name="allow-anchors" select="'0'"/>
138   <xsl:apply-templates select="(info/subtitle
139                                 |sectioninfo/subtitle
140                                 |sect1info/subtitle
141                                 |sect2info/subtitle
142                                 |sect3info/subtitle
143                                 |sect4info/subtitle
144                                 |sect5info/subtitle
145                                 |refsect1info/subtitle
146                                 |refsect2info/subtitle
147                                 |refsect3info/subtitle
148                                 |subtitle)[1]"
149                        mode="subtitle.markup">
150     <xsl:with-param name="allow-anchors" select="$allow-anchors"/>
151   </xsl:apply-templates>
152 </xsl:template>
153
154 </xsl:stylesheet>
155