Project

General

Profile

1 295 berkley
<?xml version="1.0"?>
2
<!--
3
  * marine.xsl
4
  *
5
  *      Authors: Matt Jones, Chad Berkley
6
  *    Copyright: 2000 Regents of the University of California and the
7
  *               National Center for Ecological Analysis and Synthesis
8
  *  For Details: http://www.nceas.ucsb.edu/
9
  *      Created: 2000 July 20
10 304 berkley
  *    File Info: '$Id$'
11 295 berkley
  *
12
  * This is an XSLT (http://www.w3.org/TR/xslt) stylesheet designed to
13
  * convert an XML file showing the resultset of a query
14
  * into an HTML format suitable for rendering with modern web browsers.
15
  * This stylesheet formats .
16
-->
17
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
18
  <xsl:output method="html"/>
19
  <xsl:template match="/">
20
    <html>
21
      <head>
22 438 berkley
        <link rel="stylesheet" type="text/css" href="@html-path@/marine/rowcol.css" />
23 295 berkley
      </head>
24
      <body class="emlbody">
25 304 berkley
        <a name="top" />
26 318 berkley
        <table width="100%">
27
        <tr>
28
          <td align="left" valign="top">
29 400 berkley
            <form action="@html-path@/servlet/marine#browse"
30 318 berkley
                  method="POST">
31 400 berkley
             <input type="hidden" name="action" value="query" />
32 318 berkley
    	       <input type="hidden" name="query" value="" />
33
    	       <input type="hidden" name="qformat" value="html" />
34 400 berkley
             <input type="hidden" name="operator" value="UNION" />
35
             <input type="hidden" name="anyfield" value="%" />
36 420 berkley
             <input type="hidden" name="returnfield"
37
               value="resource/dataset/originator/individualName/surName" />
38
             <input type="hidden" name="returnfield"
39
               value="resource/dataset/originator/individualName/givenName" />
40
             <input type="hidden" name="returnfield"
41
               value="resource/dataset/originator/organizationName" />
42 469 berkley
             <input type="hidden" name="returnfield"
43
               value="resource/dataset/title" />
44
             <input type="hidden" name="returnfield"
45
              value="resource/dataset/keywordInfo/keyword" />
46
             <input type="hidden" name="returndoc"
47
             value="-//NCEAS//resource//EN" />
48
             <input type="hidden" name="returndoc"
49
              value="-//NCEAS//eml-dataset//EN" />
50 416 berkley
             <input border="0" type="image"
51
                    src="@image-path@/marine/browsebutton.jpg"
52
                    alt="browse the database"
53
                    size="15" /><br/>
54
             <a href="#beginform" border="0">
55
              <img border="0"
56
                   src="@image-path@/marine/skipbutton.jpg"
57
                   alt="skip the introduction"/>
58
            </a>
59
           </form>
60
    	   </td>
61
         <td align="center" valign="top">
62
            <img src="@image-path@/marine/logo-line.gif" alt="NCEAS Logo" />
63
         </td>
64
         <td align="right" valign="top">
65 400 berkley
            <form action="@html-path@/servlet/marine#browse"
66 318 berkley
                  method="POST">
67 416 berkley
               <font size="2">
68 386 berkley
               Quick Search: <input type="text" name="anyfield" size="10" />
69 416 berkley
               </font>
70 318 berkley
               <input type="hidden" name="action" value="query" />
71
    	       <input type="hidden" name="qformat" value="html" />
72
    	       <input type="hidden" name="operator" value="UNION" />
73 438 berkley
74
             <input type="hidden" name="returnfield"
75
              value="resource/dataset/originator/individualName/surName" />
76
             <input type="hidden" name="returnfield"
77
              value="resource/dataset/originator/individualName/givenName" />
78
            <input type="hidden" name="returnfield"
79
             value="resource/dataset/originator/organizationName" />
80 469 berkley
            <input type="hidden" name="returnfield"
81
             value="resource/dataset/title" />
82
            <input type="hidden" name="returnfield"
83
             value="resource/dataset/keywordInfo/keyword" />
84
            <input type="hidden" name="returndoc"
85
             value="-//NCEAS//resource//EN" />
86
            <input type="hidden" name="returndoc"
87
             value="-//NCEAS//eml-dataset//EN" />
88 318 berkley
    	     </form>
89 416 berkley
         </td>
90
    	 </tr>
91
       </table>
92 318 berkley
93
        <hr />
94 469 berkley
        <center><h3>MARINE Search Interface</h3></center>
95 318 berkley
        <font size="2">
96
        <p class="intro">
97 469 berkley
          This page is a search tool for
98 386 berkley
          <a href="http://www.mms.gov/omm/pacific/enviro/mint.htm">MARINE</a>
99 469 berkley
          scientists to retrieve information from
100 318 berkley
          the NCEAS Ecological Metadata Database.  For more information on
101
          this project, please read the
102 386 berkley
          <a href=
103
          "http://www.nceas.ucsb.edu/marinedata/">
104 318 berkley
          proposal abstract</a>.
105
        </p>
106 304 berkley
107 318 berkley
        <p class="intro">
108 386 berkley
           Each step below contains several fields relating to a part of the
109
           dataset.  You may also browse
110
           the entire database by simply clicking the browse link at the top
111
           of the page.
112 318 berkley
           Clicking on the buttons next to each data line will give you more
113 386 berkley
           information about the dataset or allow you to download the entire
114
           dataset.
115 469 berkley
           Please note some fields in the search forms will not be pertinent to
116 386 berkley
           your dataset.
117
           If this is the case, simply leave any field blank to omit it from
118
           the searching.
119 318 berkley
        </p>
120 304 berkley
121 318 berkley
        <p class="intro">
122 386 berkley
           Note that the wildcard character is a percent sign (%).  It may
123
           be used in any
124 469 berkley
           field to denote "any" value.  For example, the search "do%" would
125 386 berkley
           return "document"
126
           or "dog" or "domino" or "dolphin", etc.  Placing a single percent
127
           sign in a field
128
           will return any document that contains that field.  Placing a
129
           percent sign in
130
           the "Any Field" field is equivalent to browsing the database (i.e.
131
           it will return
132 318 berkley
           every document).
133
        </p>
134
        </font>
135 416 berkley
        <hr />
136 400 berkley
        <form action="@html-path@/servlet/marine#browse"
137 298 berkley
              method="POST">
138 416 berkley
        <a name="beginform" />
139
        <table width="100%" border="0">
140 304 berkley
          <tr>
141 318 berkley
             <td valign="bottom" width = "25">
142 416 berkley
        	<img src="@image-path@/marine/step1.jpg" alt="step 1"/>
143 304 berkley
             </td>
144 318 berkley
             <td>
145
               <p>
146 416 berkley
               <b><font size="2">Keywords and Title</font></b><br/>
147 318 berkley
               <font size="2">
148 386 berkley
                 Enter any keywords that might partain to the dataset you
149
                 are looking for.
150
                 The "Any Field" text box will search for any field in any
151
                 document for
152
                 the text you provide.  The title and alternate title will
153
                 search for text
154
                 in the title or alternate title fields of a document only.
155
                 Fields left
156 318 berkley
                 blank will not be used in the search criteria.
157
               </font></p>
158
             </td>
159 304 berkley
          </tr>
160
        </table>
161 318 berkley
162 304 berkley
        <table width="100%">
163 298 berkley
             <tr>
164 416 berkley
                <td align="right">Title:</td>
165 318 berkley
                <td>
166 416 berkley
                  <input type="text" name="title" size="30">
167 318 berkley
                  <xsl:attribute name="value">
168
                  <xsl:value-of select="resultset/query/title" />
169
                  </xsl:attribute>
170
                  </input>
171
                </td>
172 416 berkley
                <td align="right">Alternate Title:</td>
173
             	  <td>
174
                <input type="text" name="alttitle" size="30">
175
             	  <xsl:attribute name="value">
176
                  <xsl:value-of select="resultset/query/alttitle" />
177 318 berkley
                  </xsl:attribute>
178
                  </input>
179
                </td>
180 298 berkley
             </tr>
181 304 berkley
             <tr>
182 416 berkley
              <td align="right">Keywords:</td>
183
                <td>
184
                  <input type="text" name="keyword" size="30">
185
                  <xsl:attribute name="value">
186
                  <xsl:value-of select="resultset/query/keyword" />
187 318 berkley
                  </xsl:attribute>
188
                  </input>
189
                </td>
190 416 berkley
                <td align="right">Any Field:</td>
191 318 berkley
                <td>
192 416 berkley
                  <input type="text" name="anyfield" size="30">
193 318 berkley
                  <xsl:attribute name="value">
194 416 berkley
                  <xsl:value-of select="resultset/query/anyfield" />
195 318 berkley
                  </xsl:attribute>
196
                  </input>
197
                </td>
198 304 berkley
             </tr>
199
        </table>
200 318 berkley
201 416 berkley
        <table width="100%" border="0">
202 304 berkley
          <tr>
203 416 berkley
             <td valign="center" align="left" width="25">
204
        	   <img src="@image-path@/marine/step2.jpg" alt="step 2"/>
205 318 berkley
             </td>
206
             <td>
207 416 berkley
             <font size="2"><b>Associated Individual Information</b><br/>
208
        	   Enter data about an owner or someone else who is associated with
209
             the dataset. Any field(s) left blank will not be used
210 318 berkley
        	   in the search criteria.
211
        	   </font>
212 304 berkley
             </td>
213
          </tr>
214
        </table>
215
        <table width="100%">
216
             <tr>
217 416 berkley
                <td align="right">First Name:</td>
218 318 berkley
                <td>
219 416 berkley
                  <input type="text" name="givenName" size="30">
220 318 berkley
             	  <xsl:attribute name="value">
221 404 berkley
                  <xsl:value-of select="resultset/query/givenName" />
222 318 berkley
                  </xsl:attribute>
223
                  </input>
224
                </td>
225 416 berkley
                <td align="right">Last Name:</td>
226 406 berkley
                <td>
227 416 berkley
                  <input type="text" name="surName" size="30">
228 318 berkley
             	  <xsl:attribute name="value">
229 404 berkley
                  <xsl:value-of select="resultset/query/surName" />
230 318 berkley
                  </xsl:attribute>
231
                  </input>
232
                </td>
233 304 berkley
             </tr>
234 318 berkley
             <tr>
235 416 berkley
             	<td align="right">Organization:</td>
236 318 berkley
             	<td>
237 416 berkley
             	  <input type="text" name="organizationName" size="30">
238 318 berkley
             	  <xsl:attribute name="value">
239
                  <xsl:value-of select="resultset/query/organizationName" />
240
                  </xsl:attribute>
241
                  </input>
242
                </td>
243 416 berkley
             	<td align="right">Email Address:</td>
244 318 berkley
             	<td>
245 416 berkley
             	  <input type="text" name="electronicMailAddress" size="30">
246 318 berkley
             	  <xsl:attribute name="value">
247
                  <xsl:value-of select="resultset/query/electronicMailAddress" />
248
                  </xsl:attribute>
249
                  </input>
250
                </td>
251
             </tr>
252
           </table>
253 416 berkley
        <table width="100%" border="0">
254 304 berkley
          <tr>
255 416 berkley
            <td valign="center" align="left" width="25">
256
              <img src="@image-path@/marine/step3.jpg" alt="step 3"/>
257
            </td>
258
            <td>
259
              <p>
260 469 berkley
              <b><font size="2">Search the Database</font></b><br/>
261 416 berkley
              <font size="2">
262 469 berkley
              Click the Search button to submit your search.  The results will be
263 416 berkley
              displayed below under the heading "Results".
264
              </font>
265
              </p>
266
            </td>
267 304 berkley
          </tr>
268
        </table>
269 400 berkley
      <input type="hidden" name="action" value="query" />
270 304 berkley
    	<input type="hidden" name="qformat" value="html" />
271
    	<input type="hidden" name="operator" value="UNION" />
272 420 berkley
      <input type="hidden" name="returnfield"
273 422 berkley
             value="resource/dataset/originator/individualName/surName" />
274 420 berkley
      <input type="hidden" name="returnfield"
275 422 berkley
            value="resource/dataset/originator/individualName/givenName" />
276 420 berkley
      <input type="hidden" name="returnfield"
277 422 berkley
            value="resource/dataset/originator/organizationName" />
278 455 berkley
      <input type="hidden" name="returnfield"
279 469 berkley
             value="resource/dataset/title" />
280
      <input type="hidden" name="returnfield"
281
             value="resource/dataset/keywordInfo/keyword" />
282
      <input type="hidden" name="returndoc"
283
             value="-//NCEAS//resource//EN" />
284
      <input type="hidden" name="returndoc"
285
             value="-//NCEAS//eml-dataset//EN" />
286
      <input type="submit" value="Search" />
287 422 berkley
      <input type="reset" value="Clear Form" />
288 304 berkley
289 422 berkley
    </form>
290 304 berkley
291 438 berkley
    <a name="browse" />
292
	  <font size="2"><xsl:number value="count(resultset/document)" /> documents
293
     found.</font>
294
	  <!-- This tests to see if there are returned documents,
295
	       if there are not then don't show the query results -->
296
	  <xsl:if test="count(resultset/document) &gt; 0">
297
	    <center>
298
        <u><h2>Results</h2></u>
299
      </center>
300
301 295 berkley
        <table width="100%">
302 438 berkley
          <tr class="rowodd">
303
           <th>&nbsp;</th>
304
           <th><font size="2"><xsl:text>Title</xsl:text></font></th>
305
           <th><font size="2"><xsl:text>Contacts</xsl:text></font></th>
306
           <th><font size="2"><xsl:text>Organization</xsl:text></font></th>
307 455 berkley
           <th><font size="2"><xsl:text>Keywords</xsl:text></font></th>
308 477 berkley
           <!--<th><font size="2"><xsl:text>Related Documents</xsl:text></font></th>-->
309 438 berkley
          </tr>
310 406 berkley
	      <font size="2">
311 469 berkley
312
        <!--<xsl:for-each select="resultset/document[doctype = 'resource']">-->
313
        <xsl:for-each select="resultset/document">
314 318 berkley
          <xsl:sort select="doctitle"/>
315 295 berkley
          <tr valign="top">
316
            <xsl:attribute name="class">
317
              <xsl:choose>
318
                <xsl:when test="position() mod 2 = 1">rowwhite</xsl:when>
319
                <xsl:when test="position() mod 2 = 0">rowlight</xsl:when>
320
              </xsl:choose>
321
            </xsl:attribute>
322
323
          <td>
324 455 berkley
            <form action="@html-path@/servlet/marine" method="POST">
325
            <!-- abstractpath tells the servlet where the abstract is in the
326
                 document.  The % sign is used because the path could be
327
                 resource/literature or resource/dataset. -->
328
            <input type="hidden" name="abstractpath" value="resource/%/abstract" />
329
            <input type="hidden" name="action" value="getdocument"/>
330 456 berkley
            <xsl:for-each select="./relation">
331
              <input type="hidden" name="relation">
332
                <xsl:attribute name="value" >
333
                  <xsl:value-of select="./relationdoc" />
334
                </xsl:attribute>
335
              </input>
336
            </xsl:for-each>
337 295 berkley
              <input border="0" type="image">
338
                <xsl:attribute name="src">
339
                  <xsl:choose>
340
                    <xsl:when test="position()
341 416 berkley
                         mod 2 = 1">@image-path@/marine/whiteMenu.jpg</xsl:when>
342 295 berkley
                    <xsl:when test="position()
343 416 berkley
                         mod 2 = 0">@image-path@/marine/blueMenu.jpg</xsl:when>
344 295 berkley
                  </xsl:choose>
345
                </xsl:attribute>
346
                <xsl:attribute name="name">
347
                  <xsl:value-of select="./docid"/>
348
                </xsl:attribute>
349
              </input>
350 455 berkley
              </form>
351 482 berkley
              <pre>Document ID: <xsl:value-of select="./docid"/></pre>
352 295 berkley
          </td>
353 477 berkley
          <td>
354 488 berkley
            <font size="4">
355
              <b>
356
              <xsl:value-of select="./param[@name='resource/dataset/title']"/>
357
              </b><br/>
358
              &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
359
            </font>
360
            <a>
361 487 berkley
              <xsl:attribute name="href">
362
                <xsl:text>@html-path@/servlet/marine/?action=getdocument&amp;qformat=html&amp;docid=</xsl:text>
363
                <xsl:value-of select="./docid"/>
364
              </xsl:attribute>
365 488 berkley
              <font size="2">
366
              Dataset Information
367
              </font>
368
            </a><br/><br/>
369
            <i>Related Documents:</i><br/>
370 477 berkley
            <xsl:if test="count(./relation) &gt; 0">
371
              <xsl:for-each select="./relation">
372
              <xsl:text>&nbsp;</xsl:text><xsl:text>&nbsp;</xsl:text>
373
              <xsl:text>&nbsp;</xsl:text><xsl:text>&nbsp;</xsl:text>
374
              <xsl:text>&nbsp;</xsl:text><xsl:text>&nbsp;</xsl:text>
375
                <a>
376 482 berkley
                  <xsl:if test="starts-with(./relationdoc, 'http')">
377
                    <xsl:attribute name="href">
378
                      <xsl:value-of select="./relationdoc" />
379
                    </xsl:attribute>
380 488 berkley
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-variable//EN'">
381
                      <font size="2">Variable Information</font>
382
                    </xsl:if>
383
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-file//EN'">
384
                      <font size="2">File Information</font>
385
                    </xsl:if>
386
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-access//EN'">
387
                      <font size="2">Access Information</font>
388
                    </xsl:if>
389
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-context//EN'">
390
                      <font size="2">Context Information</font>
391
                    </xsl:if>
392
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-software//EN'">
393
                      <font size="2">Software Information</font>
394
                    </xsl:if>
395
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-status//EN'">
396
                      <font size="2">Status Information</font>
397
                    </xsl:if>
398
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-supplement//EN'">
399
                      <font size="2">Supplemental Information</font>
400
                    </xsl:if>
401
                    <!-- If the doctype is null, this file is assumed to
402
                         be a data file
403
                     -->
404
                    <xsl:if test="./relationdoctype = 'null'">
405
                      <font size="2">Data File</font>
406
                    </xsl:if>
407 482 berkley
                  </xsl:if>
408
                  <xsl:if test="starts-with(./relationdoc, 'metacat')">
409
                    <xsl:attribute name="href">
410
                      <xsl:text>http://dev.nceas.ucsb.edu@html-path@/servlet/marine/?action=getrelateddocument&amp;qformat=html&amp;url=</xsl:text>
411
                      <xsl:value-of select="./relationdoc" />
412
                    </xsl:attribute>
413 488 berkley
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-variable//EN'">
414
                      <font size="2">Variable Information</font>
415
                    </xsl:if>
416
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-file//EN'">
417
                      <font size="2">File Information</font>
418
                    </xsl:if>
419
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-access//EN'">
420
                      <font size="2">Access Information</font>
421
                    </xsl:if>
422
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-context//EN'">
423
                      <font size="2">Context Information</font>
424
                    </xsl:if>
425
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-software//EN'">
426
                      <font size="2">Software Information</font>
427
                    </xsl:if>
428
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-status//EN'">
429
                      <font size="2">Status Information</font>
430
                    </xsl:if>
431
                    <xsl:if test="./relationdoctype = '-//NCEAS//eml-supplement//EN'">
432
                      <font size="2">Supplemental Information</font>
433
                    </xsl:if>
434
                    <!-- If the doctype is null, this file is assumed to
435
                         be a data file
436
                     -->
437
                    <xsl:if test="./relationdoctype = 'null'">
438
                      <font size="2">Data File</font>
439
                    </xsl:if>
440 482 berkley
                  </xsl:if>
441 477 berkley
                </a>
442
                <br/>
443 487 berkley
              </xsl:for-each>
444 477 berkley
            </xsl:if>
445 318 berkley
          </td>
446 400 berkley
          <td>
447 477 berkley
            <xsl:for-each
448 456 berkley
               select="./param[@name='resource/dataset/originator/individualName/surName']" >
449 455 berkley
              <font size="2">
450
              <xsl:value-of
451 456 berkley
                select="." />
452 455 berkley
              </font>
453 469 berkley
              <br/>
454 400 berkley
455 456 berkley
      <!--        <font size="2">
456 455 berkley
              <xsl:value-of
457
                select="./param[@name='resource/dataset/originator/individualName/surName']" />
458
              </font><br/>
459 456 berkley
      -->
460 477 berkley
            </xsl:for-each>
461
            <xsl:text>&nbsp;</xsl:text>
462 318 berkley
          </td>
463 416 berkley
          <td>
464 422 berkley
              <font size="2">
465
              <xsl:value-of
466
                select="./param[@name='resource/dataset/originator/organizationName']" />
467
              </font>
468 318 berkley
              <xsl:text>&nbsp;</xsl:text>
469
          </td>
470 400 berkley
471 295 berkley
          <td>
472 455 berkley
           <xsl:for-each
473
            select="./param[@name='resource/dataset/keywordInfo/keyword']" >
474
              <font size="2">
475
              <xsl:value-of
476
               select="." />
477
               <br/>
478
              </font>
479
            </xsl:for-each>
480
            <xsl:text>&nbsp;</xsl:text>
481 295 berkley
          </td>
482 477 berkley
          <!--
483 318 berkley
          <td>
484 469 berkley
            <xsl:text>&nbsp;</xsl:text>
485 455 berkley
            <xsl:if test="count(./relation) &gt; 0">
486
              <form action="@html-path@/servlet/marine" method="POST">
487
              <input type="hidden" name="action" value="getrelateddocument"/>
488
              <input type="hidden" name="qformat" value="xml" />
489
              <xsl:for-each select="./relation">
490 469 berkley
                <font size="2">
491
                <input type="radio" name="url">
492
                <xsl:attribute name="value" >
493
                  <xsl:value-of select="./relationdoc" />
494
                </xsl:attribute>
495 455 berkley
                <xsl:value-of select="./relationdoc" />
496 469 berkley
                </input>
497
                </font>
498
                <br/>
499 455 berkley
             </xsl:for-each>
500
             <input type="submit" value="Get" />
501
             </form>
502
            </xsl:if>
503 406 berkley
          </td>
504 477 berkley
          -->
505 295 berkley
          </tr>
506
        </xsl:for-each>
507 406 berkley
        </font>
508 295 berkley
        </table>
509
510 469 berkley
        <h3><a href="#top">New Search</a></h3>
511 318 berkley
        </xsl:if>
512
513 295 berkley
      </body>
514
    </html>
515
  </xsl:template>
516
517
</xsl:stylesheet>