UI and API to the Integrated Authority File (Gemeinsame Normdatei, GND)
fsteeg Merge pull request #160 from hbz/lobid-338-license
Consistent license information
Latest commit 642c4bc Oct 5, 2018

README.textile

About

lobid-gnd: access GND data as JSON-LD over HTTP.

Setup

Prerequisites

sbt 0.13 or newer — download sbt

Elasticsearch 5.6.x (configured in application.conf)

Build

Get the code, change into the project directory, and run the tests:

git clone https://github.com/hbz/lobid-gnd.git ; cd lobid-gnd ; sbt test

Data

Baseline

Get the GND RDF/XML source data:

wget -O GND.rdf.gz http://datendienst.dnb.de/cgi-bin/mabit.pl?cmd=fetch&userID=opendata&pass=opendata&mabheft=GND.rdf.gz

gunzip GND.rdf.gz

This should give you a local file called ‘GND.rdf’. You can configure file names in ‘conf/application.conf’.

Convert the data to JSON-LD lines, the index data format:

sbt "runMain apps.ConvertBaseline"

With the default ‘conf/application.conf’ this should give you a local file called ‘GND.jsonl’.

Updates

Updates are pulled via the DNB OAI-PMH interface.

Pass either one argument, the start date for getting updates, or two, the start and the end date:

sbt "runMain apps.ConvertUpdates 2017-10-01 2017-10-02"

The date of the most recent update is stored in ‘GND-lastSuccessfulUpdate.txt’ (can be changed in the config).

Web

In ‘lobid-gnd’, run the web application:

sbt run

Open http://localhost:9000/gnd

If the index configured in application.conf does not exists, indexing will happen automatically on the first startup.

Eclipse

To set up an Eclipse project, first generate the Eclipse config for your machine:

sbt "eclipse with-source=true"

Then import the project in Eclipse: “File” > “Import” > “Existing Projects into Workspace”.