source: TI07-MOLES/trunk/StubB/XSLT/browse/moles_browser_files/stubb_2_browse.xsl @ 731

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI07-MOLES/trunk/StubB/XSLT/browse/moles_browser_files/stubb_2_browse.xsl@731
Revision 731, 13.1 KB checked in by fvenuti, 15 years ago (diff)

Improvements on rules

Line 
1<?xml version="1.0" encoding="iso-8859-1"?>
2<!-- An XSLT stylesheet for Stub-B
3Author: Fabio Venuti, NOCS
4History: 20/02/2006 First test version
5                 23/03/2006 xslt ok on data entity page. Links not working, need
6                        connection to code that issues xqueries. Browse history and
7                        selected items not working, need connection to session manager.
8-->
9<xsl:stylesheet version="1.0" 
10        xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
11        <xsl:output method="html" indent="yes"
12                doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
13   
14        <!-- document outline --> 
15        <xsl:template match="/">
16                <html>
17                        <head>
18                                <META http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
19                                <title>Browse: <xsl:value-of select="dgMetadataRecord/name"/></title>
20                                <LINK media="all, screen" href="moles_browser_files/style.css" type="text/css" rel="stylesheet"/>
21                                <LINK media="print" href="moles_browser_files/print.css" type="text/css" rel="stylesheet"/>
22                        </head>
23                        <body>
24                                <!-- start header content -->
25                                <DIV id="Header">
26                                        <table style="WIDTH: 90%" border="0" cellspacing="0" cellpadding="0">
27                                                <tbody>
28                                                        <tr>
29                                                                <td width="3%"></td>
30                                                                <td width="8%"><a href="http://www.com/"><img src="moles_browser_files/bodc_logo.gif" alt="Visit BODC" border="0"/></a></td>
31                                                                <td width="8%"><a href="http://www.com/"><img src="moles_browser_files/ndg_logo.gif" alt="Visit NDG" border="0"/></a></td>
32                                                                <td width="51%" align="center"><a href="http://www.com/"><img src="moles_browser_files/browse_header4.gif" border="0"/></a></td>
33                                                                <td>
34                                                                        <form style="MARGIN: 0px" action="http://www.com/" name="quicksearch">
35                                                                                <table border="0" cellspacing="0" cellpadding="1">
36                                                                                        <tbody>
37                                                                                                <tr>
38                                                                                                        <td align="center">Search Datasets</td>
39                                                                                                        <td></td>
40                                                                                                </tr>
41                                                                                                <tr>
42                                                                                                        <td align="middle"><input class="text" name="K" size="20" maxlength="100"/></td>
43                                                                                                        <td><INPUT class="Button" type="submit" value="GO" name="Submit"/> </td>
44                                                                                                </tr>
45                                                                                        </tbody>
46                                                                                </table>
47                                                                        </form>
48                                                                </td>
49                                                        </tr>
50                                                </tbody>
51                                        </table>
52                                </DIV>
53                                <!-- end header content -->
54                                <DIV id="Main1">
55                                <!-- start left column content -->
56                                        <DIV id="LeftColumn">
57                                                <!-- BEGIN Selected Block -->
58                                                <DIV id="Selected">
59                                                        <H1>Selected Items</H1>
60                                                        <DIV id="SubSelected">
61                                                                <UL>
62                                                                        <LI><A href="#">
63                                                                                <xsl:value-of select="dgMetadataRecord/name"/>                                                                         
64                                                                                </A>
65                                                                        </LI>
66                                                                </UL>
67                                                        </DIV>
68                                                </DIV><!-- End Selected Block -->
69                                                <!-- BEGIN History Block -->
70                                                <DIV id="SearchHistory">
71                                                        <H1>Browse History</H1>
72                                                        <DIV id="SubSearchHistory">
73                                                                <DIV id="SearchedRecords"><A href="#">
74                                                                        <xsl:value-of select="dgMetadataRecord/name"/>
75                                                                        </A>
76                                                                </DIV>
77                                                        </DIV>
78                                                </DIV><!-- END History Block -->
79                                        </DIV><!-- end left column content -->
80                                        <!-- start main content -->
81                                        <xsl:apply-templates/>
82                                </DIV>
83                                <!-- BEGIN Footer Content -->
84                                <DIV id="Footer"> <!-- Sometihng here? --> 
85                                </DIV><!-- END Footer Content -->
86                        </body>
87                </html>
88        </xsl:template>
89
90        <!-- Stub-B Content -->
91        <xsl:template match="dgMetadataRecord">
92                <DIV id="MainContent">
93                        <!-- BEGIN Metadata Record Block -->
94                        <p></p>
95                        <DIV style="CLEAR: none; LEFT: 0px; WIDTH: 98%; TOP: 0px">
96                                <DIV style="CLEAR: none; WIDTH: 98%">
97                                        <TABLE cellSpacing="0" cellPadding="0" width="100%" border="0">
98                                                <TBODY>
99                                                        <TR>
100                                                                <TD>
101                                                                        <DIV id="RecordCornersTop">
102                                                                                <IMG height="11" alt="" src="moles_browser_files/record_top_right_corner.gif" width="11" align="right"/>
103                                                                        </DIV>
104                                                                        <DIV id="RecordBox"><br/>
105                                                                                <h5><SPAN class="red"><xsl:value-of select="name"/></SPAN></h5>
106                                                                                <P><b><xsl:value-of select="dgMetadataDescription/abstract/abstractText"/></b></P> 
107                                                                                <p><br/></p>
108                                                                                <xsl:apply-templates select="dgDataEntity"/>
109                                                                                <br/><br/><a href="http://www.com"><img src="moles_browser_files/icon_searchsimilar.gif" alt="" height="19" width="24" border="0"/> View Details</a> <a href="http://www.com/" target="_blank"><img src="moles_browser_files/icon_print.gif" alt="View Printable Page" height="19" width="24" border="0"/> Print Record</a> <a href="http://www.com/"><img src="moles_browser_files/icon_searchsimilar.gif" alt="" height="19" width="24" border="0"/> Get Data</a>
110                                                                        </DIV>
111                                                                        <DIV id="RecordCornersBot">
112                                                                                <IMG height="11" alt="" 
113                                                                                        src="moles_browser_files/record_bottom_right_corner.gif" width="11" 
114                                                                                        align="right"/>
115                                                                </DIV>
116                                                                </TD>
117                                                        </TR>
118                                                </TBODY>
119                                        </TABLE>
120                                </DIV>
121                                <xsl:apply-templates select="dgDataEntity/RelatedDeployment[1]"/>                               
122                        </DIV>
123                </DIV>
124        </xsl:template>
125
126        <!-- dgDataEntity (only a Summary); can be extended -->
127        <xsl:template match="dgDataEntity">
128                <table cellspacing="0" cellpadding="3" width="90%" border="0">
129                        <tbody>
130                                <tr>
131                                        <td class="lineHead" width="40%">Field</td>
132                                        <td class="lineHead" width="60%">Description</td>
133                                </tr>
134                                <xsl:apply-templates select="dgDataSummary/dgParameterSummary"/>
135                                <xsl:apply-templates select="dgDataSummary/dgDataCoverage/descendant::dgSpatialCoverage"/>
136                                <xsl:apply-templates select="dgDataSummary/dgDataCoverage/descendant::dgTemporalCoverage"/>
137                                <xsl:apply-templates select="dgDataRoles/dgDataCurator"/>
138                        </tbody>
139                </table>
140        </xsl:template>
141
142        <!-- dgParameterSummary  -->
143        <xsl:template match="dgParameterSummary">
144                <tr onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
145                        <td class="line"><b>Parameter</b><br/></td>
146                        <td class="line"><xsl:value-of select="ParameterName"/></td>
147                </tr>
148        </xsl:template>
149
150        <!-- dgSpatialCoverage  -->
151        <xsl:template match="dgSpatialCoverage">
152                <tr onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
153                        <td class="line"><b>Spatial Coverage</b><br/></td>
154                        <td class="line">
155                                Limit North: <xsl:value-of select="BoundingBox/LimitNorth"/><br/>
156                                Limit South: <xsl:value-of select="BoundingBox/LimitSouth"/><br/>                       
157                                Limit West: <xsl:value-of select="BoundingBox/LimitWest"/><br/>                 
158                                Limit East: <xsl:value-of select="BoundingBox/LimitEast"/><br/>                 
159                        </td>
160                </tr>
161        </xsl:template>
162
163        <!-- dgTemporalCoverage  -->
164        <xsl:template match="dgTemporalCoverage">
165                <tr onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
166                        <td class="line"><b>Temporal Coverage</b><br/></td>
167                        <td class="line">
168                                <xsl:apply-templates select="DateSingle"/>
169                                <xsl:apply-templates select="DateRange"/>
170                        </td>
171                </tr>
172        </xsl:template>
173
174        <!-- DateRange  -->
175        <xsl:template match="DateRange">
176                Date Start: <xsl:value-of select="DateRangeStart"/><br/>
177                Date End: <xsl:value-of select="DateRangeEnd"/><br/>                   
178        </xsl:template>
179
180        <!-- DateSingle  -->
181        <xsl:template match="DateSingle">
182                <xsl:value-of select="."/><br/>
183        </xsl:template>
184
185        <!-- dgDataCurator  -->
186        <xsl:template match="dgDataCurator">
187                <tr onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
188                        <td class="line"><b>Data Curator</b><br/></td>
189                        <td class="line">
190                                <xsl:value-of select="dgRoleHolder/dgOrganisation/name"/><br/>
191                                email: <xsl:value-of select="contactDetails/eMail"/><br/>                       
192                                tel: <xsl:value-of select="contactDetails/telephone"/><br/>                     
193                                fax: <xsl:value-of select="contactDetails/fax"/><br/>                   
194                        </td>
195                </tr>
196        </xsl:template>
197
198        <!-- First RelatedDeployment -->
199        <xsl:template match="dgDataEntity/RelatedDeployment[1]">
200                <xsl:apply-templates select="activity"/>
201                <xsl:apply-templates select="dataproductiontool"/>
202                <xsl:apply-templates select="observationstation"/>
203        </xsl:template>
204               
205        <!-- First activity -->
206        <xsl:template match="RelatedDeployment[1]/activity">
207                <TABLE cellSpacing="0" cellPadding="3" width="100%" border="0">
208                        <TBODY>
209                                <TR>
210                                        <TD class="lineHead" width="60%"><span class="headingO">Browse Activities</span></TD>
211                                </TR>
212                                <TR onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
213                                        <TD class="line">
214                                                <a class="shortdesc" href="#">
215                                                        <xsl:value-of select="name"/>
216                                                </a><BR/>
217                                                <span class="subText">Repository:</span> 
218                                                <span class="blue">
219                                                        <xsl:value-of select="dgMetadataID/repositoryIdentifier"/>
220                                                </span> 
221                                                <SPAN class="subText">| Identifier</SPAN> 
222                                                <span class="blue">
223                                                        <xsl:value-of select="dgMetadataID/localIdentifier"/>
224                                                </span>
225                                        </TD>
226                                </TR>
227                                <xsl:apply-templates select="ancestor::dgDataEntity/RelatedDeployment[position()>1]/activity"/>
228                        </TBODY>
229                </TABLE><BR/>                   
230        </xsl:template>
231
232        <!-- First dataproductiontool -->
233        <xsl:template match="RelatedDeployment[1]/dataproductiontool">
234                <TABLE cellSpacing="0" cellPadding="3" width="100%" border="0">
235                        <TBODY>
236                                <TR>
237                                        <TD class="lineHead" width="60%"><span class="headingO">Browse Data Production Tools</span></TD>
238                                </TR>
239                                <TR onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
240                                        <TD class="line">
241                                                <a class="shortdesc" href="#">
242                                                        <xsl:value-of select="name"/>
243                                                </a><BR/>
244                                                <span class="subText">Repository:</span> 
245                                                <span class="blue">
246                                                        <xsl:value-of select="dgMetadataID/repositoryIdentifier"/>
247                                                </span> 
248                                                <SPAN class="subText">| Identifier</SPAN> 
249                                                <span class="blue">
250                                                        <xsl:value-of select="dgMetadataID/localIdentifier"/>
251                                                </span>
252                                        </TD>
253                                </TR>
254                                <xsl:apply-templates select="ancestor::dgDataEntity/RelatedDeployment[position()>1]/dataproductiontool"/>
255                        </TBODY>
256                </TABLE><BR/>                   
257        </xsl:template>
258               
259        <!-- First observationstation -->
260        <xsl:template match="RelatedDeployment[1]/observationstation">
261                <TABLE cellSpacing="0" cellPadding="3" width="100%" border="0">
262                        <TBODY>
263                                <TR>
264                                        <TD class="lineHead" width="60%"><span class="headingO">Browse Observation Station</span></TD>
265                                </TR>
266                                <TR onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
267                                        <TD class="line">
268                                                <a class="shortdesc" href="#">
269                                                        <xsl:value-of select="name"/>
270                                                </a><BR/>
271                                                <span class="subText">Repository:</span> 
272                                                <span class="blue">
273                                                        <xsl:value-of select="dgMetadataID/repositoryIdentifier"/>
274                                                </span> 
275                                                <SPAN class="subText">| Identifier</SPAN> 
276                                                <span class="blue">
277                                                        <xsl:value-of select="dgMetadataID/localIdentifier"/>
278                                                </span>
279                                        </TD>
280                                </TR>
281                                <xsl:apply-templates select="ancestor::dgDataEntity/RelatedDeployment[position()>1]/observationstation"/>
282                        </TBODY>
283                </TABLE><BR/>                   
284        </xsl:template>
285               
286        <!-- Subsequent activity -->
287        <xsl:template match="RelatedDeployment[position()>1]/activity">
288                <xsl:if test="parent::*/preceding-sibling::*/activity != .">
289                        <TR onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
290                                <TD class="line">
291                                        <a class="shortdesc" href="#">
292                                                <xsl:value-of select="name"/>
293                                        </a><BR/>
294                                        <span class="subText">Repository:</span> 
295                                        <span class="blue">
296                                                <xsl:value-of select="dgMetadataID/repositoryIdentifier"/>
297                                        </span> 
298                                        <SPAN class="subText">| Identifier</SPAN> 
299                                        <span class="blue">
300                                                <xsl:value-of select="dgMetadataID/localIdentifier"/>
301                                        </span>
302                                </TD>
303                        </TR>
304                </xsl:if>
305        </xsl:template>
306               
307        <!-- Subsequent dataproductiontool -->
308        <xsl:template match="RelatedDeployment[position()>1]/dataproductiontool">
309                <xsl:if test="parent::*/preceding-sibling::*/dataproductiontool != .">
310                        <TR onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
311                                <TD class="line">
312                                        <a class="shortdesc" href="#">
313                                                <xsl:value-of select="name"/>
314                                        </a><BR/>
315                                        <span class="subText">Repository:</span> 
316                                        <span class="blue">
317                                                <xsl:value-of select="dgMetadataID/repositoryIdentifier"/>
318                                        </span> 
319                                        <SPAN class="subText">| Identifier</SPAN> 
320                                        <span class="blue">
321                                                <xsl:value-of select="dgMetadataID/localIdentifier"/>
322                                        </span>
323                                </TD>
324                        </TR>
325                </xsl:if>
326        </xsl:template>
327               
328        <!-- Subsequent observationstation -->
329        <xsl:template match="RelatedDeployment[position()>1]/observationstation">
330                <xsl:if test="parent::*/preceding-sibling::*/observationstation != .">
331                        <TR onmouseover="this.className='lineHiLite';" onmouseout="this.className='line';">
332                                <TD class="line">
333                                        <a class="shortdesc" href="#">
334                                                <xsl:value-of select="name"/>
335                                        </a><BR/>
336                                        <span class="subText">Repository:</span> 
337                                        <span class="blue">
338                                                <xsl:value-of select="dgMetadataID/repositoryIdentifier"/>
339                                        </span> 
340                                        <SPAN class="subText">| Identifier</SPAN> 
341                                        <span class="blue">
342                                                <xsl:value-of select="dgMetadataID/localIdentifier"/>
343                                        </span>
344                                </TD>
345                        </TR>
346                </xsl:if>
347        </xsl:template>
348               
349        <!-- This rule ignores any element not explicitly dealt with by previous rules -->
350        <xsl:template match="*">
351        </xsl:template>
352       
353</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.