Individuelle Anpassung von GND-Auto-Suggests mit lobid-gnd

Wir haben kürzlich eine Möglichkeit in lobid ergänzt, um das Format von durch die API gelieferten Auto-Suggests individuell anzupassen, siehe auch den Blogpost Customize your GND autosuggests.

Eine Beispielumsetzung sieht so aus:

Das heißt, wie haben nach der Namensangabe Geburts- sowie Todesort und -datum gruppiert und * sowie als Merkmal der jeweiligen Angabe ergänzt.

Die Auto-Suggest funktionieren weiterhin über die Spezifkation der Felder nach dem Parameter format=json und einem anschließenden Doppelpunkt. Es ist nun lediglich zusätzlich möglich, den Wert eines Feldes durch _{feld} ausgeben zu lassen und zusätzliche Zeichen wie zu ergänzen.

Hier die Query für die Ausgabe des obigen Outputs:

https://lobid.org/gnd/search?q=rowohlt+AND+type:Person&format=json%3ApreferredName,*_dateOfBirth+_placeOfBirth,%E2%80%A0_dateOfDeath+_placeOfDeath,placeOfActivity,professionOrOccupation

Der entscheidende Teil ist dieses hier:

preferredName,*_dateOfBirth+_placeOfBirth,†_dateOfDeath+_placeOfDeath,placeOfActivity,professionOrOccupation

Die Antwort liefert das folgende JSON zzurück:

[ {
  "label" : "Rowohlt, Hilda | † 1943",
  "id" : "https://d-nb.info/gnd/116004595X",
  "category" : "Individualisierte Person"
}, {
  "label" : "Rowohlt, Charlotta | Schauspielerin",
  "id" : "https://d-nb.info/gnd/124750848X",
  "category" : "Individualisierte Person"
}, {
  "label" : "Rowohlt, Heinrich",
  "id" : "https://d-nb.info/gnd/139303960",
  "category" : "Individualisierte Person"
}, {
  "image" : "https://commons.wikimedia.org/wiki/Special:FilePath/HARRYROW.jpg?width=100",
  "label" : "Rowohlt, Harry | * 1945  Hamburg | † 2015  Hamburg | Schriftsteller; Lyriker; Verleger; Journalist; Sprecher; Übersetzer",
  "id" : "https://d-nb.info/gnd/107828553",
  "category" : "Individualisierte Person"
}, {
  "label" : "Rowohlt, Hilde",
  "id" : "https://d-nb.info/gnd/116667230",
  "category" : "Individualisierte Person"
}, {
  "label" : "Rowohlt, Ernst | * 1887  Bremen | † 1960  Hamburg | Leipzig; Berlin | Verleger",
  "id" : "https://d-nb.info/gnd/118603493",
  "category" : "Individualisierte Person"
}, {
  "label" : "Pierenkämper-Rowohlt, Maria | * 1910 | † 2005 | Hamburg-Volksdorf | Schauspielerin",
  "id" : "https://d-nb.info/gnd/116184620",
  "category" : "Individualisierte Person"
}, {
  "label" : "Ledig-Rowohlt, Heinrich Maria | * 1908  Leipzig | † 1992  Delhi | Verleger",
  "id" : "https://d-nb.info/gnd/118570757",
  "category" : "Individualisierte Person"
}, {
  "label" : "Ledig-Rowohlt, Jane | † 1994 | Hamburg",
  "id" : "https://d-nb.info/gnd/116853166",
  "category" : "Individualisierte Person"
}, {
  "label" : "Pierenkämpfer, Maria | * [19XX] | Schauspielerin",
  "id" : "https://d-nb.info/gnd/1329213513",
  "category" : "Individualisierte Person"
} ]

Die Umsetzung lässt beliebige Anpassungen zu, z.B. gibt das hier anstatt der Zeichen „geboren“ und „gestorben“ zurück:

preferredName,geboren_dateOfBirth,placeOfBirth,gestorben_dateOfDeath,placeOfDeath,placeOfActivity,professionOrOccupation

Vielleicht ist das ja auch für andere nützlich. Gebt uns bescheid, wenn es Probleme gibt oder auch, wenn ihr eure Anwendung(en) dadurch verbessern konntet.

Diese Funktionalität haben wir im Kontext der Entwicklung von Rheinland-Pfälzischer Bibliographie bzw. Personendatenbank implementiert, um die Lookups im Strapi-basierten Backend zu verbessern und spielen das gerne für die gefällige Nutzung durch andere nach lobid-gnd zurück.

3 Likes