source: main/trunk/greenstone2/web/style/oai2.xsl@ 22210

Last change on this file since 22210 was 22210, checked in by kjdon, 14 years ago

removed the eprints specific stuff; a few changes to make the display nicer, eg added in set description display; added code for nicely displaying qualified dublin core metadata

File size: 27.9 KB
Line 
1<?xml version="1.0" encoding="utf-8"?>
2
3<!--
4
5 XSL Transform to convert OAI 2.0 responses into XHTML
6
7 By Christopher Gutteridge, University of Southampton
8
9-->
10
11<!--
12
13Copyright (c) 2000-2004 University of Southampton, UK. SO17 1BJ.
14
15EPrints 2 is free software; you can redistribute it and/or modify
16it under the terms of the GNU General Public License as published by
17the Free Software Foundation; either version 2 of the License, or
18(at your option) any later version.
19
20EPrints 2 is distributed in the hope that it will be useful,
21but WITHOUT ANY WARRANTY; without even the implied warranty of
22MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23GNU General Public License for more details.
24
25You should have received a copy of the GNU General Public License
26along with EPrints 2; if not, write to the Free Software
27Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
28
29-->
30
31<!--
32
33 All the elements really needed for EPrints are done but if
34 you want to use this XSL for other OAI archive you may want
35 to make some minor changes or additions.
36
37 Not Done
38 The 'about' section of 'record'
39 The 'compession' part of 'identify'
40 The optional attributes of 'resumptionToken'
41 The optional 'setDescription' container of 'set'
42
43 All the links just link to oai_dc versions of records.
44
45-->
46
47<!-- Modified for the Greenstone OAI server
48
49 * Rules for Qualified Dublin Core added (gsdl_qdc)
50 * EPrints specific stuff removed
51-->
52
53
54<xsl:stylesheet
55 version="1.0"
56 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
57 xmlns:oai="http://www.openarchives.org/OAI/2.0/"
58>
59
60<xsl:output method="html"/>
61
62
63
64<xsl:template name="style">
65td.value {
66 vertical-align: top;
67 padding-left: 1em;
68 padding: 3px;
69}
70td.key {
71 background-color: #e0e0ff;
72 padding: 3px;
73 text-align: right;
74 border: 1px solid #c0c0c0;
75 white-space: nowrap;
76 font-weight: bold;
77 vertical-align: top;
78}
79.dcdata td.key {
80 background-color: #ffffe0;
81}
82body {
83 margin: 1em 2em 1em 2em;
84}
85h1, h2, h3 {
86 font-family: sans-serif;
87 clear: left;
88}
89h1 {
90 padding-bottom: 4px;
91 margin-bottom: 0px;
92}
93h2 {
94 margin-bottom: 0.5em;
95}
96h3 {
97 margin-bottom: 0.3em;
98 font-size: medium;
99}
100.link {
101 border: 1px outset #88f;
102 background-color: #c0c0ff;
103 padding: 1px 4px 1px 4px;
104 font-size: 80%;
105 text-decoration: none;
106 font-weight: bold;
107 font-family: sans-serif;
108 color: black;
109}
110.link:hover {
111 color: red;
112}
113.link:active {
114 color: red;
115 border: 1px inset #88f;
116 background-color: #a0a0df;
117}
118.oaiRecord, .oaiRecordTitle {
119 background-color: #f0f0ff;
120 border-style: solid;
121 border-color: #d0d0d0;
122}
123h2.oaiRecordTitle {
124 background-color: #e0e0ff;
125 font-size: medium;
126 font-weight: bold;
127 padding: 10px;
128 border-width: 2px 2px 0px 2px;
129 margin: 0px;
130}
131.oaiRecord {
132 margin-bottom: 3em;
133 border-width: 2px;
134 padding: 10px;
135}
136
137.results {
138 margin-bottom: 1.5em;
139}
140ul.quicklinks {
141 margin-top: 2px;
142 padding: 4px;
143 text-align: left;
144 border-bottom: 2px solid #ccc;
145 border-top: 2px solid #ccc;
146 clear: left;
147}
148ul.quicklinks li {
149 font-size: 80%;
150 display: inline;
151 list-stlye: none;
152 font-family: sans-serif;
153}
154p.intro {
155 font-size: 80%;
156}
157<xsl:call-template name='xmlstyle' />
158</xsl:template>
159
160<xsl:variable name='identifier' select="substring-before(concat(substring-after(/oai:OAI-PMH/oai:request,'identifier='),'&amp;'),'&amp;')" />
161
162<xsl:template match="/">
163<html>
164 <head>
165 <title>OAI 2.0 Request Results</title>
166 <style><xsl:call-template name="style"/></style>
167 </head>
168 <body>
169 <h1>OAI 2.0 Request Results</h1>
170 <xsl:call-template name="quicklinks"/>
171 <p class="intro">You are viewing an HTML version of the XML OAI response. To see the underlying XML use your web browsers view source option. More information about this XSLT is at the <a href="#moreinfo">bottom of the page</a>.</p>
172 <xsl:apply-templates select="/oai:OAI-PMH" />
173 <xsl:call-template name="quicklinks"/>
174 <h2><a name="moreinfo">About the XSLT</a></h2>
175 <p>An XSLT file has converted the <a href="http://www.openarchives.org">OAI-PMH 2.0</a> responses into XHTML which looks nice in a browser which supports XSLT such as Mozilla, Firebird and Internet Explorer. The XSLT file was created by <a href="http://www.ecs.soton.ac.uk/people/cjg">Christopher Gutteridge</a> at the University of Southampton as part of the <a href="http://software.eprints.org">GNU EPrints system</a>, and modified by the NZDL Project for use with the Greenstone OAI server. It is freely redistributable under the <a href="http://www.gnu.org">GPL</a>.</p><p>If you want to use the XSL file on your own OAI interface you may but due to the way XSLT works you must install the XSL file on the same server as the OAI script, you can't just link to this copy.</p><p>For more information or to download the XSL file please see the <a href="http://software.eprints.org/xslt.php">OAI to XHTML XSLT homepage</a>.</p>
176
177 </body>
178</html>
179</xsl:template>
180
181<xsl:template name="quicklinks">
182 <ul class="quicklinks">
183 <li><a href="?verb=Identify">Identify</a> | </li>
184 <li><a href="?verb=ListRecords&amp;metadataPrefix=oai_dc">ListRecords (oai_dc)</a> | </li>
185 <li><a href="?verb=ListSets">ListSets</a> | </li>
186 <li><a href="?verb=ListMetadataFormats">ListMetadataFormats</a> | </li>
187 <li><a href="?verb=ListIdentifiers&amp;metadataPrefix=oai_dc">ListIdentifiers (oai_dc)</a></li>
188 </ul>
189</xsl:template>
190
191
192<xsl:template match="/oai:OAI-PMH">
193 <table class="values">
194 <tr><td class="key">Datestamp of response</td>
195 <td class="value"><xsl:value-of select="oai:responseDate"/></td></tr>
196 <tr><td class="key">Request URL</td>
197 <td class="value"><xsl:value-of select="oai:request"/></td></tr>
198 </table>
199<!-- verb: [<xsl:value-of select="oai:request/@verb" />]<br /> -->
200 <xsl:choose>
201 <xsl:when test="oai:error">
202 <h2>OAI Error(s)</h2>
203 <p>The request could not be completed due to the following error or errors.</p>
204 <div class="results">
205 <xsl:apply-templates select="oai:error"/>
206 </div>
207 </xsl:when>
208 <xsl:otherwise>
209 <p>Request was of type <xsl:value-of select="oai:request/@verb"/>.</p>
210 <div class="results">
211 <xsl:apply-templates select="oai:Identify" />
212 <xsl:apply-templates select="oai:GetRecord"/>
213 <xsl:apply-templates select="oai:ListRecords"/>
214 <xsl:apply-templates select="oai:ListSets"/>
215 <xsl:apply-templates select="oai:ListMetadataFormats"/>
216 <xsl:apply-templates select="oai:ListIdentifiers"/>
217 </div>
218 </xsl:otherwise>
219 </xsl:choose>
220</xsl:template>
221
222
223<!-- ERROR -->
224
225<xsl:template match="/oai:OAI-PMH/oai:error">
226 <table class="values">
227 <tr><td class="key">Error Code</td>
228 <td class="value"><xsl:value-of select="@code"/></td></tr>
229 </table>
230 <p class="error"><xsl:value-of select="." /></p>
231</xsl:template>
232
233<!-- IDENTIFY -->
234
235<xsl:template match="/oai:OAI-PMH/oai:Identify">
236 <table class="values">
237 <tr><td class="key">Repository Name</td>
238 <td class="value"><xsl:value-of select="oai:repositoryName"/></td></tr>
239 <tr><td class="key">Base URL</td>
240 <td class="value"><xsl:value-of select="oai:baseURL"/></td></tr>
241 <tr><td class="key">Protocol Version</td>
242 <td class="value"><xsl:value-of select="oai:protocolVersion"/></td></tr>
243 <tr><td class="key">Earliest Datestamp</td>
244 <td class="value"><xsl:value-of select="oai:earliestDatestamp"/></td></tr>
245 <tr><td class="key">Deleted Record Policy</td>
246 <td class="value"><xsl:value-of select="oai:deletedRecord"/></td></tr>
247 <tr><td class="key">Granularity</td>
248 <td class="value"><xsl:value-of select="oai:granularity"/></td></tr>
249 <xsl:apply-templates select="oai:adminEmail"/>
250 </table>
251 <xsl:apply-templates select="oai:description"/>
252<!--no warning about unsupported descriptions -->
253</xsl:template>
254
255<xsl:template match="/oai:OAI-PMH/oai:Identify/oai:adminEmail">
256 <tr><td class="key">Admin Email</td>
257 <td class="value"><xsl:value-of select="."/></td></tr>
258</xsl:template>
259
260<!--
261 Identify / Unsupported Description
262-->
263
264<xsl:template match="oai:description/*" priority="-100">
265 <h2>Unsupported Description Type</h2>
266 <p>The XSL currently does not support this type of description.</p>
267 <div class="xmlSource">
268 <xsl:apply-templates select="." mode='xmlMarkup' />
269 </div>
270</xsl:template>
271
272
273<!--
274 Identify / OAI-Identifier
275-->
276
277<xsl:template match="id:oai-identifier" xmlns:id="http://www.openarchives.org/OAI/2.0/oai-identifier">
278 <h2>OAI-Identifier</h2>
279 <table class="values">
280 <tr><td class="key">Scheme</td>
281 <td class="value"><xsl:value-of select="id:scheme"/></td></tr>
282 <tr><td class="key">Repository Identifier</td>
283 <td class="value"><xsl:value-of select="id:repositoryIdentifier"/></td></tr>
284 <tr><td class="key">Delimiter</td>
285 <td class="value"><xsl:value-of select="id:delimiter"/></td></tr>
286 <tr><td class="key">Sample OAI Identifier</td>
287 <td class="value"><xsl:value-of select="id:sampleIdentifier"/></td></tr>
288 </table>
289</xsl:template>
290
291
292<!-- GetRecord -->
293
294<xsl:template match="oai:GetRecord">
295 <xsl:apply-templates select="oai:record" />
296</xsl:template>
297
298<!-- ListRecords -->
299
300<xsl:template match="oai:ListRecords">
301 <xsl:apply-templates select="oai:record" />
302 <xsl:apply-templates select="oai:resumptionToken" />
303</xsl:template>
304
305<!-- ListIdentifiers -->
306
307<xsl:template match="oai:ListIdentifiers">
308 <xsl:apply-templates select="oai:header" />
309 <xsl:apply-templates select="oai:resumptionToken" />
310</xsl:template>
311
312<!-- ListSets -->
313
314<xsl:template match="oai:ListSets">
315 <xsl:apply-templates select="oai:set" />
316 <xsl:apply-templates select="oai:resumptionToken" />
317</xsl:template>
318
319<xsl:template match="oai:set">
320 <h2>Set</h2>
321 <table class="values">
322 <tr><td class="key">setName</td>
323 <td class="value"><xsl:value-of select="oai:setName"/></td></tr>
324 <tr><td class="key">setDescription</td>
325 <td class="value"><xsl:value-of select="oai:setDescription"/></td></tr>
326 <xsl:apply-templates select="oai:setSpec" />
327 </table>
328</xsl:template>
329
330<!-- ListMetadataFormats -->
331
332<xsl:template match="oai:ListMetadataFormats">
333 <xsl:choose>
334 <xsl:when test="$identifier">
335 <p>This is a list of metadata formats available for the record "<xsl:value-of select='$identifier' />". Use these links to view the metadata: <xsl:apply-templates select="oai:metadataFormat/oai:metadataPrefix" /></p>
336 </xsl:when>
337 <xsl:otherwise>
338 <p>This is a list of metadata formats available from this archive.</p>
339 </xsl:otherwise>
340 </xsl:choose>
341 <xsl:apply-templates select="oai:metadataFormat" />
342</xsl:template>
343
344<xsl:template match="oai:metadataFormat">
345 <h2>Metadata Format</h2>
346 <table class="values">
347 <tr><td class="key">metadataPrefix</td>
348 <td class="value"><xsl:value-of select="oai:metadataPrefix"/></td></tr>
349 <tr><td class="key">metadataNamespace</td>
350 <td class="value"><xsl:value-of select="oai:metadataNamespace"/></td></tr>
351 <tr><td class="key">schema</td>
352 <td class="value"><a href="{oai:schema}"><xsl:value-of select="oai:schema"/></a></td></tr>
353 </table>
354</xsl:template>
355
356<xsl:template match="oai:metadataPrefix">
357 <xsl:text> </xsl:text><a class="link" href="?verb=GetRecord&amp;metadataPrefix={.}&amp;identifier={$identifier}"><xsl:value-of select='.' /></a>
358</xsl:template>
359
360<!-- record object -->
361
362<xsl:template match="oai:record">
363 <h2 class="oaiRecordTitle">OAI Record: <xsl:value-of select="oai:header/oai:identifier"/></h2>
364 <div class="oaiRecord">
365 <xsl:apply-templates select="oai:header" />
366 <xsl:apply-templates select="oai:metadata" />
367 <xsl:apply-templates select="oai:about" />
368 </div>
369</xsl:template>
370
371<xsl:template match="oai:header">
372 <h3>OAI Record Header</h3>
373 <table class="values">
374 <tr><td class="key">OAI Identifier</td>
375 <td class="value">
376 <xsl:value-of select="oai:identifier"/>
377 <xsl:text> </xsl:text><a class="link" href="?verb=GetRecord&amp;metadataPrefix=oai_dc&amp;identifier={oai:identifier}">oai_dc</a>
378 <xsl:text> </xsl:text><a class="link" href="?verb=ListMetadataFormats&amp;identifier={oai:identifier}">formats</a>
379 </td></tr>
380 <tr><td class="key">Datestamp</td>
381 <td class="value"><xsl:value-of select="oai:datestamp"/></td></tr>
382 <xsl:apply-templates select="oai:setSpec" />
383 </table>
384 <xsl:if test="@status='deleted'">
385 <p>This record has been deleted.</p>
386 </xsl:if>
387</xsl:template>
388
389
390<xsl:template match="oai:about">
391 <p>"about" part of record container not supported by the XSL</p>
392</xsl:template>
393
394<xsl:template match="oai:metadata">
395 &#160;
396 <div class="metadata">
397 <xsl:apply-templates select="*" />
398 </div>
399</xsl:template>
400
401
402
403
404<!-- oai setSpec object -->
405
406<xsl:template match="oai:setSpec">
407 <tr><td class="key">setSpec</td>
408 <td class="value"><xsl:value-of select="."/>
409 <xsl:text> </xsl:text><a class="link" href="?verb=ListIdentifiers&amp;metadataPrefix=oai_dc&amp;set={.}">Identifiers</a>
410 <xsl:text> </xsl:text><a class="link" href="?verb=ListRecords&amp;metadataPrefix=oai_dc&amp;set={.}">Records</a>
411 </td></tr>
412</xsl:template>
413
414
415
416<!-- oai resumptionToken -->
417
418<xsl:template match="oai:resumptionToken">
419 <p>There are more results.</p>
420 <table class="values">
421 <tr><td class="key">resumptionToken:</td>
422 <td class="value"><xsl:value-of select="."/>
423<xsl:text> </xsl:text>
424<a class="link" href="?verb={/oai:OAI-PMH/oai:request/@verb}&amp;resumptionToken={.}">Resume</a></td></tr>
425 </table>
426</xsl:template>
427
428<!-- unknown metadata format -->
429
430<xsl:template match="oai:metadata/*" priority='-100'>
431 <h3>Unknown Metadata Format</h3>
432 <div class="xmlSource">
433 <xsl:apply-templates select="." mode='xmlMarkup' />
434 </div>
435</xsl:template>
436
437<!-- oai_dc record -->
438
439<xsl:template match="oai_dc:dc" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" >
440 <div class="dcdata">
441 <h3>Dublin Core Metadata (oai_dc)</h3>
442 <table class="dcdata">
443 <xsl:apply-templates select="*" />
444 </table>
445 </div>
446</xsl:template>
447
448<xsl:template match="dc:title" xmlns:dc="http://purl.org/dc/elements/1.1/">
449<tr><td class="key">Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
450
451<xsl:template match="dc:creator" xmlns:dc="http://purl.org/dc/elements/1.1/">
452<tr><td class="key">Author or Creator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
453
454<xsl:template match="dc:subject" xmlns:dc="http://purl.org/dc/elements/1.1/">
455<tr><td class="key">Subject and Keywords</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
456
457<xsl:template match="dc:description" xmlns:dc="http://purl.org/dc/elements/1.1/">
458<tr><td class="key">Description</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
459
460<xsl:template match="dc:publisher" xmlns:dc="http://purl.org/dc/elements/1.1/">
461<tr><td class="key">Publisher</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
462
463<xsl:template match="dc:contributor" xmlns:dc="http://purl.org/dc/elements/1.1/">
464<tr><td class="key">Other Contributor</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
465
466<xsl:template match="dc:date" xmlns:dc="http://purl.org/dc/elements/1.1/">
467<tr><td class="key">Date</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
468
469<xsl:template match="dc:type" xmlns:dc="http://purl.org/dc/elements/1.1/">
470<tr><td class="key">Resource Type</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
471
472<xsl:template match="dc:format" xmlns:dc="http://purl.org/dc/elements/1.1/">
473<tr><td class="key">Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
474
475<xsl:template match="dc:identifier" xmlns:dc="http://purl.org/dc/elements/1.1/">
476<tr><td class="key">Resource Identifier</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
477
478<xsl:template match="dc:source" xmlns:dc="http://purl.org/dc/elements/1.1/">
479<tr><td class="key">Source</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
480
481<xsl:template match="dc:language" xmlns:dc="http://purl.org/dc/elements/1.1/">
482<tr><td class="key">Language</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
483
484<xsl:template match="dc:relation" xmlns:dc="http://purl.org/dc/elements/1.1/">
485<tr><td class="key">Relation</td><td class="value">
486 <xsl:choose>
487 <xsl:when test='starts-with(.,"http" )'>
488 <xsl:choose>
489 <xsl:when test='string-length(.) &gt; 50'>
490 <a class="link" href="{.}">URL</a>
491 <i> URL not shown as it is very long.</i>
492 </xsl:when>
493 <xsl:otherwise>
494 <a href="{.}"><xsl:value-of select="."/></a>
495 </xsl:otherwise>
496 </xsl:choose>
497 </xsl:when>
498 <xsl:otherwise>
499 <xsl:value-of select="."/>
500 </xsl:otherwise>
501 </xsl:choose>
502</td></tr></xsl:template>
503
504<xsl:template match="dc:coverage" xmlns:dc="http://purl.org/dc/elements/1.1/">
505<tr><td class="key">Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
506
507<xsl:template match="dc:rights" xmlns:dc="http://purl.org/dc/elements/1.1/">
508<tr><td class="key">Rights Management</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
509
510<!-- gsdl_qdc record -->
511<xsl:template match="gsdl_qdc:gsdl_qdc" xmlns:gsdl_qdc="http://greenstone.org/namespace/gsdl_qdc/1.0/" >
512 <div class="dcdata">
513 <h3>Qualified Dublin Core Metadata (gsdl_qdc)</h3>
514 <table class="dcdata">
515 <xsl:apply-templates select="*" />
516 </table>
517 </div>
518</xsl:template>
519
520<xsl:template match="dc:title" xmlns:dc="http://purl.org/dc/terms/">
521<tr><td class="key">Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
522<xsl:template match="dc:creator" xmlns:dc="http://purl.org/dc/terms/">
523<tr><td class="key">Creator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
524<xsl:template match="dc:subject" xmlns:dc="http://purl.org/dc/terms/">
525<tr><td class="key">Subject</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
526<xsl:template match="dc:description" xmlns:dc="http://purl.org/dc/terms/">
527<tr><td class="key">Description</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
528<xsl:template match="dc:publisher" xmlns:dc="http://purl.org/dc/terms/">
529<tr><td class="key">Publisher</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
530<xsl:template match="dc:contributor" xmlns:dc="http://purl.org/dc/terms/">
531<tr><td class="key">Contributor</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
532<xsl:template match="dc:date" xmlns:dc="http://purl.org/dc/terms/">
533<tr><td class="key">Date</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
534<xsl:template match="dc:type" xmlns:dc="http://purl.org/dc/terms/">
535<tr><td class="key">Type</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
536<xsl:template match="dc:format" xmlns:dc="http://purl.org/dc/terms/">
537<tr><td class="key">Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
538<xsl:template match="dc:identifier" xmlns:dc="http://purl.org/dc/terms/">
539<tr><td class="key">Identifier</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
540<xsl:template match="dc:source" xmlns:dc="http://purl.org/dc/terms/">
541<tr><td class="key">Source</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
542<xsl:template match="dc:language" xmlns:dc="http://purl.org/dc/terms/">
543<tr><td class="key">Language</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
544<xsl:template match="dc:relation" xmlns:dc="http://purl.org/dc/terms/">
545<tr><td class="key">Relation</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
546<xsl:template match="dc:coverage" xmlns:dc="http://purl.org/dc/terms/">
547<tr><td class="key">Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
548<xsl:template match="dc:rights" xmlns:dc="http://purl.org/dc/terms/">
549<tr><td class="key">Rights</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
550<xsl:template match="dc:alternative" xmlns:dc="http://purl.org/dc/terms/">
551<tr><td class="key">Alternative Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
552<xsl:template match="dc:tableOfContents" xmlns:dc="http://purl.org/dc/terms/">
553<tr><td class="key">Table Of Contents</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
554<xsl:template match="dc:abstract" xmlns:dc="http://purl.org/dc/terms/">
555<tr><td class="key">Abstract</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
556<xsl:template match="dc:created" xmlns:dc="http://purl.org/dc/terms/">
557<tr><td class="key">Date Created</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
558<xsl:template match="dc:valid" xmlns:dc="http://purl.org/dc/terms/">
559<tr><td class="key">Date Valid</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
560<xsl:template match="dc:available" xmlns:dc="http://purl.org/dc/terms/">
561<tr><td class="key">Date Available</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
562<xsl:template match="dc:issued" xmlns:dc="http://purl.org/dc/terms/">
563<tr><td class="key">Date Issued</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
564<xsl:template match="dc:modified" xmlns:dc="http://purl.org/dc/terms/">
565<tr><td class="key">Date Modified</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
566<xsl:template match="dc:dateAccepted" xmlns:dc="http://purl.org/dc/terms/">
567<tr><td class="key">Date Accepted</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
568<xsl:template match="dc:dateCopyrighted" xmlns:dc="http://purl.org/dc/terms/">
569<tr><td class="key">Date Copyrighted</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
570<xsl:template match="dc:dateSubmitted" xmlns:dc="http://purl.org/dc/terms/">
571<tr><td class="key">Date Submitted</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
572<xsl:template match="dc:extent" xmlns:dc="http://purl.org/dc/terms/">
573<tr><td class="key">Extent</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
574<xsl:template match="dc:medium" xmlns:dc="http://purl.org/dc/terms/">
575<tr><td class="key">Medium</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
576<xsl:template match="dc:isVersionOf" xmlns:dc="http://purl.org/dc/terms/">
577<tr><td class="key">Is Version Of</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
578<xsl:template match="dc:hasVersion" xmlns:dc="http://purl.org/dc/terms/">
579<tr><td class="key">Has Version</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
580<xsl:template match="dc:isReplacedBy" xmlns:dc="http://purl.org/dc/terms/">
581<tr><td class="key">Is Replaced By</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
582<xsl:template match="dc:replaces" xmlns:dc="http://purl.org/dc/terms/">
583<tr><td class="key">Replaces</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
584<xsl:template match="dc:isRequiredBy" xmlns:dc="http://purl.org/dc/terms/">
585<tr><td class="key">Is Required By</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
586<xsl:template match="dc:requires" xmlns:dc="http://purl.org/dc/terms/">
587<tr><td class="key">Requires</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
588<xsl:template match="dc:isPartOf" xmlns:dc="http://purl.org/dc/terms/">
589<tr><td class="key">Is Part Of</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
590<xsl:template match="dc:hasPart" xmlns:dc="http://purl.org/dc/terms/">
591<tr><td class="key">Has Part</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
592<xsl:template match="dc:isReferencedBy" xmlns:dc="http://purl.org/dc/terms/">
593<tr><td class="key">Is Referenced By</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
594<xsl:template match="dc:references" xmlns:dc="http://purl.org/dc/terms/">
595<tr><td class="key">References</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
596<xsl:template match="dc:isFormatOf" xmlns:dc="http://purl.org/dc/terms/">
597<tr><td class="key">Is Format Of</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
598<xsl:template match="dc:hasFormat" xmlns:dc="http://purl.org/dc/terms/">
599<tr><td class="key">Has Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
600<xsl:template match="dc:conformsTo" xmlns:dc="http://purl.org/dc/terms/">
601<tr><td class="key">Conforms To</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
602<xsl:template match="dc:spatial" xmlns:dc="http://purl.org/dc/terms/">
603<tr><td class="key">Spatial Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
604<xsl:template match="dc:temporal" xmlns:dc="http://purl.org/dc/terms/">
605<tr><td class="key">Temporal Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
606<xsl:template match="dc:audience" xmlns:dc="http://purl.org/dc/terms/">
607<tr><td class="key">Audience</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
608<xsl:template match="dc:accrualMethod" xmlns:dc="http://purl.org/dc/terms/">
609<tr><td class="key">Accrual Method</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
610<xsl:template match="dc:accrualPeriodicity" xmlns:dc="http://purl.org/dc/terms/">
611<tr><td class="key">Accrual Periodicity</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
612<xsl:template match="dc:accrualPolicy" xmlns:dc="http://purl.org/dc/terms/">
613<tr><td class="key">Accrual Policy</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
614<xsl:template match="dc:instructionalMethod" xmlns:dc="http://purl.org/dc/terms/">
615<tr><td class="key">Instructional Method</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
616<xsl:template match="dc:provenance" xmlns:dc="http://purl.org/dc/terms/">
617<tr><td class="key">Provenance</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
618<xsl:template match="dc:rightsHolder" xmlns:dc="http://purl.org/dc/terms/">
619<tr><td class="key">Rights Holder</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
620<xsl:template match="dc:mediator" xmlns:dc="http://purl.org/dc/terms/">
621<tr><td class="key">Mediator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
622<xsl:template match="dc:educationLevel" xmlns:dc="http://purl.org/dc/terms/">
623<tr><td class="key">Audience Education Level</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
624<xsl:template match="dc:accessRights" xmlns:dc="http://purl.org/dc/terms/">
625<tr><td class="key">Access Rights</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
626<xsl:template match="dc:license" xmlns:dc="http://purl.org/dc/terms/">
627<tr><td class="key">License</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
628<xsl:template match="dc:bibliographicCitation" xmlns:dc="http://purl.org/dc/terms/">
629<tr><td class="key">Bibliographic Citation</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
630
631<!-- XML Pretty Maker -->
632
633<xsl:template match="node()" mode='xmlMarkup'>
634 <div class="xmlBlock">
635 &lt;<span class="xmlTagName"><xsl:value-of select='name(.)' /></span><xsl:apply-templates select="@*" mode='xmlMarkup'/>&gt;<xsl:apply-templates select="node()" mode='xmlMarkup' />&lt;/<span class="xmlTagName"><xsl:value-of select='name(.)' /></span>&gt;
636 </div>
637</xsl:template>
638
639<xsl:template match="text()" mode='xmlMarkup'><span class="xmlText"><xsl:value-of select='.' /></span></xsl:template>
640
641<xsl:template match="@*" mode='xmlMarkup'>
642 <xsl:text> </xsl:text><span class="xmlAttrName"><xsl:value-of select='name()' /></span>="<span class="xmlAttrValue"><xsl:value-of select='.' /></span>"
643</xsl:template>
644
645<xsl:template name="xmlstyle">
646.xmlSource {
647 font-size: 70%;
648 border: solid #c0c0a0 1px;
649 background-color: #ffffe0;
650 padding: 2em 2em 2em 0em;
651}
652.xmlBlock {
653 padding-left: 2em;
654}
655.xmlTagName {
656 color: #800000;
657 font-weight: bold;
658}
659.xmlAttrName {
660 font-weight: bold;
661}
662.xmlAttrValue {
663 color: #0000c0;
664}
665</xsl:template>
666
667</xsl:stylesheet>
668
Note: See TracBrowser for help on using the repository browser.