]> matita.cs.unibo.it Git - helm.git/blob - helm/mowgli/home/xsl/person.xsl
- more uniform layout
[helm.git] / helm / mowgli / home / xsl / person.xsl
1 <?xml version="1.0"?>
2
3 <xsl:stylesheet version="1.0"
4                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
5
6 <xsl:import href="common.xsl"/>
7
8 <xsl:output method="html"/>
9
10 <xsl:template match="/">
11  <html>
12   <head>
13    <title>
14     <xsl:call-template name="qualified-name">
15      <xsl:with-param name="qualification"
16                      select="person/qualification"/>
17      <xsl:with-param name="name"
18                      select="person/name"/>
19      <xsl:with-param name="surname"
20                      select="person/surname"/>
21     </xsl:call-template>
22    </title>
23    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
24    <link rel="stylesheet" href="../../../style/mowgli.css" type="text/css"/>
25   </head>
26   <body>
27    <blockquote>
28     <xsl:call-template name="head"/>
29     <xsl:apply-templates/>
30     <xsl:call-template name="foot"/>
31    </blockquote>
32   </body>
33  </html>
34 </xsl:template>
35
36 <xsl:template name="qualified-name">
37  <xsl:param name="qualification" select="/.."/>
38  <xsl:param name="name"/>
39  <xsl:param name="surname"/>
40  <xsl:if test="qualification">
41   <xsl:value-of select="$qualification"/>
42   <xsl:text> </xsl:text>
43  </xsl:if>
44  <xsl:value-of select="$name"/>
45  <xsl:text> </xsl:text>
46  <xsl:value-of select="$surname"/>
47 </xsl:template>
48
49 <xsl:template match="person">
50  <h1>
51   <xsl:call-template name="qualified-name">
52    <xsl:with-param name="qualification"
53                    select="qualification"/>
54    <xsl:with-param name="name"
55                    select="name"/>
56    <xsl:with-param name="surname"
57                    select="surname"/>
58   </xsl:call-template>
59  </h1>
60  <xsl:choose>
61   <xsl:when test="count(position) &gt; 1">
62    <ul>
63     <xsl:for-each select="position">
64      <li><xsl:value-of select="."/></li>
65     </xsl:for-each>
66    </ul>
67   </xsl:when>
68   <xsl:when test="count(position) = 1">
69    <p><xsl:value-of select="position"/></p>
70   </xsl:when>
71  </xsl:choose>
72  <p>
73   <xsl:text>e-mail: </xsl:text>
74   <a href="mailto:{e-mail}">
75    <xsl:value-of select="e-mail"/>
76   </a>
77  </p>
78  <xsl:if test="url">
79   <p>
80    <xsl:text>Home Page: </xsl:text>
81    <a href="{url}">
82     <xsl:value-of select="url"/>
83    </a>
84   </p>
85  </xsl:if>
86  <xsl:if test="address">
87   <p>
88    <xsl:text>Address: </xsl:text>
89    <xsl:value-of select="address"/>
90   </p>
91  </xsl:if>
92  <xsl:if test="telephone">
93   <p>
94    <xsl:text>Telephone number: </xsl:text>
95    <xsl:value-of select="telephone"/>
96   </p>
97  </xsl:if>
98  <xsl:if test="curriculum">
99   <h2>Short Curriculum Vitae:</h2>
100   <xsl:copy-of select="curriculum/*"/>
101  </xsl:if>
102  <xsl:if test="research-interests">
103   <h2>Research Interests:</h2>
104   <xsl:copy-of select="research-interests/*"/>
105  </xsl:if>
106  <xsl:if test="selected-publication">
107   <h2>Selected Publications:</h2>
108   <ul>
109    <xsl:for-each select="selected-publication">
110     <li>
111      <a href="../../publications/{@file}.html">
112       <xsl:value-of select="@file"/>
113      </a>
114     </li>
115    </xsl:for-each>
116   </ul>
117  </xsl:if>
118 </xsl:template>
119
120 </xsl:stylesheet>