source: main/trunk/greenstone3/web/interfaces/oai/oai2.xsl@ 23861

Last change on this file since 23861 was 23861, checked in by ak19, 13 years ago

GS3 was missing the oai2.xsl file (and the containing oai folder) in web interfaces, so could not start testing the GS3 oaiserver

File size: 29.0 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<xsl:template match="id:oai-identifier" xmlns:id="http://www.openarchives.org/OAI/1.1/oai-identifier">
292 <h2>OAI-Identifier</h2>
293 <table class="values">
294 <tr><td class="key">Scheme</td>
295 <td class="value"><xsl:value-of select="id:scheme"/></td></tr>
296 <tr><td class="key">Repository Identifier</td>
297 <td class="value"><xsl:value-of select="id:repositoryIdentifier"/></td></tr>
298 <tr><td class="key">Delimiter</td>
299 <td class="value"><xsl:value-of select="id:delimiter"/></td></tr>
300 <tr><td class="key">Sample OAI Identifier</td>
301 <td class="value"><xsl:value-of select="id:sampleIdentifier"/></td></tr>
302 </table>
303</xsl:template>
304
305<!-- Identify / GSDL Info -->
306 <xsl:template match="id:gsdl" xmlns:id="http://www.greenstone.org/namespace/gsdl_oaiinfo/1.0/gsdl_oaiinfo">
307 <h2> Description </h2>
308 <table class="values">
309 <xsl:apply-templates select="id:Metadata"/>
310 </table>
311 </xsl:template>
312
313 <xsl:template match="id:Metadata" xmlns:id="http://www.greenstone.org/namespace/gsdl_oaiinfo/1.0/gsdl_oaiinfo">
314 <tr><td class="key"><xsl:value-of select="@name"/></td>
315 <td class="value"><xsl:value-of select="."/></td></tr>
316 </xsl:template>
317<!-- GetRecord -->
318
319<xsl:template match="oai:GetRecord">
320 <xsl:apply-templates select="oai:record" />
321</xsl:template>
322
323<!-- ListRecords -->
324
325<xsl:template match="oai:ListRecords">
326 <xsl:apply-templates select="oai:record" />
327 <xsl:apply-templates select="oai:resumptionToken" />
328</xsl:template>
329
330<!-- ListIdentifiers -->
331
332<xsl:template match="oai:ListIdentifiers">
333 <xsl:apply-templates select="oai:header" />
334 <xsl:apply-templates select="oai:resumptionToken" />
335</xsl:template>
336
337<!-- ListSets -->
338
339<xsl:template match="oai:ListSets">
340 <xsl:apply-templates select="oai:set" />
341 <xsl:apply-templates select="oai:resumptionToken" />
342</xsl:template>
343
344<xsl:template match="oai:set">
345 <h2>Set</h2>
346 <table class="values">
347 <tr><td class="key">setName</td>
348 <td class="value"><xsl:value-of select="oai:setName"/></td></tr>
349 <tr><td class="key">setDescription</td>
350 <td class="value"><xsl:value-of select="oai:setDescription"/></td></tr>
351 <xsl:apply-templates select="oai:setSpec" />
352 </table>
353</xsl:template>
354
355<!-- ListMetadataFormats -->
356
357<xsl:template match="oai:ListMetadataFormats">
358 <xsl:choose>
359 <xsl:when test="$identifier">
360 <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>
361 </xsl:when>
362 <xsl:otherwise>
363 <p>This is a list of metadata formats available from this archive.</p>
364 </xsl:otherwise>
365 </xsl:choose>
366 <xsl:apply-templates select="oai:metadataFormat" />
367</xsl:template>
368
369<xsl:template match="oai:metadataFormat">
370 <h2>Metadata Format</h2>
371 <table class="values">
372 <tr><td class="key">metadataPrefix</td>
373 <td class="value"><xsl:value-of select="oai:metadataPrefix"/></td></tr>
374 <tr><td class="key">metadataNamespace</td>
375 <td class="value"><xsl:value-of select="oai:metadataNamespace"/></td></tr>
376 <tr><td class="key">schema</td>
377 <td class="value"><a href="{oai:schema}"><xsl:value-of select="oai:schema"/></a></td></tr>
378 </table>
379</xsl:template>
380
381<xsl:template match="oai:metadataPrefix">
382 <xsl:text> </xsl:text><a class="link" href="?verb=GetRecord&amp;metadataPrefix={.}&amp;identifier={$identifier}"><xsl:value-of select='.' /></a>
383</xsl:template>
384
385<!-- record object -->
386
387<xsl:template match="oai:record">
388 <h2 class="oaiRecordTitle">OAI Record: <xsl:value-of select="oai:header/oai:identifier"/></h2>
389 <div class="oaiRecord">
390 <xsl:apply-templates select="oai:header" />
391 <xsl:apply-templates select="oai:metadata" />
392 <xsl:apply-templates select="oai:about" />
393 </div>
394</xsl:template>
395
396<xsl:template match="oai:header">
397 <h3>OAI Record Header</h3>
398 <table class="values">
399 <tr><td class="key">OAI Identifier</td>
400 <td class="value">
401 <xsl:value-of select="oai:identifier"/>
402 <xsl:text> </xsl:text><a class="link" href="?verb=GetRecord&amp;metadataPrefix=oai_dc&amp;identifier={oai:identifier}">oai_dc</a>
403 <xsl:text> </xsl:text><a class="link" href="?verb=ListMetadataFormats&amp;identifier={oai:identifier}">formats</a>
404 </td></tr>
405 <tr><td class="key">Datestamp</td>
406 <td class="value"><xsl:value-of select="oai:datestamp"/></td></tr>
407 <xsl:apply-templates select="oai:setSpec" />
408 </table>
409 <xsl:if test="@status='deleted'">
410 <p>This record has been deleted.</p>
411 </xsl:if>
412</xsl:template>
413
414
415<xsl:template match="oai:about">
416 <p>"about" part of record container not supported by the XSL</p>
417</xsl:template>
418
419<xsl:template match="oai:metadata">
420 &#160;
421 <div class="metadata">
422 <xsl:apply-templates select="*" />
423 </div>
424</xsl:template>
425
426
427
428
429<!-- oai setSpec object -->
430
431<xsl:template match="oai:setSpec">
432 <tr><td class="key">setSpec</td>
433 <td class="value"><xsl:value-of select="."/>
434 <xsl:text> </xsl:text><a class="link" href="?verb=ListIdentifiers&amp;metadataPrefix=oai_dc&amp;set={.}">Identifiers</a>
435 <xsl:text> </xsl:text><a class="link" href="?verb=ListRecords&amp;metadataPrefix=oai_dc&amp;set={.}">Records</a>
436 </td></tr>
437</xsl:template>
438
439
440
441<!-- oai resumptionToken -->
442
443<xsl:template match="oai:resumptionToken">
444 <p>There are more results.</p>
445 <table class="values">
446 <tr><td class="key">resumptionToken:</td>
447 <td class="value"><xsl:value-of select="."/>
448<xsl:text> </xsl:text>
449<a class="link" href="?verb={/oai:OAI-PMH/oai:request/@verb}&amp;resumptionToken={.}">Resume</a></td></tr>
450 </table>
451</xsl:template>
452
453<!-- unknown metadata format -->
454
455<xsl:template match="oai:metadata/*" priority='-100'>
456 <h3>Unknown Metadata Format</h3>
457 <div class="xmlSource">
458 <xsl:apply-templates select="." mode='xmlMarkup' />
459 </div>
460</xsl:template>
461
462<!-- oai_dc record -->
463
464<xsl:template match="oai_dc:dc" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" >
465 <div class="dcdata">
466 <h3>Dublin Core Metadata (oai_dc)</h3>
467 <table class="dcdata">
468 <xsl:apply-templates select="*" />
469 </table>
470 </div>
471</xsl:template>
472
473<xsl:template match="dc:title" xmlns:dc="http://purl.org/dc/elements/1.1/">
474<tr><td class="key">Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
475
476<xsl:template match="dc:creator" xmlns:dc="http://purl.org/dc/elements/1.1/">
477<tr><td class="key">Author or Creator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
478
479<xsl:template match="dc:subject" xmlns:dc="http://purl.org/dc/elements/1.1/">
480<tr><td class="key">Subject and Keywords</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
481
482<xsl:template match="dc:description" xmlns:dc="http://purl.org/dc/elements/1.1/">
483<tr><td class="key">Description</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
484
485<xsl:template match="dc:publisher" xmlns:dc="http://purl.org/dc/elements/1.1/">
486<tr><td class="key">Publisher</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
487
488<xsl:template match="dc:contributor" xmlns:dc="http://purl.org/dc/elements/1.1/">
489<tr><td class="key">Other Contributor</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
490
491<xsl:template match="dc:date" xmlns:dc="http://purl.org/dc/elements/1.1/">
492<tr><td class="key">Date</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
493
494<xsl:template match="dc:type" xmlns:dc="http://purl.org/dc/elements/1.1/">
495<tr><td class="key">Resource Type</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
496
497<xsl:template match="dc:format" xmlns:dc="http://purl.org/dc/elements/1.1/">
498<tr><td class="key">Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
499
500<xsl:template match="dc:identifier" xmlns:dc="http://purl.org/dc/elements/1.1/">
501<tr><td class="key">Resource Identifier</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
502
503<xsl:template match="dc:source" xmlns:dc="http://purl.org/dc/elements/1.1/">
504<tr><td class="key">Source</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
505
506<xsl:template match="dc:language" xmlns:dc="http://purl.org/dc/elements/1.1/">
507<tr><td class="key">Language</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
508
509<xsl:template match="dc:relation" xmlns:dc="http://purl.org/dc/elements/1.1/">
510<tr><td class="key">Relation</td><td class="value">
511 <xsl:choose>
512 <xsl:when test='starts-with(.,"http" )'>
513 <xsl:choose>
514 <xsl:when test='string-length(.) &gt; 50'>
515 <a class="link" href="{.}">URL</a>
516 <i> URL not shown as it is very long.</i>
517 </xsl:when>
518 <xsl:otherwise>
519 <a href="{.}"><xsl:value-of select="."/></a>
520 </xsl:otherwise>
521 </xsl:choose>
522 </xsl:when>
523 <xsl:otherwise>
524 <xsl:value-of select="."/>
525 </xsl:otherwise>
526 </xsl:choose>
527</td></tr></xsl:template>
528
529<xsl:template match="dc:coverage" xmlns:dc="http://purl.org/dc/elements/1.1/">
530<tr><td class="key">Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
531
532<xsl:template match="dc:rights" xmlns:dc="http://purl.org/dc/elements/1.1/">
533<tr><td class="key">Rights Management</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
534
535<!-- gsdl_qdc record -->
536<xsl:template match="gsdl_qdc:gsdl_qdc" xmlns:gsdl_qdc="http://greenstone.org/namespace/gsdl_qdc/1.0/" >
537 <div class="dcdata">
538 <h3>Qualified Dublin Core Metadata (gsdl_qdc)</h3>
539 <table class="dcdata">
540 <xsl:apply-templates select="*" />
541 </table>
542 </div>
543</xsl:template>
544
545<xsl:template match="dc:title" xmlns:dc="http://purl.org/dc/terms/">
546<tr><td class="key">Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
547<xsl:template match="dc:creator" xmlns:dc="http://purl.org/dc/terms/">
548<tr><td class="key">Creator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
549<xsl:template match="dc:subject" xmlns:dc="http://purl.org/dc/terms/">
550<tr><td class="key">Subject</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
551<xsl:template match="dc:description" xmlns:dc="http://purl.org/dc/terms/">
552<tr><td class="key">Description</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
553<xsl:template match="dc:publisher" xmlns:dc="http://purl.org/dc/terms/">
554<tr><td class="key">Publisher</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
555<xsl:template match="dc:contributor" xmlns:dc="http://purl.org/dc/terms/">
556<tr><td class="key">Contributor</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
557<xsl:template match="dc:date" xmlns:dc="http://purl.org/dc/terms/">
558<tr><td class="key">Date</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
559<xsl:template match="dc:type" xmlns:dc="http://purl.org/dc/terms/">
560<tr><td class="key">Type</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
561<xsl:template match="dc:format" xmlns:dc="http://purl.org/dc/terms/">
562<tr><td class="key">Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
563<xsl:template match="dc:identifier" xmlns:dc="http://purl.org/dc/terms/">
564<tr><td class="key">Identifier</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
565<xsl:template match="dc:source" xmlns:dc="http://purl.org/dc/terms/">
566<tr><td class="key">Source</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
567<xsl:template match="dc:language" xmlns:dc="http://purl.org/dc/terms/">
568<tr><td class="key">Language</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
569<xsl:template match="dc:relation" xmlns:dc="http://purl.org/dc/terms/">
570<tr><td class="key">Relation</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
571<xsl:template match="dc:coverage" xmlns:dc="http://purl.org/dc/terms/">
572<tr><td class="key">Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
573<xsl:template match="dc:rights" xmlns:dc="http://purl.org/dc/terms/">
574<tr><td class="key">Rights</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
575<xsl:template match="dc:alternative" xmlns:dc="http://purl.org/dc/terms/">
576<tr><td class="key">Alternative Title</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
577<xsl:template match="dc:tableOfContents" xmlns:dc="http://purl.org/dc/terms/">
578<tr><td class="key">Table Of Contents</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
579<xsl:template match="dc:abstract" xmlns:dc="http://purl.org/dc/terms/">
580<tr><td class="key">Abstract</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
581<xsl:template match="dc:created" xmlns:dc="http://purl.org/dc/terms/">
582<tr><td class="key">Date Created</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
583<xsl:template match="dc:valid" xmlns:dc="http://purl.org/dc/terms/">
584<tr><td class="key">Date Valid</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
585<xsl:template match="dc:available" xmlns:dc="http://purl.org/dc/terms/">
586<tr><td class="key">Date Available</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
587<xsl:template match="dc:issued" xmlns:dc="http://purl.org/dc/terms/">
588<tr><td class="key">Date Issued</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
589<xsl:template match="dc:modified" xmlns:dc="http://purl.org/dc/terms/">
590<tr><td class="key">Date Modified</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
591<xsl:template match="dc:dateAccepted" xmlns:dc="http://purl.org/dc/terms/">
592<tr><td class="key">Date Accepted</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
593<xsl:template match="dc:dateCopyrighted" xmlns:dc="http://purl.org/dc/terms/">
594<tr><td class="key">Date Copyrighted</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
595<xsl:template match="dc:dateSubmitted" xmlns:dc="http://purl.org/dc/terms/">
596<tr><td class="key">Date Submitted</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
597<xsl:template match="dc:extent" xmlns:dc="http://purl.org/dc/terms/">
598<tr><td class="key">Extent</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
599<xsl:template match="dc:medium" xmlns:dc="http://purl.org/dc/terms/">
600<tr><td class="key">Medium</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
601<xsl:template match="dc:isVersionOf" xmlns:dc="http://purl.org/dc/terms/">
602<tr><td class="key">Is Version Of</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
603<xsl:template match="dc:hasVersion" xmlns:dc="http://purl.org/dc/terms/">
604<tr><td class="key">Has Version</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
605<xsl:template match="dc:isReplacedBy" xmlns:dc="http://purl.org/dc/terms/">
606<tr><td class="key">Is Replaced By</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
607<xsl:template match="dc:replaces" xmlns:dc="http://purl.org/dc/terms/">
608<tr><td class="key">Replaces</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
609<xsl:template match="dc:isRequiredBy" xmlns:dc="http://purl.org/dc/terms/">
610<tr><td class="key">Is Required By</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
611<xsl:template match="dc:requires" xmlns:dc="http://purl.org/dc/terms/">
612<tr><td class="key">Requires</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
613<xsl:template match="dc:isPartOf" xmlns:dc="http://purl.org/dc/terms/">
614<tr><td class="key">Is Part Of</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
615<xsl:template match="dc:hasPart" xmlns:dc="http://purl.org/dc/terms/">
616<tr><td class="key">Has Part</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
617<xsl:template match="dc:isReferencedBy" xmlns:dc="http://purl.org/dc/terms/">
618<tr><td class="key">Is Referenced By</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
619<xsl:template match="dc:references" xmlns:dc="http://purl.org/dc/terms/">
620<tr><td class="key">References</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
621<xsl:template match="dc:isFormatOf" xmlns:dc="http://purl.org/dc/terms/">
622<tr><td class="key">Is Format Of</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
623<xsl:template match="dc:hasFormat" xmlns:dc="http://purl.org/dc/terms/">
624<tr><td class="key">Has Format</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
625<xsl:template match="dc:conformsTo" xmlns:dc="http://purl.org/dc/terms/">
626<tr><td class="key">Conforms To</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
627<xsl:template match="dc:spatial" xmlns:dc="http://purl.org/dc/terms/">
628<tr><td class="key">Spatial Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
629<xsl:template match="dc:temporal" xmlns:dc="http://purl.org/dc/terms/">
630<tr><td class="key">Temporal Coverage</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
631<xsl:template match="dc:audience" xmlns:dc="http://purl.org/dc/terms/">
632<tr><td class="key">Audience</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
633<xsl:template match="dc:accrualMethod" xmlns:dc="http://purl.org/dc/terms/">
634<tr><td class="key">Accrual Method</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
635<xsl:template match="dc:accrualPeriodicity" xmlns:dc="http://purl.org/dc/terms/">
636<tr><td class="key">Accrual Periodicity</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
637<xsl:template match="dc:accrualPolicy" xmlns:dc="http://purl.org/dc/terms/">
638<tr><td class="key">Accrual Policy</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
639<xsl:template match="dc:instructionalMethod" xmlns:dc="http://purl.org/dc/terms/">
640<tr><td class="key">Instructional Method</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
641<xsl:template match="dc:provenance" xmlns:dc="http://purl.org/dc/terms/">
642<tr><td class="key">Provenance</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
643<xsl:template match="dc:rightsHolder" xmlns:dc="http://purl.org/dc/terms/">
644<tr><td class="key">Rights Holder</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
645<xsl:template match="dc:mediator" xmlns:dc="http://purl.org/dc/terms/">
646<tr><td class="key">Mediator</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
647<xsl:template match="dc:educationLevel" xmlns:dc="http://purl.org/dc/terms/">
648<tr><td class="key">Audience Education Level</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
649<xsl:template match="dc:accessRights" xmlns:dc="http://purl.org/dc/terms/">
650<tr><td class="key">Access Rights</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
651<xsl:template match="dc:license" xmlns:dc="http://purl.org/dc/terms/">
652<tr><td class="key">License</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
653<xsl:template match="dc:bibliographicCitation" xmlns:dc="http://purl.org/dc/terms/">
654<tr><td class="key">Bibliographic Citation</td><td class="value"><xsl:value-of select="."/></td></tr></xsl:template>
655
656<!-- XML Pretty Maker -->
657
658<xsl:template match="node()" mode='xmlMarkup'>
659 <div class="xmlBlock">
660 &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;
661 </div>
662</xsl:template>
663
664<xsl:template match="text()" mode='xmlMarkup'><span class="xmlText"><xsl:value-of select='.' /></span></xsl:template>
665
666<xsl:template match="@*" mode='xmlMarkup'>
667 <xsl:text> </xsl:text><span class="xmlAttrName"><xsl:value-of select='name()' /></span>="<span class="xmlAttrValue"><xsl:value-of select='.' /></span>"
668</xsl:template>
669
670<xsl:template name="xmlstyle">
671.xmlSource {
672 font-size: 70%;
673 border: solid #c0c0a0 1px;
674 background-color: #ffffe0;
675 padding: 2em 2em 2em 0em;
676}
677.xmlBlock {
678 padding-left: 2em;
679}
680.xmlTagName {
681 color: #800000;
682 font-weight: bold;
683}
684.xmlAttrName {
685 font-weight: bold;
686}
687.xmlAttrValue {
688 color: #0000c0;
689}
690</xsl:template>
691
692</xsl:stylesheet>
693
Note: See TracBrowser for help on using the repository browser.