Skip to content

Commit 5038a05

Browse files
Fetching additional information from GND
1 parent 0381a24 commit 5038a05

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

openatlas/api/external/gnd.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,15 @@
33
import requests
44
from flask import g
55

6+
from openatlas.display.util import link
7+
8+
9+
def print_values(values: dict[str: str]) -> str:
10+
items = []
11+
for item in values:
12+
items.append(link(item["label"], item["id"], external=True))
13+
return '<br>'.join(items)
14+
615

716
def fetch_gnd(id_: str) -> dict[str, Any]:
817
url = f'{g.gnd.resolver_url}{id_}.json'
@@ -13,4 +22,17 @@ def fetch_gnd(id_: str) -> dict[str, Any]:
1322
return {}
1423
if 'preferredName' in data:
1524
info['preferred name'] = data['preferredName']
25+
if 'gender' in data:
26+
info['gender'] = print_values(data['gender'])
27+
if 'dateOfBirth' in data:
28+
info['date of birth'] = data['dateOfBirth']
29+
if 'placeOfBirth' in data:
30+
info['place of birth'] = print_values(data['placeOfBirth'])
31+
if 'dateOfDeath' in data:
32+
info['date of death'] = data['dateOfDeath']
33+
if 'placeOfDeath' in data:
34+
info['place of death'] = print_values(data['placeOfDeath'])
35+
if 'type' in data:
36+
info['type'] = '<br>'.join(data['type'])
37+
1638
return info

0 commit comments

Comments
 (0)