[Kobv-opus-tester] Probleme mit der OAI-Schnittstelle
Sven Heitmann [UB]
heitmann at ub.uni-kl.de
Fre Feb 11 14:44:01 MET 2011
Hallo OPUS4-Entwickler-Team,
nach zahlreichen Anpassungen haben wir nun ein OPUS4-Testsystem inkl.
Daten (Test-Migration aus einer früheren OPUS-Version), welches noch auf
die Abnahme durch die DNB wartet. Einige Tests wurden bereits
durchgeführt, wobei folgende Fehler aufgetreten sind:
1. Es werden keine URLs bei der Abfrage (epicur) ausgegeben:
http://<opus4-testserver>/oai/?verb=ListRecords&metadataPrefix=epicur
Beispiel: OPUS2 (Aktuelles Produktivsystem; URL wird ausgegeben)
<record>
<header>
<identifier>oai:ub.uni-kl.de:kluedo_3</identifier>
<datestamp>2003-06-04T16:36:00Z</datestamp>
<setSpec>ddc:720</setSpec>
<setSpec>pub-type:8</setSpec>
</header>
<metadata>
<epicur
xmlns:epicur="http://www.persistent-identifier.de/xepicur/version1.0/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.persistent-identifier.de/xepicur/version1.0/
http://www.persistent-identifier.de/xepicur/version1.0/xepicur.xsd">
<administrative_data>
<delivery>
<update_status type="urn_new" />
</delivery>
</administrative_data>
<record>
<identifier scheme="urn:nbn:de">urn:nbn:de:bsz:386-kluedo-30</identifier>
<resource>
<identifier scheme="url" type="frontpage"
role="primary">http://kluedo.ub.uni-kl.de/volltexte/2000/3/</identifier>
<format scheme="imt">text/html</format>
</resource>
</record>
</epicur>
</metadata>
</record>
Beispiel: OPUS4 (Testsystem; URL fehlt)
<record>
<header>
<identifier>oai:ub.uni-kl.de:kluedo:3</identifier>
<datestamp>2000-02-10</datestamp>
<setSpec>pub-type:doctoralthesis</setSpec>
<setSpec>bibliography:false</setSpec>
</header>
<metadata>
<epicur xmlns="" xsi:schemaLocation="urn:nbn:de:1111-2004033116
http://www.persistent-identifier.de/xepicur/version1.0/xepicur.xsd">
<administrative_data>
<delivery>
<update_status type="urn_new"/>
</delivery>
</administrative_data>
<record>
<identifier scheme="urn:nbn:de">urn:nbn:de:bsz:386-kluedo-30</identifier>
<resource>
<format scheme="imt">text/html</format>
</resource>
</record>
</epicur>
</metadata>
</record>
Auszug unserer OAI-Einstellungen in der config.ini von OPUS4:
; File download URL pattern e.g.
http://www.example.com/fileadmin/$docid/$filename
; $filename gets replaced with the actual filename
oai.repository.fileurl =
http://<opus4-testserver>/frontdoor/index/index/docId/$docid/$filename
oai.repository.frontdoorurl =
http://<opus4-testserver>/frontdoor/index/index/docId/$docid
2. Die DNB hätte gerne ein erweitertes <epicur>-Wurzelelement.
Aktuell (OPUS4 Testsytem):
<epicur xsi:schemaLocation="urn:nbn:de:1111-2004033116
http://www.persistent-identifier.de/xepicur/version1.0/xepicur.xsd">
Von der DNB gewünscht:
<epicur xsi:schemaLocation="urn:nbn:de:1111-2004033116
http://www.persistent-identifier.de/xepicur/version1.0/xepicur.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:epicur="urn:nbn:de:1111-2004033116"
xmlns="urn:nbn:de:1111-2004033116">
Eine Anpassung der Datei
"/.../opus4/modules/oai/views/scripts/index/prefixes/epicur.xslt" um das
Wurzelelement zu erweitern, brachte leider nur eine nicht mehr
funktionierende OAI-Schnittstelle. Folgende Anpassungen wurden
vorübergehend vorgenommen:
prompt# diff -u epicur.xslt epicur.xslt.changed
--- epicur.xslt 2010-09-26 19:13:48.000000000 +0200
+++ epicur.xslt.changed 2011-02-11 11:35:52.322472528 +0100
@@ -57,6 +57,15 @@
<xsl:attribute name="xsi:schemaLocation">
<xsl:text>urn:nbn:de:1111-2004033116
http://www.persistent-identifier.de/xepicur/version1.0/xepicur.xsd</xsl:text>
</xsl:attribute>
+ <xsl:attribute name="xmlns:xsi">
+ <xsl:text>http://www.w3.org/2001/XMLSchema-instance</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="xmlns:epicur">
+ <xsl:text>urn:nbn:de:1111-2004033116</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="xmlns">
+ <xsl:text>urn:nbn:de:1111-2004033116</xsl:text>
+ </xsl:attribute>
<xsl:element name="administrative_data">
<xsl:element name="delivery">
<update_status type="urn_new"/>
3. Was bedeuten folgende Einstellparameter für die OAI-Schnittstelle (in
der Dokumentation fehlen leider Beschreibungen)?
oai.ddb.contactid =
oai.contactid =
oai.max.listidentifiers = 200
oai.max.listrecords = 100
Mit freundlichem Gruß
i. A. Sven Heitmann
--
Universitätsbibliothek (UB)
der Technischen Universität Kaiserslautern
- EDV-Abteilung -
Sven Heitmann
Paul-Ehrlich-Straße 32
67663 Kaiserslautern
Telefon: +49-631/205-2813
E-Mail: heitmann at ub.uni-kl.de