mirror of
https://github.com/DSpace/DSpace.git
synced 2025-10-17 15:03:18 +00:00
This commit is contained in:
@@ -1,23 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
|
||||
The contents of this file are subject to the license and copyright
|
||||
detailed in the LICENSE and NOTICE files at the root of the source
|
||||
tree and available online at
|
||||
|
||||
http://www.dspace.org/license/
|
||||
|
||||
-->
|
||||
<!-- The contents of this file are subject to the license and copyright detailed
|
||||
in the LICENSE and NOTICE files at the root of the source tree and available
|
||||
online at http://www.dspace.org/license/ -->
|
||||
<xsl:stylesheet version="1.0"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:oai="http://www.openarchives.org/OAI/2.0/"
|
||||
xmlns:lyn="http://www.lyncode.com/fakeNamespace"
|
||||
xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/"
|
||||
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:oai="http://www.openarchives.org/OAI/2.0/"
|
||||
xmlns:lyn="http://www.lyncode.com/fakeNamespace" xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/"
|
||||
xmlns:dc="http://purl.org/dc/doc:elements/1.1/"
|
||||
exclude-result-prefixes="oai lyn oai_dc dc"
|
||||
>
|
||||
exclude-result-prefixes="oai lyn oai_dc dc">
|
||||
|
||||
<xsl:output method="html"/>
|
||||
<xsl:output method="html" />
|
||||
|
||||
<xsl:template name="write-doctype">
|
||||
<xsl:text disable-output-escaping='yes'><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||||
@@ -25,12 +16,13 @@
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="/">
|
||||
<xsl:call-template name="write-doctype"/>
|
||||
<xsl:call-template name="write-doctype" />
|
||||
<html>
|
||||
<head>
|
||||
<title>DSpace OAI-PMH Data Provider</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<script src="http://code.jquery.com/jquery-1.7.2.min.js" type="text/javascript"></script>
|
||||
<script src="http://code.jquery.com/jquery-1.7.2.min.js"
|
||||
type="text/javascript"></script>
|
||||
<style type="text/css">
|
||||
a {
|
||||
color: #00b2d0;
|
||||
@@ -38,7 +30,8 @@
|
||||
}
|
||||
body {
|
||||
text-align: center;
|
||||
font-family: "adelle-1","adelle-2", Georgia, Times, serif;
|
||||
font-family: "adelle-1","adelle-2", Georgia,
|
||||
Times, serif;
|
||||
color: #444751;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
@@ -67,9 +60,11 @@
|
||||
}
|
||||
div.header div.contexts {
|
||||
background-color: #444751;
|
||||
-moz-box-shadow: 3px 3px 4px #999;
|
||||
-moz-box-shadow: 3px 3px
|
||||
4px #999;
|
||||
-webkit-box-shadow: 3px 3px 4px #999;
|
||||
box-shadow: 3px 3px 4px #999;
|
||||
box-shadow: 3px 3px
|
||||
4px #999;
|
||||
}
|
||||
|
||||
div.header div.contexts ul {
|
||||
@@ -78,21 +73,25 @@
|
||||
|
||||
div.header div.contexts ul li a:hover {
|
||||
background-color: #00b2d0;
|
||||
cursor: pointer;
|
||||
cursor:
|
||||
pointer;
|
||||
}
|
||||
|
||||
div.header div.contexts ul li {
|
||||
float: left;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
padding-bottom:
|
||||
10px;
|
||||
}
|
||||
div.header div.contexts ul li a {
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
padding: 10px;
|
||||
padding:
|
||||
10px;
|
||||
background-color: #444751;
|
||||
color: white;
|
||||
text-transform: uppercase;
|
||||
text-transform:
|
||||
uppercase;
|
||||
}
|
||||
div.header div.contexts ul li a.active {
|
||||
color: white;
|
||||
@@ -147,12 +146,15 @@
|
||||
border-left: solid 1px #ccc;
|
||||
color: #444751;
|
||||
padding: 10px;
|
||||
width: 100%;
|
||||
width:
|
||||
100%;
|
||||
display: inline-block;
|
||||
margin-bottom: 2px;
|
||||
-moz-box-shadow: 1px 1px 1px #999;
|
||||
-moz-box-shadow: 1px
|
||||
1px 1px #999;
|
||||
-webkit-box-shadow: 1px 1px 1px #999;
|
||||
box-shadow: 1px 1px 1px #999;
|
||||
box-shadow: 1px
|
||||
1px 1px #999;
|
||||
}
|
||||
div.set div.spec {
|
||||
display: inline-block;
|
||||
@@ -170,9 +172,11 @@
|
||||
width: 100%;
|
||||
color: #FFF;
|
||||
margin-bottom: 2px;
|
||||
display: inline-block;
|
||||
display:
|
||||
inline-block;
|
||||
-moz-box-shadow: 1px 1px 1px #999;
|
||||
-webkit-box-shadow: 1px 1px 1px #999;
|
||||
-webkit-box-shadow:
|
||||
1px 1px 1px #999;
|
||||
box-shadow: 1px 1px 1px #999;
|
||||
}
|
||||
div.setalternate div.spec {
|
||||
@@ -197,7 +201,8 @@
|
||||
div.sets div div.spec a {
|
||||
border: solid 1px #CCC;
|
||||
margin-left: 5px;
|
||||
padding: 5px;
|
||||
padding:
|
||||
5px;
|
||||
}
|
||||
div.sets div div.spec {
|
||||
float: right;
|
||||
@@ -205,7 +210,8 @@
|
||||
.error {
|
||||
color: #D8000C;
|
||||
background-color: #FFBABA;
|
||||
border: solid 1px #D8000C;
|
||||
border: solid 1px
|
||||
#D8000C;
|
||||
display: inline-block;
|
||||
padding: 20px;
|
||||
width: 60%;
|
||||
@@ -233,7 +239,8 @@
|
||||
padding: 20px;
|
||||
background-color: #00B2D0;
|
||||
border: solid 1px #00B2D0;
|
||||
margin-bottom: 15px;
|
||||
margin-bottom:
|
||||
15px;
|
||||
width: 100%;
|
||||
}
|
||||
a.format:hover {
|
||||
@@ -248,7 +255,8 @@
|
||||
a.format div.prefix {
|
||||
text-align: center;
|
||||
font-size: 30px;
|
||||
margin-bottom: 15px;
|
||||
margin-bottom:
|
||||
15px;
|
||||
}
|
||||
|
||||
div.identifiers {
|
||||
@@ -285,7 +293,8 @@
|
||||
div.identifiers div.setspecalternate {
|
||||
text-align: left;
|
||||
padding: 5px;
|
||||
padding-left: 15px;
|
||||
padding-left:
|
||||
15px;
|
||||
background-color: rgba(0,0,0,0.3);
|
||||
}
|
||||
div.identifiers div.setspec {
|
||||
@@ -300,7 +309,8 @@
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
margin-top: 10px;
|
||||
background-color: rgba(255,255,255,0.3);
|
||||
background-color:
|
||||
rgba(255,255,255,0.3);
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
@@ -321,7 +331,8 @@
|
||||
padding: 20px;
|
||||
background-color: #00B2D0;
|
||||
margin-bottom: 15px;
|
||||
-moz-box-shadow: 1px 1px 1px #EAEAEA;
|
||||
-moz-box-shadow: 1px
|
||||
1px 1px #EAEAEA;
|
||||
-webkit-box-shadow: 1px 1px 1px #EAEAEA;
|
||||
box-shadow: 1px 1px 1px #EAEAEA;
|
||||
}
|
||||
@@ -339,7 +350,8 @@
|
||||
background-color: #FFF;
|
||||
margin-bottom: 15px;
|
||||
-moz-box-shadow: 1px 1px 1px #999;
|
||||
-webkit-box-shadow: 1px 1px 1px #999;
|
||||
-webkit-box-shadow: 1px 1px 1px
|
||||
#999;
|
||||
box-shadow: 1px 1px 1px #999;
|
||||
}
|
||||
div.identifiers div.innerspec {
|
||||
@@ -364,7 +376,8 @@
|
||||
}
|
||||
|
||||
div.identifiers div.identifier div.setspecs span:hover {
|
||||
background-color: rgba(255,255,255,0.6);
|
||||
background-color:
|
||||
rgba(255,255,255,0.6);
|
||||
}
|
||||
|
||||
|
||||
@@ -403,7 +416,8 @@
|
||||
div.metadataPrefix p span.mdset {
|
||||
margin-left: 10px;
|
||||
font-weight: bold;
|
||||
margin-right: 10px;
|
||||
margin-right:
|
||||
10px;
|
||||
}
|
||||
|
||||
div.getRecord {
|
||||
@@ -411,7 +425,8 @@
|
||||
}
|
||||
|
||||
div.getRecord div.getcontent {
|
||||
display: inline-block; padding: 20px; width: 900px; background-color: #00B2D0;
|
||||
display: inline-block; padding: 20px; width:
|
||||
900px; background-color: #00B2D0;
|
||||
}
|
||||
|
||||
div.getRecord div.getcontent div.in {
|
||||
@@ -428,7 +443,8 @@
|
||||
}
|
||||
|
||||
div.getRecordAlternate div.getcontent {
|
||||
display: inline-block; padding: 20px; width: 900px; background-color: #FFF;
|
||||
display: inline-block; padding: 20px; width:
|
||||
900px; background-color: #FFF;
|
||||
-moz-box-shadow: 1px 1px 1px #999;
|
||||
-webkit-box-shadow: 1px 1px 1px #999;
|
||||
box-shadow: 1px 1px 1px #999;
|
||||
@@ -450,7 +466,8 @@
|
||||
font-weight: bold;
|
||||
margin-top: 10px;
|
||||
background-color: rgba(255,255,255,0.3);
|
||||
padding: 5px;
|
||||
padding:
|
||||
5px;
|
||||
}
|
||||
|
||||
div.getRecordAlternate label.lab {
|
||||
@@ -458,11 +475,13 @@
|
||||
}
|
||||
div.recSets label.hiddable:hover {
|
||||
cursor: pointer;
|
||||
background-color: rgba(255,255,255,0.1);
|
||||
background-color:
|
||||
rgba(255,255,255,0.1);
|
||||
}
|
||||
div.getRecordAlternate label.lab:hover {
|
||||
cursor: pointer;
|
||||
background-color: rgba(0,0,0,0.3);
|
||||
background-color:
|
||||
rgba(0,0,0,0.3);
|
||||
}
|
||||
|
||||
|
||||
@@ -482,7 +501,8 @@
|
||||
div.recSets div.recSetAlternate {
|
||||
text-align: left;
|
||||
padding: 5px;
|
||||
padding-left: 15px;
|
||||
padding-left:
|
||||
15px;
|
||||
background-color: rgba(0,0,0,0.2);
|
||||
}
|
||||
div.recSets div.recSetInner {
|
||||
@@ -491,7 +511,8 @@
|
||||
div.recSets div.recSetInner a {
|
||||
border: solid 1px #FFF;
|
||||
color: #FFF;
|
||||
padding: 5px;
|
||||
padding:
|
||||
5px;
|
||||
margin: 5px;
|
||||
font-size: 12px;
|
||||
display: block;
|
||||
@@ -513,7 +534,8 @@
|
||||
display: block;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
margin-top: 10px;
|
||||
margin-top:
|
||||
10px;
|
||||
background-color: rgba(255, 255, 255, 0.3);
|
||||
padding: 5px;
|
||||
}
|
||||
@@ -521,7 +543,8 @@
|
||||
div.divMetadata {
|
||||
text-align: left;
|
||||
margin: 10px;
|
||||
background-color: rgba(255,255,255,0.6);
|
||||
background-color:
|
||||
rgba(255,255,255,0.6);
|
||||
padding: 10px;
|
||||
color: #444751;
|
||||
}
|
||||
@@ -556,14 +579,16 @@
|
||||
|
||||
div.getRecordAlternate .hiddable:hover {
|
||||
cursor: pointer;
|
||||
background-color: rgba(0,0,0,0.3);
|
||||
background-color:
|
||||
rgba(0,0,0,0.3);
|
||||
}
|
||||
|
||||
.result-count {
|
||||
text-align: left;
|
||||
padding: 20px;
|
||||
margin-left: 40px;
|
||||
margin-bottom: 20px;
|
||||
margin-bottom:
|
||||
20px;
|
||||
}
|
||||
.result-count label {
|
||||
font-weight: bold;
|
||||
@@ -610,7 +635,8 @@
|
||||
<xsl:attribute name="class">active</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=Identify')"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=Identify')"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Identify
|
||||
</a>
|
||||
@@ -621,7 +647,8 @@
|
||||
<xsl:attribute name="class">active</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListSets')"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListSets')"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Sets
|
||||
</a>
|
||||
@@ -632,7 +659,8 @@
|
||||
<xsl:attribute name="class">active</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc')"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc')"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Records
|
||||
</a>
|
||||
@@ -643,18 +671,21 @@
|
||||
<xsl:attribute name="class">active</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc')"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc')"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Identifiers
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a title="Metadata Formats available">
|
||||
<xsl:if test="/oai:OAI-PMH/oai:request/@verb = 'ListMetadataFormats'">
|
||||
<xsl:if
|
||||
test="/oai:OAI-PMH/oai:request/@verb = 'ListMetadataFormats'">
|
||||
<xsl:attribute name="class">active</xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListMetadataFormats')"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListMetadataFormats')"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Metadata Formats
|
||||
</a>
|
||||
@@ -663,7 +694,10 @@
|
||||
|
||||
<div class="date">
|
||||
<label>Response Date</label>
|
||||
<span><xsl:value-of select="translate(oai:OAI-PMH/oai:responseDate/text(), 'TZ', ' ')" /></span>
|
||||
<span>
|
||||
<xsl:value-of
|
||||
select="translate(oai:OAI-PMH/oai:responseDate/text(), 'TZ', ' ')" />
|
||||
</span>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
@@ -674,22 +708,32 @@
|
||||
<table class="identify">
|
||||
<tr class="info">
|
||||
<td class="name">Repository Name</td>
|
||||
<td class="value"><xsl:value-of select="oai:OAI-PMH/oai:Identify/oai:repositoryName/text()" /></td>
|
||||
<td class="value">
|
||||
<xsl:value-of
|
||||
select="oai:OAI-PMH/oai:Identify/oai:repositoryName/text()" />
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
<tr class="info">
|
||||
<td class="name">E-Mail Contact</td>
|
||||
<td class="value"><a>
|
||||
<td class="value">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat('mailto:', oai:OAI-PMH/oai:Identify/oai:adminEmail/text())" />
|
||||
<xsl:value-of
|
||||
select="concat('mailto:', oai:OAI-PMH/oai:Identify/oai:adminEmail/text())" />
|
||||
</xsl:attribute>
|
||||
<xsl:value-of select="oai:OAI-PMH/oai:Identify/oai:adminEmail/text()" /></a>
|
||||
<xsl:value-of
|
||||
select="oai:OAI-PMH/oai:Identify/oai:adminEmail/text()" />
|
||||
</a>
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
<tr class="info">
|
||||
<td class="name">Description</td>
|
||||
<td class="value"><xsl:value-of select="oai:OAI-PMH/oai:Identify/oai:description/node()/text()" /></td>
|
||||
<td class="value">
|
||||
<xsl:value-of
|
||||
select="oai:OAI-PMH/oai:Identify/oai:description/node()/text()" />
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -697,31 +741,45 @@
|
||||
</tr>
|
||||
<tr class="info">
|
||||
<td class="name">Protocol Version</td>
|
||||
<td class="value"><xsl:value-of select="oai:OAI-PMH/oai:Identify/oai:protocolVersion/text()" /></td>
|
||||
<td class="value">
|
||||
<xsl:value-of
|
||||
select="oai:OAI-PMH/oai:Identify/oai:protocolVersion/text()" />
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
<tr class="info">
|
||||
<td class="name">Earliest Registered Date</td>
|
||||
<td class="value"><xsl:value-of select="translate(oai:OAI-PMH/oai:Identify/oai:earliestDatestamp/text(), 'TZ' ,' ')" /></td>
|
||||
<td class="value">
|
||||
<xsl:value-of
|
||||
select="translate(oai:OAI-PMH/oai:Identify/oai:earliestDatestamp/text(), 'TZ' ,' ')" />
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
<tr class="info">
|
||||
<td class="name">Date Granularity</td>
|
||||
<td class="value"><xsl:value-of select="translate(oai:OAI-PMH/oai:Identify/oai:granularity/text(), 'TZ', ' ')" /></td>
|
||||
<td class="value">
|
||||
<xsl:value-of
|
||||
select="translate(oai:OAI-PMH/oai:Identify/oai:granularity/text(), 'TZ', ' ')" />
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
<tr class="info">
|
||||
<td class="name">Deletion Mode</td>
|
||||
<td class="value"><xsl:value-of select="oai:OAI-PMH/oai:Identify/oai:deletedRecord/text()" /></td>
|
||||
<td class="value">
|
||||
<xsl:value-of
|
||||
select="oai:OAI-PMH/oai:Identify/oai:deletedRecord/text()" />
|
||||
</td>
|
||||
<td class="clear"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</xsl:if>
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListSets">
|
||||
<div class="result-count"><label>Results fetched:</label>
|
||||
<div class="result-count">
|
||||
<label>Results fetched:</label>
|
||||
<span>
|
||||
<xsl:call-template name="result-count">
|
||||
<xsl:with-param name="path" select="oai:OAI-PMH/oai:ListSets/oai:set"/>
|
||||
<xsl:with-param name="path"
|
||||
select="oai:OAI-PMH/oai:ListSets/oai:set" />
|
||||
</xsl:call-template>
|
||||
</span>
|
||||
</div>
|
||||
@@ -734,24 +792,31 @@
|
||||
<div class="name">
|
||||
<xsl:choose>
|
||||
<xsl:when test="string-length(oai:setName/text()) > 83">
|
||||
<xsl:value-of select="substring(oai:setName/text(),0, 80 )"/>...
|
||||
<xsl:value-of select="substring(oai:setName/text(),0, 80 )" />
|
||||
...
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="oai:setName/text()"/>
|
||||
<xsl:value-of select="oai:setName/text()" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<span class="tiny">(<xsl:value-of select="oai:setSpec/text()" />)</span>
|
||||
<span class="tiny">
|
||||
(
|
||||
<xsl:value-of select="oai:setSpec/text()" />
|
||||
)
|
||||
</span>
|
||||
</div>
|
||||
<div class="spec">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', oai:setSpec/text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', oai:setSpec/text())" />
|
||||
</xsl:attribute>
|
||||
Records
|
||||
</a>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', oai:setSpec/text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', oai:setSpec/text())" />
|
||||
</xsl:attribute>
|
||||
Identifiers
|
||||
</a>
|
||||
@@ -761,10 +826,12 @@
|
||||
<div class="clear"></div>
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListSets/oai:resumptionToken/text() != ''">
|
||||
<xsl:if
|
||||
test="oai:OAI-PMH/oai:ListSets/oai:resumptionToken/text() != ''">
|
||||
<a class="next">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListSets&resumptionToken=', oai:OAI-PMH/oai:ListSets/oai:resumptionToken/text())"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListSets&resumptionToken=', oai:OAI-PMH/oai:ListSets/oai:resumptionToken/text())"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Show More
|
||||
</a>
|
||||
@@ -775,10 +842,12 @@
|
||||
$('.sets div').mouseover(function() {
|
||||
$(this).find('a').css("visibility", "visible");
|
||||
});
|
||||
$('.sets div').mouseout(function () {
|
||||
$('.sets
|
||||
div').mouseout(function () {
|
||||
$(this).find('a').css("visibility", "hidden");
|
||||
});
|
||||
$('.sets div').find('a').css("visibility", "hidden");
|
||||
$('.sets div').find('a').css("visibility",
|
||||
"hidden");
|
||||
});
|
||||
</script>
|
||||
</xsl:if>
|
||||
@@ -790,12 +859,20 @@
|
||||
</div>
|
||||
</xsl:if>
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListMetadataFormats">
|
||||
<div class="result-count"><label>Results fetched</label> <span><xsl:value-of select="count(oai:OAI-PMH/oai:ListMetadataFormats/oai:metadataFormat)"/></span></div>
|
||||
<div class="result-count">
|
||||
<label>Results fetched</label>
|
||||
<span>
|
||||
<xsl:value-of
|
||||
select="count(oai:OAI-PMH/oai:ListMetadataFormats/oai:metadataFormat)" />
|
||||
</span>
|
||||
</div>
|
||||
<div class="formats">
|
||||
<xsl:for-each select="oai:OAI-PMH/oai:ListMetadataFormats/oai:metadataFormat">
|
||||
<xsl:for-each
|
||||
select="oai:OAI-PMH/oai:ListMetadataFormats/oai:metadataFormat">
|
||||
<a class="format">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=', oai:metadataPrefix/text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=', oai:metadataPrefix/text())" />
|
||||
</xsl:attribute>
|
||||
<div class="prefix">
|
||||
<xsl:value-of select="oai:metadataPrefix/text()"></xsl:value-of>
|
||||
@@ -816,10 +893,12 @@
|
||||
</xsl:if>
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListIdentifiers">
|
||||
<div class="identifiers">
|
||||
<div class="result-count"><label>Results fetched:</label>
|
||||
<div class="result-count">
|
||||
<label>Results fetched:</label>
|
||||
<span>
|
||||
<xsl:call-template name="result-count">
|
||||
<xsl:with-param name="path" select="oai:OAI-PMH/oai:ListIdentifiers/oai:header"/>
|
||||
<xsl:with-param name="path"
|
||||
select="oai:OAI-PMH/oai:ListIdentifiers/oai:header" />
|
||||
</xsl:call-template>
|
||||
</span>
|
||||
</div>
|
||||
@@ -850,17 +929,21 @@
|
||||
setspecalternate
|
||||
</xsl:attribute>
|
||||
</xsl:if>
|
||||
<label><xsl:value-of select="text()" /></label>
|
||||
<label>
|
||||
<xsl:value-of select="text()" />
|
||||
</label>
|
||||
<div class="innerspec">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', text())" />
|
||||
</xsl:attribute>
|
||||
Records
|
||||
</a>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', text())" />
|
||||
</xsl:attribute>
|
||||
Identifiers
|
||||
</a>
|
||||
@@ -872,7 +955,8 @@
|
||||
</div>
|
||||
<a class="getrecord">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=GetRecord&metadataPrefix=oai_dc&identifier=', oai:identifier/text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=GetRecord&metadataPrefix=oai_dc&identifier=', oai:identifier/text())" />
|
||||
</xsl:attribute>
|
||||
Get Record
|
||||
</a>
|
||||
@@ -881,10 +965,12 @@
|
||||
<div class="clear"></div>
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListIdentifiers/oai:resumptionToken/text() != ''">
|
||||
<xsl:if
|
||||
test="oai:OAI-PMH/oai:ListIdentifiers/oai:resumptionToken/text() != ''">
|
||||
<a class="next">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&resumptionToken=', oai:OAI-PMH/oai:ListIdentifiers/oai:resumptionToken/text())"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&resumptionToken=', oai:OAI-PMH/oai:ListIdentifiers/oai:resumptionToken/text())"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Show More
|
||||
</a>
|
||||
@@ -913,33 +999,44 @@
|
||||
<div class="getcontent">
|
||||
<div class="in">
|
||||
<label>Identifier</label>
|
||||
<span><xsl:value-of select="oai:OAI-PMH/oai:GetRecord/oai:record/oai:header/oai:identifier/text()"></xsl:value-of></span>
|
||||
<span>
|
||||
<xsl:value-of
|
||||
select="oai:OAI-PMH/oai:GetRecord/oai:record/oai:header/oai:identifier/text()"></xsl:value-of>
|
||||
</span>
|
||||
</div>
|
||||
<div class="in">
|
||||
<label>Last Modified</label>
|
||||
<span><xsl:value-of select="translate(oai:OAI-PMH/oai:GetRecord/oai:record/oai:header/oai:datestamp/text(), 'TZ', ' ')"></xsl:value-of></span>
|
||||
<span>
|
||||
<xsl:value-of
|
||||
select="translate(oai:OAI-PMH/oai:GetRecord/oai:record/oai:header/oai:datestamp/text(), 'TZ', ' ')"></xsl:value-of>
|
||||
</span>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="recSets">
|
||||
<label class="lab">Sets</label>
|
||||
<div class="list">
|
||||
<xsl:for-each select="oai:OAI-PMH/oai:GetRecord/oai:record/oai:header/oai:setSpec">
|
||||
<xsl:for-each
|
||||
select="oai:OAI-PMH/oai:GetRecord/oai:record/oai:header/oai:setSpec">
|
||||
|
||||
<div class="recSet">
|
||||
<xsl:if test="position() mod 2 = 1">
|
||||
<xsl:attribute name="class">recSetAlternate</xsl:attribute>
|
||||
</xsl:if>
|
||||
<label class="getrecordsets"><xsl:value-of select="text()" /></label>
|
||||
<label class="getrecordsets">
|
||||
<xsl:value-of select="text()" />
|
||||
</label>
|
||||
<div class="recSetInner">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', text())" />
|
||||
</xsl:attribute>
|
||||
Records
|
||||
</a>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', text())" />
|
||||
</xsl:attribute>
|
||||
Identifiers
|
||||
</a>
|
||||
@@ -954,7 +1051,8 @@
|
||||
</div>
|
||||
<div class="metadata">
|
||||
<div class="metadataTitle hiddable">Metadata</div>
|
||||
<xsl:apply-templates select="oai:OAI-PMH/oai:GetRecord/oai:record/oai:metadata/*" />
|
||||
<xsl:apply-templates
|
||||
select="oai:OAI-PMH/oai:GetRecord/oai:record/oai:metadata/*" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -971,26 +1069,21 @@
|
||||
</script>
|
||||
</xsl:if>
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListRecords">
|
||||
<div class="result-count"><label>Results fetched:</label>
|
||||
<div class="result-count">
|
||||
<label>Results fetched:</label>
|
||||
<span>
|
||||
<xsl:call-template name="result-count">
|
||||
<xsl:with-param name="path" select="oai:OAI-PMH/oai:ListRecords/oai:record"/>
|
||||
<xsl:with-param name="path"
|
||||
select="oai:OAI-PMH/oai:ListRecords/oai:record" />
|
||||
</xsl:call-template>
|
||||
<!--
|
||||
<xsl:choose>
|
||||
<xsl:when test="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/@cursor">
|
||||
<!-- <xsl:choose> <xsl:when test="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/@cursor">
|
||||
<xsl:variable name="cursor" select="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/@cursor"/>
|
||||
<xsl:variable name="per-page" select="count(oai:OAI-PMH/oai:ListRecords/oai:record)"/>
|
||||
<xsl:value-of select="$cursor * $per-page"/>-<xsl:value-of select="($cursor+1) * $per-page"/>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="count(oai:OAI-PMH/oai:ListRecords/oai:record)"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/@completeListSize">
|
||||
<xsl:value-of select="$cursor * $per-page"/>-<xsl:value-of select="($cursor+1)
|
||||
* $per-page"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="count(oai:OAI-PMH/oai:ListRecords/oai:record)"/>
|
||||
</xsl:otherwise> </xsl:choose> <xsl:if test="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/@completeListSize">
|
||||
of <xsl:value-of select="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/@completeListSize"/>
|
||||
</xsl:if>
|
||||
-->
|
||||
</xsl:if> -->
|
||||
</span>
|
||||
</div>
|
||||
<xsl:for-each select="oai:OAI-PMH/oai:ListRecords/oai:record">
|
||||
@@ -1003,11 +1096,16 @@
|
||||
<div class="getcontent">
|
||||
<div class="in">
|
||||
<label>Identifier</label>
|
||||
<span><xsl:value-of select="oai:header/oai:identifier/text()"></xsl:value-of></span>
|
||||
<span>
|
||||
<xsl:value-of select="oai:header/oai:identifier/text()"></xsl:value-of>
|
||||
</span>
|
||||
</div>
|
||||
<div class="in">
|
||||
<label>Last Modified</label>
|
||||
<span><xsl:value-of select="translate(oai:header/oai:datestamp/text(), 'TZ', ' ')"></xsl:value-of></span>
|
||||
<span>
|
||||
<xsl:value-of
|
||||
select="translate(oai:header/oai:datestamp/text(), 'TZ', ' ')"></xsl:value-of>
|
||||
</span>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="recSets">
|
||||
@@ -1018,17 +1116,21 @@
|
||||
<xsl:if test="position() mod 2 = 1">
|
||||
<xsl:attribute name="class">recSetAlternate</xsl:attribute>
|
||||
</xsl:if>
|
||||
<label class="getrecordsets"><xsl:value-of select="text()" /></label>
|
||||
<label class="getrecordsets">
|
||||
<xsl:value-of select="text()" />
|
||||
</label>
|
||||
<div class="recSetInner">
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&metadataPrefix=oai_dc&set=', text())" />
|
||||
</xsl:attribute>
|
||||
Records
|
||||
</a>
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', text())" />
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListIdentifiers&metadataPrefix=oai_dc&set=', text())" />
|
||||
</xsl:attribute>
|
||||
Identifiers
|
||||
</a>
|
||||
@@ -1049,10 +1151,12 @@
|
||||
</div>
|
||||
</xsl:for-each>
|
||||
|
||||
<xsl:if test="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/text() != ''">
|
||||
<xsl:if
|
||||
test="oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/text() != ''">
|
||||
<a class="next">
|
||||
<xsl:attribute name="href">
|
||||
<xsl:value-of select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&resumptionToken=', oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/text())"></xsl:value-of>
|
||||
<xsl:value-of
|
||||
select="concat(/oai:OAI-PMH/oai:request/text(), '?verb=ListRecords&resumptionToken=', oai:OAI-PMH/oai:ListRecords/oai:resumptionToken/text())"></xsl:value-of>
|
||||
</xsl:attribute>
|
||||
Show More
|
||||
</a>
|
||||
@@ -1081,7 +1185,11 @@
|
||||
<div class="footer">
|
||||
<div class="right">
|
||||
<p class="text">Stylesheet provided by</p>
|
||||
<p class="image"><a href="http://www.lyncode.com"><img src="static/lyncode.png" alt="Lyncode logo" /></a></p>
|
||||
<p class="image">
|
||||
<a href="http://www.lyncode.com">
|
||||
<img src="static/lyncode.png" alt="Lyncode logo" />
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1099,52 +1207,81 @@
|
||||
<div class="divXML">
|
||||
<div class="clear"></div>
|
||||
<span>
|
||||
<xsl:attribute name="class">level<xsl:value-of select="count(ancestor::*)-4" /></xsl:attribute>
|
||||
<xsl:attribute name="class">level<xsl:value-of
|
||||
select="count(ancestor::*)-4" /></xsl:attribute>
|
||||
</span>
|
||||
<span class="tag"><</span><span class="tagname"><xsl:value-of select='name(.)' /></span><xsl:apply-templates select="@*" mode='prettyXML'/><span class="tag">></span>
|
||||
<span class="tag"><</span>
|
||||
<span class="tagname">
|
||||
<xsl:value-of select='name(.)' />
|
||||
</span>
|
||||
<xsl:apply-templates select="@*" mode='prettyXML' />
|
||||
<span class="tag">></span>
|
||||
<xsl:apply-templates select="node()" mode='prettyXML' />
|
||||
<div class="clear"></div>
|
||||
<span>
|
||||
<xsl:attribute name="class">level<xsl:value-of select="count(ancestor::*)-4" /></xsl:attribute>
|
||||
<xsl:attribute name="class">level<xsl:value-of
|
||||
select="count(ancestor::*)-4" /></xsl:attribute>
|
||||
</span>
|
||||
<span class="tag"></</span><span class="tagname"><xsl:value-of select='name(.)' /></span><span class="tag">></span>
|
||||
<span class="tag"></</span>
|
||||
<span class="tagname">
|
||||
<xsl:value-of select='name(.)' />
|
||||
</span>
|
||||
<span class="tag">></span>
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="text()" mode='prettyXML'>
|
||||
<div class="clear"></div>
|
||||
<div class="divText">
|
||||
<xsl:attribute name="class">level<xsl:value-of select="count(ancestor::*)-3" /> divText</xsl:attribute>
|
||||
<xsl:attribute name="class">level<xsl:value-of
|
||||
select="count(ancestor::*)-3" /> divText</xsl:attribute>
|
||||
<xsl:value-of select='.' />
|
||||
</div>
|
||||
</xsl:template>
|
||||
|
||||
<xsl:template match="@*" mode='prettyXML'>
|
||||
<xsl:text> </xsl:text><div class="divAttribute"><xsl:value-of select='name()' /></div><span class="equal">=</span><span class="quote">"</span><div class="divAttributeValue"><xsl:value-of select='.' /></div><span class="quote">"</span>
|
||||
<xsl:text> </xsl:text>
|
||||
<div class="divAttribute">
|
||||
<xsl:value-of select='name()' />
|
||||
</div>
|
||||
<span class="equal">=</span>
|
||||
<span class="quote">"</span>
|
||||
<div class="divAttributeValue">
|
||||
<xsl:value-of select='.' />
|
||||
</div>
|
||||
<span class="quote">"</span>
|
||||
</xsl:template>
|
||||
|
||||
|
||||
<xsl:template name="result-count">
|
||||
<xsl:param name="path" />
|
||||
<xsl:variable name="cursor" select="$path/../oai:resumptionToken/@cursor" />
|
||||
<xsl:variable name="count" select="count($path)" />
|
||||
<xsl:variable name="total" select="$path/../oai:resumptionToken/@completeListSize" />
|
||||
<xsl:choose>
|
||||
<xsl:when test="$path/../oai:resumptionToken/@cursor">
|
||||
<xsl:variable name="cursor" select="$path/../oai:resumptionToken/@cursor"/>
|
||||
<xsl:variable name="per-page" select="count($path)"/>
|
||||
<xsl:when test="$cursor">
|
||||
<xsl:choose>
|
||||
<xsl:when test="$per-page < 100"> <!-- on the last page of results we have to assume that there were 100 results per page and that @completeListSize is available -->
|
||||
<xsl:value-of select="$path/../oai:resumptionToken/@completeListSize - $per-page"/>-<xsl:value-of select="$path/../oai:resumptionToken/@completeListSize"/>
|
||||
<xsl:when test="$path/../oai:resumptionToken/text() = ''">
|
||||
<!-- on the last page of results we have to assume that @completeListSize is available -->
|
||||
<xsl:value-of
|
||||
select="$total - $count" />
|
||||
-
|
||||
<xsl:value-of select="$total" />
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="$cursor * $per-page"/>-<xsl:value-of select="($cursor+1) * $per-page"/>
|
||||
<xsl:value-of select="$cursor * $count" />
|
||||
-
|
||||
<xsl:value-of select="($cursor+1) * $count" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="count($path)"/>
|
||||
<xsl:value-of select="$count" />
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:if test="$path/../oai:resumptionToken/@completeListSize">
|
||||
of <xsl:value-of select="$path/../oai:resumptionToken/@completeListSize"/>
|
||||
<xsl:if test="$total">
|
||||
of
|
||||
<xsl:value-of select="$total" />
|
||||
</xsl:if>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
|
@@ -34,22 +34,22 @@
|
||||
</datafield>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="doc:metadata/doc:element[@name='dc']/doc:element[@name='date']/doc:element[@name='issued']/doc:element/doc:field[@name='value']">
|
||||
<datafield tag="260">
|
||||
<datafield ind2=" " ind1=" " tag="260">
|
||||
<subfield code="c"><xsl:value-of select="." /></subfield>
|
||||
</datafield>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="doc:metadata/doc:element[@name='dc']/doc:element[@name='description']/doc:element[@name='abstract']/doc:element/doc:field[@name='value']">
|
||||
<datafield tag="520">
|
||||
<datafield ind2=" " ind1=" " tag="520">
|
||||
<subfield code="a"><xsl:value-of select="." /></subfield>
|
||||
</datafield>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="doc:metadata/doc:element[@name='dc']/doc:element[@name='identifier']/doc:element/doc:element/doc:field[@name='value']">
|
||||
<datafield ind1="8" tag="024">
|
||||
<datafield ind1="8" ind2=" " tag="024">
|
||||
<subfield code="a"><xsl:value-of select="." /></subfield>
|
||||
</datafield>
|
||||
</xsl:for-each>
|
||||
<xsl:for-each select="doc:metadata/doc:element[@name='dc']/doc:element[@name='subject']/doc:element/doc:field[@name='value']">
|
||||
<datafield tag="653">
|
||||
<datafield tag="653" ind2=" " ind1=" " >
|
||||
<subfield code="a"><xsl:value-of select="." /></subfield>
|
||||
</datafield>
|
||||
</xsl:for-each>
|
||||
|
Reference in New Issue
Block a user