2
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3
xmlns:exsl="http://exslt.org/common"
4
xmlns:ctrlproxy="http://ctrlproxy.vernstok.nl/common"
6
extension-element-prefixes="exsl">
8
<xsl:output method="xml" omit-xml-declaration="yes"/>
10
<xsl:param name="xmlCtrlproxyNsUri" select="'http://ctrlproxy.vernstok.nl/common'"/>
12
<xsl:template match="ctrlproxy:module">
13
<xsl:element name="chapter">
14
<xsl:attribute name="id">
15
<xsl:value-of select="@name"/>
18
<xsl:if test="title = ''">
19
<xsl:element name="title">
20
<xsl:value-of select="@name"/><xsl:text> module</xsl:text>
24
<xsl:apply-templates/>
28
<xsl:template match="modulemeta">
29
<xsl:if test="description != ''">
30
<xsl:element name="para">
31
<xsl:value-of select="description"/>
35
<xsl:element name="variablelist">
36
<xsl:if test="version != ''">
38
<xsl:element name="varlistentry">
39
<xsl:element name="term">Version:</xsl:element>
40
<xsl:element name="listitem"><xsl:element name="para"><xsl:value-of select="version"/></xsl:element></xsl:element>
44
<xsl:if test="author != ''">
46
<xsl:element name="varlistentry">
47
<xsl:element name="term">Author:</xsl:element>
48
<xsl:element name="listitem"><xsl:element name="para">
49
<xsl:element name="ulink">
50
<xsl:attribute name="url"><xsl:text>mailto:</xsl:text><xsl:value-of select="email"/></xsl:attribute>
51
<xsl:value-of select="author"/></xsl:element></xsl:element>
56
<xsl:if test="homepage != ''">
58
<xsl:element name="varlistentry">
59
<xsl:element name="term">Homepage:</xsl:element>
60
<xsl:element name="listitem"><xsl:element name="para">
61
<xsl:element name="ulink">
62
<xsl:attribute name="url"><xsl:value-of select="homepage"/></xsl:attribute>
63
<xsl:value-of select="homepage"/>
70
<xsl:if test="requirements != ''">
72
<xsl:element name="varlistentry">
73
<xsl:element name="term">Requirements:</xsl:element>
74
<xsl:element name="listitem">
75
<xsl:element name="para">
76
<xsl:value-of select="requirements"/>
84
<xsl:template match="element">
85
<xsl:element name="varlistentry">
86
<xsl:element name="term"><xsl:element name="emphasis"><xsl:value-of select="@name"/></xsl:element></xsl:element>
87
<xsl:element name="listitem">
88
<xsl:element name="para">
89
<xsl:value-of select="description"/>
91
<xsl:if test="element != '' or attribute != ''">
92
<xsl:element name="variablelist">
93
<xsl:apply-templates/>
100
<xsl:template match="element/description"></xsl:template>
102
<xsl:template match="attribute">
103
<xsl:element name="varlistentry">
104
<xsl:element name="term"><xsl:element name="emphasis"><xsl:value-of select="@name"/></xsl:element></xsl:element>
105
<xsl:element name="listitem">
106
<xsl:element name="para">
107
<xsl:value-of select="description"/>
113
<xsl:template match="configuration">
114
<xsl:element name="sect1">
115
<xsl:element name="title"><xsl:text>Configuration</xsl:text></xsl:element>
117
<xsl:element name="para"><xsl:text>The following XML elements are supported:</xsl:text></xsl:element>
119
<xsl:if test="element != '' or attribute != ''">
120
<xsl:element name="variablelist">
121
<xsl:apply-templates/>
127
<xsl:template match="ctrlproxy:module/description">
128
<xsl:element name="sect1">
129
<xsl:element name="title"><xsl:text>Description</xsl:text></xsl:element>
130
<xsl:apply-templates/>
134
<xsl:template match="ctrlproxy:module/example">
135
<xsl:element name="sect1">
136
<xsl:element name="title"><xsl:text>Example configuration</xsl:text></xsl:element>
137
<xsl:element name="programlisting">
138
<xsl:apply-templates/>
143
<xsl:template match="section">
144
<xsl:element name="sect1">
145
<xsl:apply-templates/>
149
<xsl:template match="subsection">
150
<xsl:element name="sect2">
151
<xsl:apply-templates/>
155
<xsl:template match="todo">
156
<xsl:element name="sect1">
157
<xsl:element name="title"><xsl:text>Planned features</xsl:text></xsl:element>
158
<xsl:apply-templates/>
162
<xsl:template match="bugs">
163
<xsl:element name="sect1">
164
<xsl:element name="title"><xsl:text>Known bugs</xsl:text></xsl:element>
165
<xsl:apply-templates/>
169
<!-- Copy content unchanged -->
170
<xsl:template match="@*|node()">
172
<xsl:apply-templates select="@*|node()"/>