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,v 1.7 2006/05/07 07:14:44 bobstayton Exp $
9     ********************************************************************
10
11     This file is part of the XSL DocBook Stylesheet distribution.
12     See /README or http://nwalsh.com/docbook/xsl/ for copyright
13     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>
24<para>Processing an element in the
25<literal role="mode">subtitle.markup</literal> mode produces the
26subtitle 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="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"
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[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
156