]> matita.cs.unibo.it Git - helm.git/blob - helm/www/lambdadelta/xslt/ld_web_root.xsl
- advances in the site generation architecture
[helm.git] / helm / www / lambdadelta / xslt / ld_web_root.xsl
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <xsl:stylesheet version="1.0"
4                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
5                 xmlns:ld="http://lambdadelta.info/"
6                 xmlns="http://www.w3.org/1999/xhtml"
7 >
8
9 <xsl:template match="ld:section">
10    <div class="head2sn" id="{@name}">
11       <xsl:apply-templates/>
12    </div>
13 </xsl:template>
14
15 <xsl:template match="ld:section3">
16    <div class="head2dx" id="{@name}">
17       <xsl:apply-templates/>
18       <xsl:call-template name="sp"/>
19       <xsl:call-template name="butterfly">
20          <xsl:with-param name="name" select="3"/>
21       </xsl:call-template>
22    </div>
23 </xsl:template>
24
25 <xsl:template match="ld:section4">
26     <div class="head2dx" id="{@name}">
27       <xsl:apply-templates/>
28       <xsl:call-template name="sp"/>
29       <xsl:call-template name="butterfly">
30          <xsl:with-param name="name" select="4"/>
31       </xsl:call-template>
32    </div>
33 </xsl:template>
34
35 <xsl:template match="ld:section5">
36    <div class="head2dx" id="{@name}">
37       <xsl:apply-templates/>
38       <xsl:call-template name="sp"/>
39       <xsl:call-template name="butterfly">
40          <xsl:with-param name="name" select="5"/>
41       </xsl:call-template>
42    </div>
43 </xsl:template>
44
45 <xsl:template match="ld:section6">
46    <div class="head2dx" id="{@name}">
47       <xsl:apply-templates/>
48       <xsl:call-template name="sp"/>
49       <xsl:call-template name="butterfly">
50          <xsl:with-param name="name" select="6"/>
51       </xsl:call-template>
52    </div>
53 </xsl:template>
54
55 <xsl:template match="ld:section8">
56    <div class="head2dx" id="{@name}">
57       <xsl:apply-templates/>
58       <xsl:call-template name="sp"/>
59       <xsl:call-template name="butterfly">
60          <xsl:with-param name="name" select="8"/>
61       </xsl:call-template>
62    </div>
63 </xsl:template>
64
65 <xsl:template match="ld:section9">
66    <div class="head2dx" id="{@name}">
67       <xsl:apply-templates/>
68       <xsl:call-template name="sp"/>
69       <xsl:call-template name="butterfly">
70          <xsl:with-param name="name" select="9"/>
71       </xsl:call-template>
72    </div>
73 </xsl:template>
74
75 <xsl:template match="ld:section15">
76    <div class="head2dx" id="{@name}">
77       <xsl:apply-templates/>
78       <xsl:call-template name="sp"/>
79       <xsl:call-template name="butterfly">
80          <xsl:with-param name="name" select="15"/>
81       </xsl:call-template>
82    </div>
83 </xsl:template>
84
85 <xsl:template match="ld:subsection">
86    <div class="head3sn" id="{@name}">
87       <xsl:apply-templates/>
88    </div>
89 </xsl:template>
90
91 <xsl:template match="ld:body">
92    <div class="text">
93       <xsl:apply-templates/>
94    </div>
95 </xsl:template>
96
97 <xsl:template match="ld:topitem">
98    <ul id="{@name}"><li>
99       <xsl:apply-templates/>
100    </li></ul>
101 </xsl:template>
102
103 <xsl:template match="ld:news">
104    <ul><li>
105       <span class="emph {@class}"><xsl:value-of select="@date"/></span>
106       <xsl:apply-templates/>
107    </li></ul>
108 </xsl:template>
109
110 <xsl:template match="ld:table">
111    <div class="text">
112       <xsl:call-template name="xhtbl"/>
113    </div>
114 </xsl:template>
115
116 <xsl:template match="ld:sitemap">
117    <div class="spacer"><br/></div>   
118    <div class="text">
119       <xsl:call-template name="xhtbl"/>
120    </div>
121 </xsl:template>
122
123 <xsl:template match="ld:link">
124    <a href="{@to}">
125       <xsl:apply-templates/>
126    </a>
127 </xsl:template>
128
129 <xsl:template match="ld:rlink">
130    <a href="{$baseurl}{@to}">
131       <xsl:apply-templates/>
132    </a>
133 </xsl:template>
134
135 <xsl:template match="ld:newline">
136    <br/>
137 </xsl:template>
138
139 <xsl:template match="ld:list">
140    <ul><xsl:apply-templates/></ul>
141 </xsl:template>
142
143 <xsl:template match="ld:item">
144    <li><xsl:apply-templates/></li>
145 </xsl:template>
146
147 <xsl:template match="ld:style">
148    <span class="{@class}">
149       <xsl:choose>
150          <xsl:when test="@of"><xsl:value-of select="@of"/></xsl:when>
151          <xsl:otherwise><xsl:apply-templates/></xsl:otherwise>
152       </xsl:choose>
153    </span>
154 </xsl:template>
155
156 <xsl:template match="ld:notice">
157    <span class="emph {@class}">
158       <xsl:choose>
159          <xsl:when test="@notice"><xsl:value-of select="@notice"/></xsl:when>
160          <xsl:when test="@text"><xsl:value-of select="@text"/></xsl:when>
161          <xsl:otherwise><xsl:apply-templates/></xsl:otherwise>
162       </xsl:choose>
163    </span>
164 </xsl:template>
165
166 <xsl:template match="ld:sub">
167    <sub><xsl:apply-templates/></sub>
168 </xsl:template>
169
170 <xsl:template match="ld:sup">
171    <sup><xsl:apply-templates/></sup>
172 </xsl:template>
173
174 <xsl:template match="ld:img">
175    <xsl:call-template name="img"/>
176    <xsl:choose>
177       <xsl:when test="@logo">
178          <xsl:call-template name="sp"/>
179       </xsl:when>
180    </xsl:choose>
181 </xsl:template>
182
183 <xsl:template match="ld:footer">
184    <xsl:call-template name="rule"/>
185    <div class="spacer"><br/></div>   
186    <div class="spacer">
187       <xsl:call-template name="xhtml-label"/>
188       <xsl:call-template name="css-label"/>
189       <xsl:call-template name="xslt-label"/>
190       <xsl:apply-templates/>
191       <xsl:call-template name="png-label"/>
192       <xsl:call-template name="browser-label"/>
193    </div>
194    <div class="spacer"><br/></div>   
195    <div class="spacer">
196       <xsl:value-of select="'Last update: '"/> 
197       <xsl:value-of select="$date"/>
198    </div>
199 </xsl:template>
200
201 <xsl:template match="ld:page">
202    <html xsl:exclude-result-prefixes="ld" dir="ltr" lang="en-us"><head> 
203       <meta http-equiv="Content-Language" content="en-us"/>
204       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
205       <meta http-equiv="Content-Style-Type" content="text/css"/>
206       <meta name="author" content="Ferruccio Guidi"/>
207       <meta name="description" content="{@description}"/>
208       <title><xsl:value-of select="@title"/></title>
209       <link rel="stylesheet" type="text/css"
210             href="{$baseurl}css/ld_web.css"
211       />
212       <link rel="stylesheet" type="text/css"
213             href="{$baseurl}css/lddl.css"
214       />
215       <link rel="stylesheet" type="text/css"
216             href="{$baseurl}css/xhtbl.css"
217       />
218       <link rel="shortcut icon" 
219             href="{$baseurl}images/crux_16.ico"
220       />
221    </head><body lang="en-US">
222       <div class="spacer"><xsl:call-template name="img"/></div>
223       <div class="head1"><xsl:value-of select="@head"/></div>
224       <xsl:call-template name="rule"/>
225       <xsl:apply-templates/>
226    </body></html>
227 </xsl:template>
228
229 <xsl:template match="@*|node()">
230    <xsl:copy>
231       <xsl:apply-templates select="@*|node()"/>
232    </xsl:copy>
233 </xsl:template>
234
235 </xsl:stylesheet>