1 <?xml version='1.0'?> <!--*- mode: xml -*-->
4 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
5 xmlns:exsl="http://exslt.org/common"
6 extension-element-prefixes="exsl"
8 <xsl:output method="xml" indent="yes"
9 doctype-public ="-//OASIS//DTD DocBook XML V4.1.2//EN"
10 doctype-system = "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"/>
12 <xsl:param name="module" />
14 <xsl:template match="element">
15 <xsl:element name="varlistentry">
16 <xsl:element name="term">
17 <xsl:element name="link">
18 <xsl:attribute name="linkend"><xsl:value-of select="$module" />-plugins-<xsl:value-of select="name"/></xsl:attribute>
19 <xsl:value-of select="name" />
22 <xsl:element name="listitem">
23 <xsl:element name="simpara"><xsl:value-of select="description" /></xsl:element>
26 <xsl:variable name="name"><xsl:copy-of select="name"/></xsl:variable>
27 <!-- here we write an element-(name)-details.xml file for the element -->
28 <exsl:document href="{concat ('xml/element-', $name, '-details.xml')}" method="xml" indent="yes">
30 <xsl:element name="refsect2">
31 <xsl:element name="title">Element Information</xsl:element>
32 <xsl:element name="variablelist">
34 <!-- plugin name and link -->
35 <xsl:element name="varlistentry">
36 <xsl:element name="term">plugin</xsl:element>
37 <xsl:element name="listitem">
38 <xsl:element name="simpara">
39 <xsl:element name="link">
40 <xsl:attribute name="linkend">plugin-<xsl:value-of select="../../name"/></xsl:attribute>
41 <xsl:value-of select="../../name" />
47 <xsl:element name="varlistentry">
48 <xsl:element name="term">author</xsl:element>
49 <xsl:element name="listitem">
50 <xsl:element name="simpara"><xsl:value-of select="author" /></xsl:element>
54 <xsl:element name="varlistentry">
55 <xsl:element name="term">class</xsl:element>
56 <xsl:element name="listitem">
57 <xsl:element name="simpara"><xsl:value-of select="class" /></xsl:element>
61 </xsl:element> <!-- variablelist -->
63 <xsl:element name="title">Element Pads</xsl:element>
64 <!-- process all caps -->
65 <xsl:for-each select="pads/caps">
66 <xsl:element name="variablelist">
67 <xsl:element name="varlistentry">
68 <xsl:element name="term">name</xsl:element>
69 <xsl:element name="listitem">
70 <xsl:element name="simpara"><xsl:value-of select="name" /></xsl:element>
74 <xsl:element name="varlistentry">
75 <xsl:element name="term">direction</xsl:element>
76 <xsl:element name="listitem">
77 <xsl:element name="simpara"><xsl:value-of select="direction" /></xsl:element>
81 <xsl:element name="varlistentry">
82 <xsl:element name="term">presence</xsl:element>
83 <xsl:element name="listitem">
84 <xsl:element name="simpara"><xsl:value-of select="presence" /></xsl:element>
88 <xsl:element name="varlistentry">
89 <xsl:element name="term">details</xsl:element>
90 <xsl:element name="listitem">
91 <xsl:element name="simpara"><xsl:value-of select="details" /></xsl:element>
95 </xsl:element> <!-- variablelist -->
97 <!--xsl:element name="programlisting"><xsl:value-of select="details" /></xsl:element-->
105 <xsl:template match="plugin">
106 <xsl:element name="refentry">
107 <xsl:attribute name="id"><xsl:value-of select="$module" />-plugins-plugin-<xsl:value-of select="name"/></xsl:attribute>
109 <xsl:element name="refmeta">
110 <xsl:element name="refentrytitle">
111 <xsl:value-of select="name"/>
113 <xsl:element name="manvolnum">3</xsl:element>
114 <xsl:element name="refmiscinfo">FIXME Library</xsl:element>
115 </xsl:element> <!-- refmeta -->
117 <xsl:element name="refnamediv">
118 <xsl:element name="refname">
119 <xsl:element name="anchor">
120 <xsl:attribute name="id">plugin-<xsl:value-of select="name"/></xsl:attribute>
121 <xsl:value-of select="name"/>
125 <xsl:element name="refpurpose">
126 <xsl:value-of select="description"/>
130 <xsl:element name="refsect1">
131 <xsl:element name="title">Plugin Information</xsl:element>
132 <xsl:element name="variablelist">
134 <xsl:element name="varlistentry">
135 <xsl:element name="term">filename</xsl:element>
136 <xsl:element name="listitem">
137 <xsl:element name="simpara"><xsl:value-of select="basename" /></xsl:element>
141 <xsl:element name="varlistentry">
142 <xsl:element name="term">version</xsl:element>
143 <xsl:element name="listitem">
144 <xsl:element name="simpara"><xsl:value-of select="version" /></xsl:element>
148 <xsl:element name="varlistentry">
149 <xsl:element name="term">run-time license</xsl:element>
150 <xsl:element name="listitem">
151 <xsl:element name="simpara"><xsl:value-of select="license" /></xsl:element>
155 <xsl:element name="varlistentry">
156 <xsl:element name="term">package</xsl:element>
157 <xsl:element name="listitem">
158 <xsl:element name="simpara"><xsl:value-of select="package" /></xsl:element>
162 <xsl:element name="varlistentry">
163 <xsl:element name="term">origin</xsl:element>
164 <xsl:element name="listitem">
165 <xsl:element name="simpara">
166 <!-- only show origin as link if it starts with http -->
168 <xsl:when test="substring(@href, 1, 4) = 'http'">
169 <xsl:element name="ulink">
170 <xsl:attribute name="url"><xsl:value-of select="origin" /></xsl:attribute>
171 <xsl:value-of select="origin" />
175 <xsl:value-of select="origin" />
185 <xsl:element name="refsect1">
186 <xsl:element name="title">Elements</xsl:element>
187 <!-- process all elements -->
188 <xsl:element name="variablelist">
189 <xsl:apply-templates select="elements"/>
198 <xsl:template match="gst-plugin-paths" />