Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • GetRecord: Abfragen eines Datensatzes
  • Identify: Abfragen grundsätzlicher Informationen über den Provider, hier die DDB
  • ListIdentifiers: Abfragen mehrerer Datensatzinformationen (wie beispielsweise die Identifier)
  • ListMetadataFormats: Abfrage verfügbarer Metadatenformate, hier oai_dc und edm
  • ListRecords: Abgraben Abfragen mehrerer Datensätze
  • ListSets: Abfragen vorhandener Sets

URLs

Datenweitergabe an Europeana

...

Kriterium

Benennung des Datensets

Kommentar

Beispiele (in Solr-Query-Syntax)

dataset_id 

<dataset_id>

ID des Datensets. (dies wird am häufigsten benutzt) 

dataset-id:5738807392711401XjYt 

dataset_id AND provider_id 

<dataset_id>:<provider_id>

Ein Datenpartner kann mehrere Provider liefern. Nur einige müssen an Europeana weitergegeben werden (z.B. Digicult) 

dataset-id:5738807392711401XjYt AND provider_id:VSHJWG7QLS7Y3NS2HKE43E5Q5NJ7OCLS 

dataset_id AND type_fct 

<dataset_id>:<type_fct>

Ein Datenpartner möchte z.B. nur die Videos aus einem Datenset liefern. 

dataset-id:5738807392711401XjYt AND type_fct:mediatype_005 

dataset_id AND license 

<dataset_id>:<license>

Ein Datenpartner möchte nur die Objekte mit der Lizenz  „RV-FZ“ innerhalb eines Datensets liefern 

dataset-id:5738807392711401XjYt AND license:"http://www.deutsche-digitale-bibliothek.de/lizenzen/rv-fz/" 


Expand

...

title

Allgemein

  1. Das Harvesting einzelner DDB-IDs ist über die Methode GetRecord möglich. 
  2. Veränderungen innerhalb einen OAI-Datensets über die Zeit können durch einen Timestamp abfragbar sein. 
  3. Deleted Records werden gemäß der OAI/PMH-Spezifikation unterstützt. 
  4. Das Löschen von OAI-Sets ist zunächst nicht vorgesehen, da es eine komplette Neuindexierung notwendig macht. Das ist bisher nicht implementiert.

Blacklisting und Whitelisting

  1. Der (koopertations-) vertragliche Zusammenhang von Europeana-Weitergabe und API-Blacklisting hat keine Auswirkungen auf die OAI-Schnittstelle. Das ist ein vertragliches Problem und muss auch an dieser Stelle gelöst werden. Ein Blacklisting (Daten eines Datenpartners lassen sich nicht über die DDB-API abrufen) sollte nicht mit einer Datenlieferung über die DDB an Europeana kombiniert werden können. Für alle nicht-geblacklisteten Daten werden OAI-Sets erstellt. Die weitere Klärung obliegt DDB/DNB bzw. SSt.
  2. Eine Freischaltung auf dem OAI-Server (Whitelisting) ist nicht vorgesehen. Jedes DDB-Objekt bekommt auf dem OAI-Server einen OAI/DC-Datensatz, der erst einmal nur die DDB-ID enthält. 

Konventionen/ Festlegungen

type_fct




Expand
titlelicense


ElementTerm
rights_001Lizenzgruppe 1
rights_002Lizenzgruppe 2
rights_003Lizenzgruppe 3

siehe auch https://dev.fiz-karlsruhe.de/stash/projects/DDB/repos/ddb-mapping-new/browse/opt/transformationdir/conf/concordance/common/license_group.xml

Anforderungen

Allgemein

  1. Das Harvesting einzelner DDB-IDs ist über die Methode GetRecord möglich. 
  2. Veränderungen innerhalb einen OAI-Datensets über die Zeit können durch einen Timestamp abfragbar sein. 
  3. Deleted Records werden gemäß der OAI/PMH-Spezifikation unterstützt. 
  4. Das Löschen von OAI-Sets ist zunächst nicht vorgesehen, da es eine komplette Neuindexierung notwendig macht. Das ist bisher nicht implementiert.

Blacklisting und Whitelisting

  1. Der (kooperations-) vertragliche Zusammenhang von Europeana-Weitergabe und API-Blacklisting hat keine Auswirkungen auf die OAI-Schnittstelle. Das ist ein vertragliches Problem und muss auch an dieser Stelle gelöst werden. Ein Blacklisting (Daten eines Datenpartners lassen sich nicht über die DDB-API abrufen) sollte nicht mit einer Datenlieferung über die DDB an Europeana kombiniert werden können. Für alle nicht-geblacklisteten Daten werden OAI-Sets erstellt. Die weitere Klärung obliegt DDB/DNB bzw. SSt.
  2. Eine Freischaltung auf dem OAI-Server (Whitelisting) ist nicht vorgesehen. Jedes DDB-Objekt bekommt auf dem OAI-Server einen OAI/DC-Datensatz, der erst einmal nur die DDB-ID enthält. 

Konventionen/ Festlegungen

  1. Alle Datumswerte werden als UTC-Zeit (ohne Zeitzone) verwendet.
    Das Format ist „yyyy-mm-ddTHH:mm:ssZ“, z. B. 2016-07-01T09:27:00Z}}
  2. Die OAI-Schnittstelle der DDB ist unter https://oai
  3. Alle Datumswerte werden als UTC-Zeit (ohne Zeitzone) verwendet.
    Das Format ist „yyyy-mm-ddTHH:mm:ssZ“, z. B. 2016-07-01T09:27:00Z}}
  4. Die OAI-Schnittstelle der DDB ist unter https://oai.deutsche-digitale-bibliothek.de/ erreichbar. http://oai.deutsche-digitale-bibliothek.de/ leitet auf die verschlüsselte Schnittstelle weiter.
  5. Konfiguration der OAI-Schnittstelle (Logo: DDBpro_Logo_2_s_pos_RGB_G.svg oder DDBpro_Logo_2_s_pos_RGB_G.png oder DDBpro_Logo_2_s_pos_RGB_G_BG.jpg

    No Formatbranding.logo=DDBpro_Logo_2_s_pos_RGB_G.svg; branding.header.color=#f8f8f8; branding.service.name=DDBoai; branding.service.url=https://api.deutsche-digitale-bibliothek.de; branding.welcome.text=This is an OAI/PMH interface that allows users to access and harvest metadata provided by the Deutsche Digitale Bibliothek (DDB).; branding.imprint.url=https://www.deutsche-digitale-bibliothek.de/content/impressum; branding.privacy.url=https erreichbar. http://wwwoai.deutsche-digitale-bibliothek.de/content/datenschutzerklaerung; branding.font.family=Calibri, Arial, sans-serif; branding.font.color=#3e3a37; leitet auf die verschlüsselte Schnittstelle weiter.
  6. Konfiguration der OAI-Schnittstelle (Logo: DDBpro_Logo_2_s_pos_RGB_G.svg oder DDBpro_Logo_2_s_pos_RGB_G.png oder DDBpro_Logo_2_s_pos_RGB_G_BG.jpg

  7. Anzahl der Objekte in einem Request: 300 (konfigurierbar in der Server-konfiguration bis max 1.000)
  8. Gültigkeit der Resumption-Token: theoretisch ewig (Verwendung der Cursor-Funktionalität von SOLR)
    • Bei einem Update während des Harvestings: Da nach Datum aufsteigend sortiert wird werden geänderte Objekte ans Ende der Liste sortiert und werden ggf. zuletzt noch einmal ausgeliefert.

StatusCodes

Die OAI-Schnittstelle setzt HTTP-StatusCodes um. 

  • 200 - OK
  • 503 - Service unavailable → Überlastung der Schnittstelle
  • 429 - Too Many Requests → Überlastung der Schnittstelle
  • 400 - Bad Request → OAI-ErrorConditions
  • 404 - Not Found

HTTP compression

Die OAI-PMH-Schnittstelle der DDB unterstützt HTTP-Kompression gzip und br (Brotli). Siehe auch

Jira
serverJIRA - Deutsche Digitale Bibliothek
serverId67c0afcf-3564-3fd0-8d4d-a69afd7aed63
keyDDBTASK-1954

...