From c4487cd391de38315cdf56a234672874d5eb920a Mon Sep 17 00:00:00 2001 From: Christian Boulanger <info@bibliograph.org> Date: Mon, 11 Mar 2024 13:06:42 +0100 Subject: [PATCH] commit changes to wikidata-experiments --- wikidata/lib/dnb_data.py | 99 +++ wikidata/query-wikidata.ipynb | 1190 +++++++++++++++++++++++++++++++-- wikidata/readme.md | 2 +- wikidata/scholars.csv | 52 +- 4 files changed, 1266 insertions(+), 77 deletions(-) create mode 100644 wikidata/lib/dnb_data.py diff --git a/wikidata/lib/dnb_data.py b/wikidata/lib/dnb_data.py new file mode 100644 index 0000000..753d204 --- /dev/null +++ b/wikidata/lib/dnb_data.py @@ -0,0 +1,99 @@ +# code written with the help of GPT-4 + +import requests +from bs4 import BeautifulSoup +import csv +import urllib.parse +from lxml import etree + +def generate_query_string(person, startRecord): + base_url = "https://services.dnb.de/sru/dnb" + query = f'per="{person}"' + encoded_query = urllib.parse.quote(query) + query_url = f"{base_url}?operation=searchRetrieve&version=1.1&query={encoded_query}&recordSchema=oai_dc&maximumRecords=100&startRecord={startRecord}" + return query_url + +def fetch_data(person, start_record): + url = generate_query_string(person, start_record) + response = requests.get(url) + xml_data = response.content + + soup = BeautifulSoup(xml_data, 'lxml-xml') + diagnostics = soup.find('diagnostics') + if diagnostics: + diag_message = diagnostics.find('message').text + diag_details = diagnostics.find('details').text + print(f"Error: {diag_message} - {diag_details}") + return None + return xml_data + +def parse_records(xml_data): + ns = { + "oai_dc": "http://www.openarchives.org/OAI/2.0/oai_dc/", + "dc": "http://purl.org/dc/elements/1.1/", + "srw": "http://www.loc.gov/zing/srw/" + } + + root = etree.fromstring(xml_data) + records = root.xpath('//srw:record', namespaces=ns) + num_records = int(root.xpath('//srw:numberOfRecords', namespaces=ns)[0].text) + + results = [] + + for record in records: + title_elements = record.xpath('.//dc:title', namespaces=ns) + if not title_elements: + continue + title = title_elements[0].text + + authors = record.xpath('.//dc:creator', namespaces=ns) + author_list = [] + for author in authors: + author_list.append(author.text) + authors_str = '; '.join(author_list) + + publication_year_elements = record.xpath('.//dc:date', namespaces=ns) + if publication_year_elements: + publication_year = publication_year_elements[0].text + else: + publication_year = "" + + results.append([title, authors_str, publication_year]) + + return results, num_records + + +def query_to_csv(person, file_path): + start_record = 1 + num_records = 0 + retrieved_records = 0 + + with open(file_path, 'w', newline='', encoding='utf-8') as csvfile: + csvwriter = csv.writer(csvfile) + csvwriter.writerow(['Title', 'Author', 'Publication Year']) + + while True: + xml_data = fetch_data(person, start_record) + if xml_data is not None: + results, num_records = parse_records(xml_data) + if not results: + break + + with open(file_path, 'a', newline='', encoding='utf-8') as csvfile: + csvwriter = csv.writer(csvfile) + for row in results: + csvwriter.writerow(row) + retrieved_records += len(results) + start_record += len(results) + + if retrieved_records >= num_records: + break + +def load_data_from_csv(file_path): + data = [] + with open(file_path, 'r', newline='', encoding='utf-8') as csvfile: + csvreader = csv.reader(csvfile) + next(csvreader) # Skip the header row + for row in csvreader: + data.append(row) + return data diff --git a/wikidata/query-wikidata.ipynb b/wikidata/query-wikidata.ipynb index 607b0a2..af3bcd9 100644 --- a/wikidata/query-wikidata.ipynb +++ b/wikidata/query-wikidata.ipynb @@ -2,13 +2,13 @@ "cells": [ { "cell_type": "code", - "execution_count": 51, + "execution_count": 17, "id": "initial_id", "metadata": { "collapsed": true, "ExecuteTime": { - "end_time": "2024-03-09T10:11:18.347072Z", - "start_time": "2024-03-09T10:11:18.344958Z" + "end_time": "2024-03-10T21:43:47.207010900Z", + "start_time": "2024-03-10T21:43:47.199002300Z" } }, "outputs": [], @@ -16,6 +16,7 @@ "import os.path\n", "import textwrap\n", "import requests\n", + "import pandas as pd\n", "\n", "def generate_sparql_query(fullName, property_labels_to_ids, language='en'):\n", " \"\"\"\n", @@ -57,6 +58,40 @@ " return f\"https://commons.wikimedia.org/wiki/Special:FilePath/{requests.utils.quote(filename)}\"\n", "\n", "\n", + "\n", + "def query_wikidata(fullName, property_map, language='en'):\n", + " SPARQL_ENDPOINT = \"https://query.wikidata.org/sparql\"\n", + " query = generate_sparql_query(fullName, property_map, language)\n", + " headers = {'User-Agent': 'Mozilla/5.0', 'Accept': 'application/json'}\n", + " response = requests.get(SPARQL_ENDPOINT, headers=headers, params={'query': query, 'format': 'json'})\n", + "\n", + " if response.status_code != 200:\n", + " response.raise_for_status()\n", + " \n", + " results = response.json()['results']['bindings']\n", + " \n", + " if not results:\n", + " return []\n", + "\n", + " for i, result in enumerate(results):\n", + " # Initialize with fullName to ensure it appears first\n", + " data = {\n", + " 'fullName': fullName\n", + " }\n", + " \n", + " for label in property_map:\n", + " if label in result:\n", + " value = result[label]['value']\n", + " data[label] = value\n", + " else:\n", + " data[label] = None\n", + " \n", + " # add item URI\n", + " data['qid'] = os.path.basename(result['item']['value'])\n", + " results[i] = data\n", + " \n", + " return results\n", + "\n", "def get_wikipedia_links(qid, languages):\n", " \"\"\"\n", " Fetch Wikipedia links for a given Wikidata QID and a list of languages.\n", @@ -72,7 +107,7 @@ " params = {\n", " \"action\": \"wbgetentities\",\n", " \"ids\": qid,\n", - " \"props\": \"sitelinks\",\n", + " \"props\": \"sitelinks/urls\",\n", " \"format\": \"json\"\n", " }\n", "\n", @@ -85,74 +120,42 @@ " for lang in languages:\n", " sitekey = f\"{lang}wiki\"\n", " if sitekey in sitelinks:\n", - " links[lang] = sitelinks[sitekey][\"url\"]\n", + " # Use the 'title' key and construct the URL manually\n", + " title = sitelinks[sitekey][\"title\"]\n", + " links[lang] = f\"https://{lang}.wikipedia.org/wiki/{requests.utils.quote(title)}\"\n", " else:\n", " links[lang] = None # Or use '' to represent absence of link\n", "\n", " return links\n", "\n", "\n", - "def query_wikidata(fullName, property_map, language='en'):\n", - " SPARQL_ENDPOINT = \"https://query.wikidata.org/sparql\"\n", - " query = generate_sparql_query(fullName, property_map, language)\n", - " headers = {'User-Agent': 'Mozilla/5.0', 'Accept': 'application/json'}\n", - " response = requests.get(SPARQL_ENDPOINT, headers=headers, params={'query': query, 'format': 'json'})\n", - "\n", - " if response.status_code != 200:\n", - " response.raise_for_status()\n", - " \n", - " results = response.json()['results']['bindings']\n", - " \n", - " if not results:\n", - " return None\n", - " \n", - " # Initialize with fullName to ensure it appears first\n", - " data = {\n", - " 'fullName': fullName\n", - " }\n", - " \n", - " # use first result\n", - " result = results[0]\n", - " \n", - " # iterate over fields\n", - " for label in property_map:\n", - " if label in result:\n", - " value = result[label]['value']\n", - " data[label] = value\n", - " else:\n", - " data[label] = None\n", - " \n", - " # add item URI\n", - " data['item'] = os.path.basename(result['item']['value'])\n", - " \n", - " return data\n", - "\n", "\n", "def get_person_info_from_wikidata(names, property_map, language='en'):\n", " all_data = []\n", " for fullName in names:\n", - " data = query_wikidata(fullName, property_map, language)\n", - " if data:\n", - " all_data.append(data)\n", - " if all_data:\n", + " results = query_wikidata(fullName, property_map, language)\n", + " all_data += results\n", + " if len(all_data) > 0:\n", " # Ensure fullName appears first by reordering columns based on property_labels_to_ids keys\n", - " columns_order = ['fullName', 'item'] + list(property_map.keys())\n", + " columns_order = ['fullName', 'qid'] + list(property_map.keys())\n", " df = pd.DataFrame(all_data, columns=columns_order)\n", + " # add wikipedia links\n", + " df[f'wikipedia_{language}'] = df.apply(lambda r: get_wikipedia_links(r['qid'], [language]).get(language), axis=1 )\n", " else:\n", - " df = pd.DataFrame(columns=['fullName'] + list(property_map.keys()))\n", + " df = pd.DataFrame(columns=['fullName'] + list(property_map.keys()) + [f'wikipedia_{language}']) \n", " return df" ] }, { "cell_type": "code", - "execution_count": 52, + "execution_count": 19, "outputs": [ { "data": { - "text/plain": " fullName item sexOrGender \\\n0 Hans Kelsen Q84165 male \n1 Hugo Sinzheimer Q86043 male \n2 Karl Renner Q11726 male \n3 Ernst Fraenkel Q86812 male \n4 Franz Leopold Neumann Q112562068 male \n5 Otto Kahn-Freund Q121832 male \n6 Otto Kirchheimer Q214397 male \n7 Ludwig Bendix Q28053205 male \n8 Arthur Nussbaum Q103088 male \n9 Theodor Geiger Q96410 male \n10 Erhard Blankenburg Q51595283 male \n11 Wolfgang Kaupen Q93221485 male \n12 Rüdiger Lautmann Q91074 male \n13 Thilo Ramm Q59533838 male \n14 Rudolf Wiethölter Q1512482 male \n15 Niklas Luhmann Q85691627 None \n16 Gunther Teubner Q98304 male \n17 Volkmar Gessner Q15435946 male \n\n image \\\n0 http://commons.wikimedia.org/wiki/Special:File... \n1 http://commons.wikimedia.org/wiki/Special:File... \n2 http://commons.wikimedia.org/wiki/Special:File... \n3 None \n4 None \n5 http://commons.wikimedia.org/wiki/Special:File... \n6 None \n7 None \n8 http://commons.wikimedia.org/wiki/Special:File... \n9 None \n10 http://commons.wikimedia.org/wiki/Special:File... \n11 None \n12 http://commons.wikimedia.org/wiki/Special:File... \n13 None \n14 None \n15 None \n16 http://commons.wikimedia.org/wiki/Special:File... \n17 http://commons.wikimedia.org/wiki/Special:File... \n\n countryOfCitizenship givenName familyName dateOfBirth \\\n0 Cisleithania Hans Kelsen 1881-10-11T00:00:00Z \n1 Germany Hugo Sinzheimer 1875-04-12T00:00:00Z \n2 Cisleithania Karl Renner 1870-12-14T00:00:00Z \n3 Germany Ernst Fraenkel 1898-12-26T00:00:00Z \n4 None Leopold Neumann None \n5 Germany Otto None 1900-11-17T00:00:00Z \n6 Germany Otto Kirchheimer 1905-11-11T00:00:00Z \n7 None Ludwig Bendix 1857-10-28T00:00:00Z \n8 United States of America Arthur Nussbaum 1877-01-31T00:00:00Z \n9 Germany Theodor Geiger 1891-11-09T00:00:00Z \n10 Germany Erhard Blankenburg 1938-10-30T00:00:00Z \n11 None Wolfgang None 1936-01-01T00:00:00Z \n12 Germany Rüdiger None 1935-12-22T00:00:00Z \n13 Germany Thilo Ramm 1925-04-04T00:00:00Z \n14 Germany Rudolf None 1929-07-17T00:00:00Z \n15 None None None None \n16 Germany Gunther Teubner 1944-04-30T00:00:00Z \n17 Germany Volkmar Gessner 1937-10-09T00:00:00Z \n\n dateOfDeath occupation fieldOfWork \\\n0 1973-04-19T00:00:00Z judge international law \n1 1945-09-16T00:00:00Z lawyer None \n2 1950-12-31T00:00:00Z lawyer politics \n3 1975-03-28T00:00:00Z lawyer None \n4 None printer publishing \n5 1979-08-16T00:00:00Z judge None \n6 1965-11-22T00:00:00Z jurist None \n7 1923-09-28T00:00:00Z university teacher None \n8 1964-11-22T00:00:00Z lawyer law \n9 1952-06-16T00:00:00Z university teacher None \n10 2018-03-28T00:00:00Z sociology of law sociology of law \n11 1981-01-01T00:00:00Z sociologist sociology of law \n12 None author sociology of law \n13 2018-06-17T00:00:00Z writer None \n14 None jurist None \n15 None researcher None \n16 None jurist None \n17 2014-11-08T00:00:00Z judge comparative law \n\n employer viaf_id \\\n0 Charles University 31998356 \n1 Goethe University Frankfurt 27864307 \n2 Austrian Federal Government 61669459 \n3 Free University Berlin 27108403 \n4 None 637163874508945722514 \n5 University of Oxford 76317591 \n6 Office of Strategic Services 32042801 \n7 None 88720482 \n8 Columbia University 5180962 \n9 Technical University of Braunschweig 56667946 \n10 Free University of Amsterdam 64109592 \n11 None 32919813 \n12 University of Bremen 24732961 \n13 FernUniversität in Hagen 9924244 \n14 Goethe University Frankfurt 106974404 \n15 None None \n16 Goethe University Frankfurt 108364502 \n17 University of Bremen 69100039 \n\n isni_id gnd_id \n0 0000000121266076 118561219 \n1 0000000109619641 118614711 \n2 0000000121358165 118599739 \n3 0000000110230959 118534602 \n4 None None \n5 0000000109168959 118559362 \n6 0000000081110244 118562371 \n7 0000000061811334 1023309920 \n8 0000000120988288 117071676 \n9 0000000109038951 118538187 \n10 0000000110676109 115459235 \n11 0000000035495614 124045405 \n12 000000011469331X 120502208 \n13 0000000108689541 116327391 \n14 0000000116961365 1034437860 \n15 None None \n16 0000000109312017 119443562 \n17 0000000109127065 170469328 ", - "text/html": "<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>fullName</th>\n <th>item</th>\n <th>sexOrGender</th>\n <th>image</th>\n <th>countryOfCitizenship</th>\n <th>givenName</th>\n <th>familyName</th>\n <th>dateOfBirth</th>\n <th>dateOfDeath</th>\n <th>occupation</th>\n <th>fieldOfWork</th>\n <th>employer</th>\n <th>viaf_id</th>\n <th>isni_id</th>\n <th>gnd_id</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>Hans Kelsen</td>\n <td>Q84165</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Cisleithania</td>\n <td>Hans</td>\n <td>Kelsen</td>\n <td>1881-10-11T00:00:00Z</td>\n <td>1973-04-19T00:00:00Z</td>\n <td>judge</td>\n <td>international law</td>\n <td>Charles University</td>\n <td>31998356</td>\n <td>0000000121266076</td>\n <td>118561219</td>\n </tr>\n <tr>\n <th>1</th>\n <td>Hugo Sinzheimer</td>\n <td>Q86043</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Hugo</td>\n <td>Sinzheimer</td>\n <td>1875-04-12T00:00:00Z</td>\n <td>1945-09-16T00:00:00Z</td>\n <td>lawyer</td>\n <td>None</td>\n <td>Goethe University Frankfurt</td>\n <td>27864307</td>\n <td>0000000109619641</td>\n <td>118614711</td>\n </tr>\n <tr>\n <th>2</th>\n <td>Karl Renner</td>\n <td>Q11726</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Cisleithania</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>1870-12-14T00:00:00Z</td>\n <td>1950-12-31T00:00:00Z</td>\n <td>lawyer</td>\n <td>politics</td>\n <td>Austrian Federal Government</td>\n <td>61669459</td>\n <td>0000000121358165</td>\n <td>118599739</td>\n </tr>\n <tr>\n <th>3</th>\n <td>Ernst Fraenkel</td>\n <td>Q86812</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Ernst</td>\n <td>Fraenkel</td>\n <td>1898-12-26T00:00:00Z</td>\n <td>1975-03-28T00:00:00Z</td>\n <td>lawyer</td>\n <td>None</td>\n <td>Free University Berlin</td>\n <td>27108403</td>\n <td>0000000110230959</td>\n <td>118534602</td>\n </tr>\n <tr>\n <th>4</th>\n <td>Franz Leopold Neumann</td>\n <td>Q112562068</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Leopold</td>\n <td>Neumann</td>\n <td>None</td>\n <td>None</td>\n <td>printer</td>\n <td>publishing</td>\n <td>None</td>\n <td>637163874508945722514</td>\n <td>None</td>\n <td>None</td>\n </tr>\n <tr>\n <th>5</th>\n <td>Otto Kahn-Freund</td>\n <td>Q121832</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Otto</td>\n <td>None</td>\n <td>1900-11-17T00:00:00Z</td>\n <td>1979-08-16T00:00:00Z</td>\n <td>judge</td>\n <td>None</td>\n <td>University of Oxford</td>\n <td>76317591</td>\n <td>0000000109168959</td>\n <td>118559362</td>\n </tr>\n <tr>\n <th>6</th>\n <td>Otto Kirchheimer</td>\n <td>Q214397</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Otto</td>\n <td>Kirchheimer</td>\n <td>1905-11-11T00:00:00Z</td>\n <td>1965-11-22T00:00:00Z</td>\n <td>jurist</td>\n <td>None</td>\n <td>Office of Strategic Services</td>\n <td>32042801</td>\n <td>0000000081110244</td>\n <td>118562371</td>\n </tr>\n <tr>\n <th>7</th>\n <td>Ludwig Bendix</td>\n <td>Q28053205</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Ludwig</td>\n <td>Bendix</td>\n <td>1857-10-28T00:00:00Z</td>\n <td>1923-09-28T00:00:00Z</td>\n <td>university teacher</td>\n <td>None</td>\n <td>None</td>\n <td>88720482</td>\n <td>0000000061811334</td>\n <td>1023309920</td>\n </tr>\n <tr>\n <th>8</th>\n <td>Arthur Nussbaum</td>\n <td>Q103088</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>United States of America</td>\n <td>Arthur</td>\n <td>Nussbaum</td>\n <td>1877-01-31T00:00:00Z</td>\n <td>1964-11-22T00:00:00Z</td>\n <td>lawyer</td>\n <td>law</td>\n <td>Columbia University</td>\n <td>5180962</td>\n <td>0000000120988288</td>\n <td>117071676</td>\n </tr>\n <tr>\n <th>9</th>\n <td>Theodor Geiger</td>\n <td>Q96410</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Theodor</td>\n <td>Geiger</td>\n <td>1891-11-09T00:00:00Z</td>\n <td>1952-06-16T00:00:00Z</td>\n <td>university teacher</td>\n <td>None</td>\n <td>Technical University of Braunschweig</td>\n <td>56667946</td>\n <td>0000000109038951</td>\n <td>118538187</td>\n </tr>\n <tr>\n <th>10</th>\n <td>Erhard Blankenburg</td>\n <td>Q51595283</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Erhard</td>\n <td>Blankenburg</td>\n <td>1938-10-30T00:00:00Z</td>\n <td>2018-03-28T00:00:00Z</td>\n <td>sociology of law</td>\n <td>sociology of law</td>\n <td>Free University of Amsterdam</td>\n <td>64109592</td>\n <td>0000000110676109</td>\n <td>115459235</td>\n </tr>\n <tr>\n <th>11</th>\n <td>Wolfgang Kaupen</td>\n <td>Q93221485</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Wolfgang</td>\n <td>None</td>\n <td>1936-01-01T00:00:00Z</td>\n <td>1981-01-01T00:00:00Z</td>\n <td>sociologist</td>\n <td>sociology of law</td>\n <td>None</td>\n <td>32919813</td>\n <td>0000000035495614</td>\n <td>124045405</td>\n </tr>\n <tr>\n <th>12</th>\n <td>Rüdiger Lautmann</td>\n <td>Q91074</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Rüdiger</td>\n <td>None</td>\n <td>1935-12-22T00:00:00Z</td>\n <td>None</td>\n <td>author</td>\n <td>sociology of law</td>\n <td>University of Bremen</td>\n <td>24732961</td>\n <td>000000011469331X</td>\n <td>120502208</td>\n </tr>\n <tr>\n <th>13</th>\n <td>Thilo Ramm</td>\n <td>Q59533838</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Thilo</td>\n <td>Ramm</td>\n <td>1925-04-04T00:00:00Z</td>\n <td>2018-06-17T00:00:00Z</td>\n <td>writer</td>\n <td>None</td>\n <td>FernUniversität in Hagen</td>\n <td>9924244</td>\n <td>0000000108689541</td>\n <td>116327391</td>\n </tr>\n <tr>\n <th>14</th>\n <td>Rudolf Wiethölter</td>\n <td>Q1512482</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Rudolf</td>\n <td>None</td>\n <td>1929-07-17T00:00:00Z</td>\n <td>None</td>\n <td>jurist</td>\n <td>None</td>\n <td>Goethe University Frankfurt</td>\n <td>106974404</td>\n <td>0000000116961365</td>\n <td>1034437860</td>\n </tr>\n <tr>\n <th>15</th>\n <td>Niklas Luhmann</td>\n <td>Q85691627</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>researcher</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n </tr>\n <tr>\n <th>16</th>\n <td>Gunther Teubner</td>\n <td>Q98304</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Gunther</td>\n <td>Teubner</td>\n <td>1944-04-30T00:00:00Z</td>\n <td>None</td>\n <td>jurist</td>\n <td>None</td>\n <td>Goethe University Frankfurt</td>\n <td>108364502</td>\n <td>0000000109312017</td>\n <td>119443562</td>\n </tr>\n <tr>\n <th>17</th>\n <td>Volkmar Gessner</td>\n <td>Q15435946</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Volkmar</td>\n <td>Gessner</td>\n <td>1937-10-09T00:00:00Z</td>\n <td>2014-11-08T00:00:00Z</td>\n <td>judge</td>\n <td>comparative law</td>\n <td>University of Bremen</td>\n <td>69100039</td>\n <td>0000000109127065</td>\n <td>170469328</td>\n </tr>\n </tbody>\n</table>\n</div>" + "text/plain": " fullName qid sexOrGender \\\n0 Hans Kelsen Q84165 male \n1 Hugo Sinzheimer Q86043 male \n2 Karl Renner Q48010797 male \n3 Karl Renner Q15451414 male \n4 Karl Renner Q94817885 male \n5 Karl Renner Q11726 male \n6 Karl Renner Q107022720 male \n7 Ernst Fraenkel Q21997821 male \n8 Ernst Fraenkel Q92522 male \n9 Ernst Fraenkel Q1358093 male \n10 Ernst Fraenkel Q86812 male \n11 Franz Leopold Neumann Q63195 male \n12 Franz Leopold Neumann Q112562068 male \n13 Otto Kahn-Freund Q121832 male \n14 Otto Kirchheimer Q214397 male \n15 Ludwig Bendix Q28053205 male \n16 Ludwig Bendix Q15449424 male \n17 Arthur Nussbaum Q103088 male \n18 Arthur Nussbaum Q94847354 male \n19 Theodor Geiger Q96410 male \n20 Erhard Blankenburg Q51595283 male \n21 Wolfgang Kaupen Q93221485 male \n22 Rüdiger Lautmann Q91074 male \n23 Thilo Ramm Q59533838 male \n24 Rudolf Wiethölter Q1512482 male \n25 Niklas Luhmann Q57238 male \n26 Niklas Luhmann Q85691627 None \n27 Niklas Luhmann Q61803657 None \n28 Gunther Teubner Q98304 male \n29 Volkmar Gessner Q15435946 male \n30 Konstanze Plett Q95192683 female \n31 Ute Sacksofsky Q48562036 female \n32 Susanne Baer Q95656754 female \n33 Susanne Baer Q101872 female \n\n image \\\n0 http://commons.wikimedia.org/wiki/Special:File... \n1 http://commons.wikimedia.org/wiki/Special:File... \n2 None \n3 http://commons.wikimedia.org/wiki/Special:File... \n4 None \n5 http://commons.wikimedia.org/wiki/Special:File... \n6 None \n7 None \n8 None \n9 None \n10 None \n11 None \n12 None \n13 http://commons.wikimedia.org/wiki/Special:File... \n14 None \n15 None \n16 None \n17 http://commons.wikimedia.org/wiki/Special:File... \n18 None \n19 None \n20 http://commons.wikimedia.org/wiki/Special:File... \n21 None \n22 http://commons.wikimedia.org/wiki/Special:File... \n23 None \n24 None \n25 http://commons.wikimedia.org/wiki/Special:File... \n26 None \n27 None \n28 http://commons.wikimedia.org/wiki/Special:File... \n29 http://commons.wikimedia.org/wiki/Special:File... \n30 None \n31 None \n32 None \n33 http://commons.wikimedia.org/wiki/Special:File... \n\n countryOfCitizenship givenName familyName dateOfBirth \\\n0 United States of America Hans Kelsen 1881-10-11T00:00:00Z \n1 Germany D. Sinzheimer 1875-01-01T00:00:00Z \n2 Austria Karl Renner 1884-12-24T00:00:00Z \n3 Germany Karl Renner 1833-05-13T00:00:00Z \n4 None Karl Renner None \n5 Austria Karl Renner 1870-12-14T00:00:00Z \n6 None Karl Renner 1889-12-01T00:00:00Z \n7 None Ernst Fraenkel 1923-01-01T00:00:00Z \n8 Germany Ernst Fraenkel 1881-10-16T00:00:00Z \n9 Germany Ernst Fraenkel 1891-04-05T00:00:00Z \n10 United States of America Ernst Fraenkel 1898-12-26T00:00:00Z \n11 Weimar Republic Franz Neumann 1900-05-23T00:00:00Z \n12 None Franz Neumann None \n13 Germany Otto None 1900-11-17T00:00:00Z \n14 United States of America Otto Kirchheimer 1905-11-11T00:00:00Z \n15 None Ludwig Bendix 1857-10-28T00:00:00Z \n16 Germany Ludwig Bendix 1877-06-28T00:00:00Z \n17 United States of America Arthur Nussbaum 1877-01-01T00:00:00Z \n18 None Arthur None 1853-10-18T00:00:00Z \n19 Denmark Theodor Geiger 1891-11-09T00:00:00Z \n20 Germany Erhard Blankenburg 1938-10-30T00:00:00Z \n21 None Wolfgang None 1936-01-01T00:00:00Z \n22 Germany Rüdiger None 1935-12-22T00:00:00Z \n23 Germany Thilo Ramm 1925-04-04T00:00:00Z \n24 Germany Rudolf None 1929-07-17T00:00:00Z \n25 Germany Niklas Luhmann 1927-12-08T00:00:00Z \n26 None None None None \n27 None None None None \n28 Germany Gunther Teubner 1944-04-30T00:00:00Z \n29 Germany Volkmar Gessner 1937-10-09T00:00:00Z \n30 None None None 1947-01-01T00:00:00Z \n31 Germany Ute None 1960-01-01T00:00:00Z \n32 None Susanne Baer None \n33 Germany Susanne Baer 1964-02-16T00:00:00Z \n\n dateOfDeath occupation fieldOfWork \\\n0 1973-04-19T00:00:00Z philosopher constitutional law \n1 1945-09-16T00:00:00Z trade unionist None \n2 1929-06-24T00:00:00Z None None \n3 1913-09-22T00:00:00Z merchant None \n4 None board member None \n5 1950-12-31T00:00:00Z diplomat politics \n6 1947-05-17T00:00:00Z local politician None \n7 2014-11-13T00:00:00Z businessperson None \n8 1957-10-02T00:00:00Z linguist linguistics \n9 1971-08-18T00:00:00Z economic historian None \n10 1975-03-28T00:00:00Z political scientist None \n11 1954-09-02T00:00:00Z sociologist None \n12 None printer pressing \n13 1979-06-16T00:00:00Z university teacher None \n14 1965-11-22T00:00:00Z university teacher None \n15 1923-09-28T00:00:00Z university teacher None \n16 1954-01-03T00:00:00Z notary None \n17 1964-01-01T00:00:00Z university teacher international law \n18 1916-05-11T00:00:00Z journalist None \n19 1952-06-16T00:00:00Z sociologist None \n20 2018-03-28T00:00:00Z sociologist sociology of law \n21 1981-01-01T00:00:00Z sociologist sociology of law \n22 None LGBTQI+ rights activist homosexuality \n23 2018-06-17T00:00:00Z legal scholar None \n24 None university teacher None \n25 1998-11-06T00:00:00Z cyberneticist sociology \n26 None researcher None \n27 None researcher None \n28 None jurist None \n29 2014-11-08T00:00:00Z sociologist sociology of law \n30 None jurist None \n31 None university teacher comparative law \n32 None actor None \n33 None judge None \n\n viaf_id isni_id gnd_id \\\n0 31998356 0000000121266076 118561219 \n1 27864307 0000000109619641 118614711 \n2 78817437 0000000054940875 134869036 \n3 171170593 None 1012296458 \n4 100408035 None 139099409 \n5 61669459 0000000121358165 118599739 \n6 None None None \n7 None None None \n8 24595835 0000000081027854 11669064X \n9 50078162 None 121259854 \n10 27108403 0000000110230959 118534602 \n11 15561879 0000000109564943 118587293 \n12 637163874508945722514 None None \n13 76317591 0000000109168959 118559362 \n14 32042801 0000000081110244 118562371 \n15 88720482 0000000061811334 1023309920 \n16 74647579 0000000081553379 118702033 \n17 5180962 0000000120988288 117071676 \n18 308715560 None 1051211875 \n19 56667946 0000000109038951 118538187 \n20 64109592 0000000110676109 115459235 \n21 32919813 0000000035495614 124045405 \n22 24732961 000000011469331X 120502208 \n23 9924244 0000000108689541 116327391 \n24 106974404 0000000116961365 1034437860 \n25 29546145 0000000122778532 118575147 \n26 None None None \n27 None None None \n28 108364502 0000000109312017 119443562 \n29 69100039 0000000109127065 170469328 \n30 20628376 0000000066847723 124957048 \n31 54395802 0000000109029166 132505746 \n32 189145911193727062107 None 1093595477 \n33 262465472 0000000030338599 113854161 \n\n wikipedia_en \n0 https://en.wikipedia.org/wiki/Hans%20Kelsen \n1 https://en.wikipedia.org/wiki/Hugo%20Sinzheimer \n2 None \n3 None \n4 None \n5 https://en.wikipedia.org/wiki/Karl%20Renner \n6 None \n7 https://en.wikipedia.org/wiki/Ernst%20Fraenkel... \n8 https://en.wikipedia.org/wiki/Ernst%20Fraenkel... \n9 None \n10 https://en.wikipedia.org/wiki/Ernst%20Fraenkel... \n11 https://en.wikipedia.org/wiki/Franz%20Neumann%... \n12 None \n13 https://en.wikipedia.org/wiki/Otto%20Kahn-Freund \n14 https://en.wikipedia.org/wiki/Otto%20Kirchheimer \n15 None \n16 None \n17 https://en.wikipedia.org/wiki/Arthur%20Nussbaum \n18 None \n19 https://en.wikipedia.org/wiki/Theodor%20Geiger \n20 https://en.wikipedia.org/wiki/Erhard%20Blanken... \n21 None \n22 https://en.wikipedia.org/wiki/R%C3%BCdiger%20L... \n23 None \n24 None \n25 https://en.wikipedia.org/wiki/Niklas%20Luhmann \n26 None \n27 None \n28 https://en.wikipedia.org/wiki/Gunther%20Teubner \n29 https://en.wikipedia.org/wiki/Volkmar%20Gessner \n30 None \n31 None \n32 None \n33 https://en.wikipedia.org/wiki/Susanne%20Baer ", + "text/html": "<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>fullName</th>\n <th>qid</th>\n <th>sexOrGender</th>\n <th>image</th>\n <th>countryOfCitizenship</th>\n <th>givenName</th>\n <th>familyName</th>\n <th>dateOfBirth</th>\n <th>dateOfDeath</th>\n <th>occupation</th>\n <th>fieldOfWork</th>\n <th>viaf_id</th>\n <th>isni_id</th>\n <th>gnd_id</th>\n <th>wikipedia_en</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>Hans Kelsen</td>\n <td>Q84165</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>United States of America</td>\n <td>Hans</td>\n <td>Kelsen</td>\n <td>1881-10-11T00:00:00Z</td>\n <td>1973-04-19T00:00:00Z</td>\n <td>philosopher</td>\n <td>constitutional law</td>\n <td>31998356</td>\n <td>0000000121266076</td>\n <td>118561219</td>\n <td>https://en.wikipedia.org/wiki/Hans%20Kelsen</td>\n </tr>\n <tr>\n <th>1</th>\n <td>Hugo Sinzheimer</td>\n <td>Q86043</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>D.</td>\n <td>Sinzheimer</td>\n <td>1875-01-01T00:00:00Z</td>\n <td>1945-09-16T00:00:00Z</td>\n <td>trade unionist</td>\n <td>None</td>\n <td>27864307</td>\n <td>0000000109619641</td>\n <td>118614711</td>\n <td>https://en.wikipedia.org/wiki/Hugo%20Sinzheimer</td>\n </tr>\n <tr>\n <th>2</th>\n <td>Karl Renner</td>\n <td>Q48010797</td>\n <td>male</td>\n <td>None</td>\n <td>Austria</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>1884-12-24T00:00:00Z</td>\n <td>1929-06-24T00:00:00Z</td>\n <td>None</td>\n <td>None</td>\n <td>78817437</td>\n <td>0000000054940875</td>\n <td>134869036</td>\n <td>None</td>\n </tr>\n <tr>\n <th>3</th>\n <td>Karl Renner</td>\n <td>Q15451414</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>1833-05-13T00:00:00Z</td>\n <td>1913-09-22T00:00:00Z</td>\n <td>merchant</td>\n <td>None</td>\n <td>171170593</td>\n <td>None</td>\n <td>1012296458</td>\n <td>None</td>\n </tr>\n <tr>\n <th>4</th>\n <td>Karl Renner</td>\n <td>Q94817885</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>None</td>\n <td>None</td>\n <td>board member</td>\n <td>None</td>\n <td>100408035</td>\n <td>None</td>\n <td>139099409</td>\n <td>None</td>\n </tr>\n <tr>\n <th>5</th>\n <td>Karl Renner</td>\n <td>Q11726</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Austria</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>1870-12-14T00:00:00Z</td>\n <td>1950-12-31T00:00:00Z</td>\n <td>diplomat</td>\n <td>politics</td>\n <td>61669459</td>\n <td>0000000121358165</td>\n <td>118599739</td>\n <td>https://en.wikipedia.org/wiki/Karl%20Renner</td>\n </tr>\n <tr>\n <th>6</th>\n <td>Karl Renner</td>\n <td>Q107022720</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>1889-12-01T00:00:00Z</td>\n <td>1947-05-17T00:00:00Z</td>\n <td>local politician</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n </tr>\n <tr>\n <th>7</th>\n <td>Ernst Fraenkel</td>\n <td>Q21997821</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Ernst</td>\n <td>Fraenkel</td>\n <td>1923-01-01T00:00:00Z</td>\n <td>2014-11-13T00:00:00Z</td>\n <td>businessperson</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>https://en.wikipedia.org/wiki/Ernst%20Fraenkel...</td>\n </tr>\n <tr>\n <th>8</th>\n <td>Ernst Fraenkel</td>\n <td>Q92522</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Ernst</td>\n <td>Fraenkel</td>\n <td>1881-10-16T00:00:00Z</td>\n <td>1957-10-02T00:00:00Z</td>\n <td>linguist</td>\n <td>linguistics</td>\n <td>24595835</td>\n <td>0000000081027854</td>\n <td>11669064X</td>\n <td>https://en.wikipedia.org/wiki/Ernst%20Fraenkel...</td>\n </tr>\n <tr>\n <th>9</th>\n <td>Ernst Fraenkel</td>\n <td>Q1358093</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Ernst</td>\n <td>Fraenkel</td>\n <td>1891-04-05T00:00:00Z</td>\n <td>1971-08-18T00:00:00Z</td>\n <td>economic historian</td>\n <td>None</td>\n <td>50078162</td>\n <td>None</td>\n <td>121259854</td>\n <td>None</td>\n </tr>\n <tr>\n <th>10</th>\n <td>Ernst Fraenkel</td>\n <td>Q86812</td>\n <td>male</td>\n <td>None</td>\n <td>United States of America</td>\n <td>Ernst</td>\n <td>Fraenkel</td>\n <td>1898-12-26T00:00:00Z</td>\n <td>1975-03-28T00:00:00Z</td>\n <td>political scientist</td>\n <td>None</td>\n <td>27108403</td>\n <td>0000000110230959</td>\n <td>118534602</td>\n <td>https://en.wikipedia.org/wiki/Ernst%20Fraenkel...</td>\n </tr>\n <tr>\n <th>11</th>\n <td>Franz Leopold Neumann</td>\n <td>Q63195</td>\n <td>male</td>\n <td>None</td>\n <td>Weimar Republic</td>\n <td>Franz</td>\n <td>Neumann</td>\n <td>1900-05-23T00:00:00Z</td>\n <td>1954-09-02T00:00:00Z</td>\n <td>sociologist</td>\n <td>None</td>\n <td>15561879</td>\n <td>0000000109564943</td>\n <td>118587293</td>\n <td>https://en.wikipedia.org/wiki/Franz%20Neumann%...</td>\n </tr>\n <tr>\n <th>12</th>\n <td>Franz Leopold Neumann</td>\n <td>Q112562068</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Franz</td>\n <td>Neumann</td>\n <td>None</td>\n <td>None</td>\n <td>printer</td>\n <td>pressing</td>\n <td>637163874508945722514</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n </tr>\n <tr>\n <th>13</th>\n <td>Otto Kahn-Freund</td>\n <td>Q121832</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Otto</td>\n <td>None</td>\n <td>1900-11-17T00:00:00Z</td>\n <td>1979-06-16T00:00:00Z</td>\n <td>university teacher</td>\n <td>None</td>\n <td>76317591</td>\n <td>0000000109168959</td>\n <td>118559362</td>\n <td>https://en.wikipedia.org/wiki/Otto%20Kahn-Freund</td>\n </tr>\n <tr>\n <th>14</th>\n <td>Otto Kirchheimer</td>\n <td>Q214397</td>\n <td>male</td>\n <td>None</td>\n <td>United States of America</td>\n <td>Otto</td>\n <td>Kirchheimer</td>\n <td>1905-11-11T00:00:00Z</td>\n <td>1965-11-22T00:00:00Z</td>\n <td>university teacher</td>\n <td>None</td>\n <td>32042801</td>\n <td>0000000081110244</td>\n <td>118562371</td>\n <td>https://en.wikipedia.org/wiki/Otto%20Kirchheimer</td>\n </tr>\n <tr>\n <th>15</th>\n <td>Ludwig Bendix</td>\n <td>Q28053205</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Ludwig</td>\n <td>Bendix</td>\n <td>1857-10-28T00:00:00Z</td>\n <td>1923-09-28T00:00:00Z</td>\n <td>university teacher</td>\n <td>None</td>\n <td>88720482</td>\n <td>0000000061811334</td>\n <td>1023309920</td>\n <td>None</td>\n </tr>\n <tr>\n <th>16</th>\n <td>Ludwig Bendix</td>\n <td>Q15449424</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Ludwig</td>\n <td>Bendix</td>\n <td>1877-06-28T00:00:00Z</td>\n <td>1954-01-03T00:00:00Z</td>\n <td>notary</td>\n <td>None</td>\n <td>74647579</td>\n <td>0000000081553379</td>\n <td>118702033</td>\n <td>None</td>\n </tr>\n <tr>\n <th>17</th>\n <td>Arthur Nussbaum</td>\n <td>Q103088</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>United States of America</td>\n <td>Arthur</td>\n <td>Nussbaum</td>\n <td>1877-01-01T00:00:00Z</td>\n <td>1964-01-01T00:00:00Z</td>\n <td>university teacher</td>\n <td>international law</td>\n <td>5180962</td>\n <td>0000000120988288</td>\n <td>117071676</td>\n <td>https://en.wikipedia.org/wiki/Arthur%20Nussbaum</td>\n </tr>\n <tr>\n <th>18</th>\n <td>Arthur Nussbaum</td>\n <td>Q94847354</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Arthur</td>\n <td>None</td>\n <td>1853-10-18T00:00:00Z</td>\n <td>1916-05-11T00:00:00Z</td>\n <td>journalist</td>\n <td>None</td>\n <td>308715560</td>\n <td>None</td>\n <td>1051211875</td>\n <td>None</td>\n </tr>\n <tr>\n <th>19</th>\n <td>Theodor Geiger</td>\n <td>Q96410</td>\n <td>male</td>\n <td>None</td>\n <td>Denmark</td>\n <td>Theodor</td>\n <td>Geiger</td>\n <td>1891-11-09T00:00:00Z</td>\n <td>1952-06-16T00:00:00Z</td>\n <td>sociologist</td>\n <td>None</td>\n <td>56667946</td>\n <td>0000000109038951</td>\n <td>118538187</td>\n <td>https://en.wikipedia.org/wiki/Theodor%20Geiger</td>\n </tr>\n <tr>\n <th>20</th>\n <td>Erhard Blankenburg</td>\n <td>Q51595283</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Erhard</td>\n <td>Blankenburg</td>\n <td>1938-10-30T00:00:00Z</td>\n <td>2018-03-28T00:00:00Z</td>\n <td>sociologist</td>\n <td>sociology of law</td>\n <td>64109592</td>\n <td>0000000110676109</td>\n <td>115459235</td>\n <td>https://en.wikipedia.org/wiki/Erhard%20Blanken...</td>\n </tr>\n <tr>\n <th>21</th>\n <td>Wolfgang Kaupen</td>\n <td>Q93221485</td>\n <td>male</td>\n <td>None</td>\n <td>None</td>\n <td>Wolfgang</td>\n <td>None</td>\n <td>1936-01-01T00:00:00Z</td>\n <td>1981-01-01T00:00:00Z</td>\n <td>sociologist</td>\n <td>sociology of law</td>\n <td>32919813</td>\n <td>0000000035495614</td>\n <td>124045405</td>\n <td>None</td>\n </tr>\n <tr>\n <th>22</th>\n <td>Rüdiger Lautmann</td>\n <td>Q91074</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Rüdiger</td>\n <td>None</td>\n <td>1935-12-22T00:00:00Z</td>\n <td>None</td>\n <td>LGBTQI+ rights activist</td>\n <td>homosexuality</td>\n <td>24732961</td>\n <td>000000011469331X</td>\n <td>120502208</td>\n <td>https://en.wikipedia.org/wiki/R%C3%BCdiger%20L...</td>\n </tr>\n <tr>\n <th>23</th>\n <td>Thilo Ramm</td>\n <td>Q59533838</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Thilo</td>\n <td>Ramm</td>\n <td>1925-04-04T00:00:00Z</td>\n <td>2018-06-17T00:00:00Z</td>\n <td>legal scholar</td>\n <td>None</td>\n <td>9924244</td>\n <td>0000000108689541</td>\n <td>116327391</td>\n <td>None</td>\n </tr>\n <tr>\n <th>24</th>\n <td>Rudolf Wiethölter</td>\n <td>Q1512482</td>\n <td>male</td>\n <td>None</td>\n <td>Germany</td>\n <td>Rudolf</td>\n <td>None</td>\n <td>1929-07-17T00:00:00Z</td>\n <td>None</td>\n <td>university teacher</td>\n <td>None</td>\n <td>106974404</td>\n <td>0000000116961365</td>\n <td>1034437860</td>\n <td>None</td>\n </tr>\n <tr>\n <th>25</th>\n <td>Niklas Luhmann</td>\n <td>Q57238</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Niklas</td>\n <td>Luhmann</td>\n <td>1927-12-08T00:00:00Z</td>\n <td>1998-11-06T00:00:00Z</td>\n <td>cyberneticist</td>\n <td>sociology</td>\n <td>29546145</td>\n <td>0000000122778532</td>\n <td>118575147</td>\n <td>https://en.wikipedia.org/wiki/Niklas%20Luhmann</td>\n </tr>\n <tr>\n <th>26</th>\n <td>Niklas Luhmann</td>\n <td>Q85691627</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>researcher</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n </tr>\n <tr>\n <th>27</th>\n <td>Niklas Luhmann</td>\n <td>Q61803657</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>researcher</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n </tr>\n <tr>\n <th>28</th>\n <td>Gunther Teubner</td>\n <td>Q98304</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Gunther</td>\n <td>Teubner</td>\n <td>1944-04-30T00:00:00Z</td>\n <td>None</td>\n <td>jurist</td>\n <td>None</td>\n <td>108364502</td>\n <td>0000000109312017</td>\n <td>119443562</td>\n <td>https://en.wikipedia.org/wiki/Gunther%20Teubner</td>\n </tr>\n <tr>\n <th>29</th>\n <td>Volkmar Gessner</td>\n <td>Q15435946</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Volkmar</td>\n <td>Gessner</td>\n <td>1937-10-09T00:00:00Z</td>\n <td>2014-11-08T00:00:00Z</td>\n <td>sociologist</td>\n <td>sociology of law</td>\n <td>69100039</td>\n <td>0000000109127065</td>\n <td>170469328</td>\n <td>https://en.wikipedia.org/wiki/Volkmar%20Gessner</td>\n </tr>\n <tr>\n <th>30</th>\n <td>Konstanze Plett</td>\n <td>Q95192683</td>\n <td>female</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>None</td>\n <td>1947-01-01T00:00:00Z</td>\n <td>None</td>\n <td>jurist</td>\n <td>None</td>\n <td>20628376</td>\n <td>0000000066847723</td>\n <td>124957048</td>\n <td>None</td>\n </tr>\n <tr>\n <th>31</th>\n <td>Ute Sacksofsky</td>\n <td>Q48562036</td>\n <td>female</td>\n <td>None</td>\n <td>Germany</td>\n <td>Ute</td>\n <td>None</td>\n <td>1960-01-01T00:00:00Z</td>\n <td>None</td>\n <td>university teacher</td>\n <td>comparative law</td>\n <td>54395802</td>\n <td>0000000109029166</td>\n <td>132505746</td>\n <td>None</td>\n </tr>\n <tr>\n <th>32</th>\n <td>Susanne Baer</td>\n <td>Q95656754</td>\n <td>female</td>\n <td>None</td>\n <td>None</td>\n <td>Susanne</td>\n <td>Baer</td>\n <td>None</td>\n <td>None</td>\n <td>actor</td>\n <td>None</td>\n <td>189145911193727062107</td>\n <td>None</td>\n <td>1093595477</td>\n <td>None</td>\n </tr>\n <tr>\n <th>33</th>\n <td>Susanne Baer</td>\n <td>Q101872</td>\n <td>female</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Susanne</td>\n <td>Baer</td>\n <td>1964-02-16T00:00:00Z</td>\n <td>None</td>\n <td>judge</td>\n <td>None</td>\n <td>262465472</td>\n <td>0000000030338599</td>\n <td>113854161</td>\n <td>https://en.wikipedia.org/wiki/Susanne%20Baer</td>\n </tr>\n </tbody>\n</table>\n</div>" }, - "execution_count": 52, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } @@ -161,7 +164,7 @@ "# Now calling the updated function with the 'language' parameter\n", "property_labels_to_ids = {\n", " 'sexOrGender': 'P21',\n", - " 'image': 'P18',\n", + "# 'image': 'P18',\n", " 'countryOfCitizenship': 'P27',\n", " 'givenName': 'P735',\n", " 'familyName': 'P734',\n", @@ -169,7 +172,6 @@ " 'dateOfDeath': 'P570',\n", " 'occupation': 'P106',\n", " 'fieldOfWork': 'P101',\n", - " 'employer': 'P108',\n", " 'viaf_id': 'P214',\n", " 'isni_id': 'P213',\n", " 'gnd_id': 'P227'\n", @@ -194,7 +196,10 @@ " \"Rudolf Wiethölter\",\n", " \"Niklas Luhmann\",\n", " \"Gunther Teubner\",\n", - " \"Volkmar Gessner\"\n", + " \"Volkmar Gessner\",\n", + " \"Konstanze Plett\",\n", + " \"Ute Sacksofsky\",\n", + " \"Susanne Baer\"\n", "]\n", "df = get_person_info_from_wikidata(scholars, property_labels_to_ids)\n", "df" @@ -202,15 +207,27 @@ "metadata": { "collapsed": false, "ExecuteTime": { - "end_time": "2024-03-09T10:11:30.848444Z", - "start_time": "2024-03-09T10:11:21.164049Z" + "end_time": "2024-03-10T21:46:22.256487300Z", + "start_time": "2024-03-10T21:45:35.629676Z" } }, "id": "19ddabbda261cc90" }, { "cell_type": "code", - "execution_count": 53, + "execution_count": null, + "outputs": [], + "source": [ + "from lib.dnb_data import " + ], + "metadata": { + "collapsed": false + }, + "id": "3eff0c20b3425b3d" + }, + { + "cell_type": "code", + "execution_count": 21, "outputs": [], "source": [ "df.to_csv(\"scholars.csv\", index=False)" @@ -218,12 +235,1069 @@ "metadata": { "collapsed": false, "ExecuteTime": { - "end_time": "2024-03-09T10:18:05.956146Z", - "start_time": "2024-03-09T10:18:05.917596Z" + "end_time": "2024-03-10T21:46:57.602283400Z", + "start_time": "2024-03-10T21:46:57.590155600Z" } }, "id": "c6c0cc347c8788d0" }, + { + "cell_type": "code", + "execution_count": 4, + "outputs": [ + { + "data": { + "text/plain": " fullName item sexOrGender \\\n0 Hans Kelsen Q84165 male \n1 Hugo Sinzheimer Q86043 male \n2 Karl Renner Q11726 male \n3 Ernst Fraenkel Q86812 male \n4 Franz Leopold Neumann Q112562068 male \n\n image countryOfCitizenship \\\n0 http://commons.wikimedia.org/wiki/Special:File... Cisleithania \n1 http://commons.wikimedia.org/wiki/Special:File... Germany \n2 http://commons.wikimedia.org/wiki/Special:File... Cisleithania \n3 NaN Germany \n4 NaN NaN \n\n givenName familyName dateOfBirth dateOfDeath \\\n0 Hans Kelsen 1881-10-11 00:00:00+00:00 1973-04-19 00:00:00+00:00 \n1 Hugo Sinzheimer 1875-04-12 00:00:00+00:00 1945-09-16 00:00:00+00:00 \n2 Karl Renner 1870-12-14 00:00:00+00:00 1950-12-31 00:00:00+00:00 \n3 Ernst Fraenkel 1898-12-26 00:00:00+00:00 1975-03-28 00:00:00+00:00 \n4 Leopold Neumann NaT NaT \n\n occupation fieldOfWork employer \\\n0 judge international law Charles University \n1 lawyer NaN Goethe University Frankfurt \n2 lawyer politics Austrian Federal Government \n3 lawyer NaN Free University Berlin \n4 printer publishing NaN \n\n viaf_id isni_id gnd_id duration \n0 31998356 0000000121266076 118561219.0 33427 days \n1 27864307 0000000109619641 118614711.0 25724 days \n2 61669459 0000000121358165 118599739.0 29236 days \n3 27108403 0000000110230959 118534602.0 27850 days \n4 637163874508945722514 NaN NaN NaT ", + "text/html": "<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>fullName</th>\n <th>item</th>\n <th>sexOrGender</th>\n <th>image</th>\n <th>countryOfCitizenship</th>\n <th>givenName</th>\n <th>familyName</th>\n <th>dateOfBirth</th>\n <th>dateOfDeath</th>\n <th>occupation</th>\n <th>fieldOfWork</th>\n <th>employer</th>\n <th>viaf_id</th>\n <th>isni_id</th>\n <th>gnd_id</th>\n <th>duration</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>Hans Kelsen</td>\n <td>Q84165</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Cisleithania</td>\n <td>Hans</td>\n <td>Kelsen</td>\n <td>1881-10-11 00:00:00+00:00</td>\n <td>1973-04-19 00:00:00+00:00</td>\n <td>judge</td>\n <td>international law</td>\n <td>Charles University</td>\n <td>31998356</td>\n <td>0000000121266076</td>\n <td>118561219.0</td>\n <td>33427 days</td>\n </tr>\n <tr>\n <th>1</th>\n <td>Hugo Sinzheimer</td>\n <td>Q86043</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Germany</td>\n <td>Hugo</td>\n <td>Sinzheimer</td>\n <td>1875-04-12 00:00:00+00:00</td>\n <td>1945-09-16 00:00:00+00:00</td>\n <td>lawyer</td>\n <td>NaN</td>\n <td>Goethe University Frankfurt</td>\n <td>27864307</td>\n <td>0000000109619641</td>\n <td>118614711.0</td>\n <td>25724 days</td>\n </tr>\n <tr>\n <th>2</th>\n <td>Karl Renner</td>\n <td>Q11726</td>\n <td>male</td>\n <td>http://commons.wikimedia.org/wiki/Special:File...</td>\n <td>Cisleithania</td>\n <td>Karl</td>\n <td>Renner</td>\n <td>1870-12-14 00:00:00+00:00</td>\n <td>1950-12-31 00:00:00+00:00</td>\n <td>lawyer</td>\n <td>politics</td>\n <td>Austrian Federal Government</td>\n <td>61669459</td>\n <td>0000000121358165</td>\n <td>118599739.0</td>\n <td>29236 days</td>\n </tr>\n <tr>\n <th>3</th>\n <td>Ernst Fraenkel</td>\n <td>Q86812</td>\n <td>male</td>\n <td>NaN</td>\n <td>Germany</td>\n <td>Ernst</td>\n <td>Fraenkel</td>\n <td>1898-12-26 00:00:00+00:00</td>\n <td>1975-03-28 00:00:00+00:00</td>\n <td>lawyer</td>\n <td>NaN</td>\n <td>Free University Berlin</td>\n <td>27108403</td>\n <td>0000000110230959</td>\n <td>118534602.0</td>\n <td>27850 days</td>\n </tr>\n <tr>\n <th>4</th>\n <td>Franz Leopold Neumann</td>\n <td>Q112562068</td>\n <td>male</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>Leopold</td>\n <td>Neumann</td>\n <td>NaT</td>\n <td>NaT</td>\n <td>printer</td>\n <td>publishing</td>\n <td>NaN</td>\n <td>637163874508945722514</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaT</td>\n </tr>\n </tbody>\n</table>\n</div>" + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "\n", + "# Load the data\n", + "df = pd.read_csv(\"scholars.csv\", encoding='utf-8')\n", + "# Convert date strings to datetime\n", + "df['dateOfBirth'] = pd.to_datetime(df['dateOfBirth'])\n", + "df['dateOfDeath'] = pd.to_datetime(df['dateOfDeath'])\n", + "\n", + "# Create a new column for the duration\n", + "df['duration'] = df['dateOfDeath'] - df['dateOfBirth']\n", + "\n", + "# Display the first few rows to check\n", + "df.head()\n" + ], + "metadata": { + "collapsed": false, + "ExecuteTime": { + "end_time": "2024-03-10T19:10:57.836117100Z", + "start_time": "2024-03-10T19:10:57.788823300Z" + } + }, + "id": "565d12a18f81abd0" + }, + { + "cell_type": "code", + "execution_count": 8, + "outputs": [ + { + "data": { + "application/vnd.plotly.v1+json": { + "data": [ + { + "alignmentgroup": "True", + "base": [ + "1857-10-28T00:00:00+00:00", + "1870-12-14T00:00:00+00:00", + "1875-04-12T00:00:00+00:00", + "1877-01-31T00:00:00+00:00", + "1881-10-11T00:00:00+00:00", + "1891-11-09T00:00:00+00:00", + "1898-12-26T00:00:00+00:00", + "1900-11-17T00:00:00+00:00", + "1905-11-11T00:00:00+00:00", + "1925-04-04T00:00:00+00:00", + "1929-07-17T00:00:00+00:00", + "1935-12-22T00:00:00+00:00", + "1936-01-01T00:00:00+00:00", + "1937-10-09T00:00:00+00:00", + "1938-10-30T00:00:00+00:00", + "1944-04-30T00:00:00+00:00", + null, + null + ], + "hovertemplate": "dateOfBirth=%{base}<br>dateOfDeath=%{x}<br>row=%{y}<br>fullName=%{text}<extra></extra>", + "legendgroup": "", + "marker": { + "color": "#636efa", + "pattern": { + "shape": "" + } + }, + "name": "", + "offsetgroup": "", + "orientation": "h", + "showlegend": false, + "text": [ + "Ludwig Bendix", + "Karl Renner", + "Hugo Sinzheimer", + "Arthur Nussbaum", + "Hans Kelsen", + "Theodor Geiger", + "Ernst Fraenkel", + "Otto Kahn-Freund", + "Otto Kirchheimer", + "Thilo Ramm", + "Rudolf Wiethölter", + "Rüdiger Lautmann", + "Wolfgang Kaupen", + "Volkmar Gessner", + "Erhard Blankenburg", + "Gunther Teubner", + "Franz Leopold Neumann", + "Niklas Luhmann" + ], + "textposition": "auto", + "x": [ + 2.08008E12, + 2.5259904E12, + 2.2225536E12, + 2.7709344E12, + 2.8880928E12, + 1.9123776E12, + 2.40624E12, + 2.4849504E12, + 1.8944064E12, + 2.9412288E12, + null, + null, + 1.4201568E12, + 2.4325056E12, + 2.5059456E12, + null, + null, + null + ], + "xaxis": "x", + "y": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 0, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ], + "yaxis": "y", + "type": "bar" + } + ], + "layout": { + "template": { + "data": { + "histogram2dcontour": [ + { + "type": "histogram2dcontour", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + } + ], + "choropleth": [ + { + "type": "choropleth", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + ], + "histogram2d": [ + { + "type": "histogram2d", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + } + ], + "heatmap": [ + { + "type": "heatmap", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + } + ], + "heatmapgl": [ + { + "type": "heatmapgl", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + } + ], + "contourcarpet": [ + { + "type": "contourcarpet", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + ], + "contour": [ + { + "type": "contour", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + } + ], + "surface": [ + { + "type": "surface", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + }, + "colorscale": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ] + } + ], + "mesh3d": [ + { + "type": "mesh3d", + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + ], + "scatter": [ + { + "marker": { + "line": { + "color": "#283442" + } + }, + "type": "scatter" + } + ], + "parcoords": [ + { + "type": "parcoords", + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "scatterpolargl": [ + { + "type": "scatterpolargl", + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "bar": [ + { + "error_x": { + "color": "#f2f5fa" + }, + "error_y": { + "color": "#f2f5fa" + }, + "marker": { + "line": { + "color": "rgb(17,17,17)", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "bar" + } + ], + "scattergeo": [ + { + "type": "scattergeo", + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "scatterpolar": [ + { + "type": "scatterpolar", + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "histogram": [ + { + "marker": { + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "histogram" + } + ], + "scattergl": [ + { + "marker": { + "line": { + "color": "#283442" + } + }, + "type": "scattergl" + } + ], + "scatter3d": [ + { + "type": "scatter3d", + "line": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "scattermapbox": [ + { + "type": "scattermapbox", + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "scatterternary": [ + { + "type": "scatterternary", + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "scattercarpet": [ + { + "type": "scattercarpet", + "marker": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + } + } + ], + "carpet": [ + { + "aaxis": { + "endlinecolor": "#A2B1C6", + "gridcolor": "#506784", + "linecolor": "#506784", + "minorgridcolor": "#506784", + "startlinecolor": "#A2B1C6" + }, + "baxis": { + "endlinecolor": "#A2B1C6", + "gridcolor": "#506784", + "linecolor": "#506784", + "minorgridcolor": "#506784", + "startlinecolor": "#A2B1C6" + }, + "type": "carpet" + } + ], + "table": [ + { + "cells": { + "fill": { + "color": "#506784" + }, + "line": { + "color": "rgb(17,17,17)" + } + }, + "header": { + "fill": { + "color": "#2a3f5f" + }, + "line": { + "color": "rgb(17,17,17)" + } + }, + "type": "table" + } + ], + "barpolar": [ + { + "marker": { + "line": { + "color": "rgb(17,17,17)", + "width": 0.5 + }, + "pattern": { + "fillmode": "overlay", + "size": 10, + "solidity": 0.2 + } + }, + "type": "barpolar" + } + ], + "pie": [ + { + "automargin": true, + "type": "pie" + } + ] + }, + "layout": { + "autotypenumbers": "strict", + "colorway": [ + "#636efa", + "#EF553B", + "#00cc96", + "#ab63fa", + "#FFA15A", + "#19d3f3", + "#FF6692", + "#B6E880", + "#FF97FF", + "#FECB52" + ], + "font": { + "color": "#f2f5fa" + }, + "hovermode": "closest", + "hoverlabel": { + "align": "left" + }, + "paper_bgcolor": "rgb(17,17,17)", + "plot_bgcolor": "rgb(17,17,17)", + "polar": { + "bgcolor": "rgb(17,17,17)", + "angularaxis": { + "gridcolor": "#506784", + "linecolor": "#506784", + "ticks": "" + }, + "radialaxis": { + "gridcolor": "#506784", + "linecolor": "#506784", + "ticks": "" + } + }, + "ternary": { + "bgcolor": "rgb(17,17,17)", + "aaxis": { + "gridcolor": "#506784", + "linecolor": "#506784", + "ticks": "" + }, + "baxis": { + "gridcolor": "#506784", + "linecolor": "#506784", + "ticks": "" + }, + "caxis": { + "gridcolor": "#506784", + "linecolor": "#506784", + "ticks": "" + } + }, + "coloraxis": { + "colorbar": { + "outlinewidth": 0, + "ticks": "" + } + }, + "colorscale": { + "sequential": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "sequentialminus": [ + [ + 0.0, + "#0d0887" + ], + [ + 0.1111111111111111, + "#46039f" + ], + [ + 0.2222222222222222, + "#7201a8" + ], + [ + 0.3333333333333333, + "#9c179e" + ], + [ + 0.4444444444444444, + "#bd3786" + ], + [ + 0.5555555555555556, + "#d8576b" + ], + [ + 0.6666666666666666, + "#ed7953" + ], + [ + 0.7777777777777778, + "#fb9f3a" + ], + [ + 0.8888888888888888, + "#fdca26" + ], + [ + 1.0, + "#f0f921" + ] + ], + "diverging": [ + [ + 0, + "#8e0152" + ], + [ + 0.1, + "#c51b7d" + ], + [ + 0.2, + "#de77ae" + ], + [ + 0.3, + "#f1b6da" + ], + [ + 0.4, + "#fde0ef" + ], + [ + 0.5, + "#f7f7f7" + ], + [ + 0.6, + "#e6f5d0" + ], + [ + 0.7, + "#b8e186" + ], + [ + 0.8, + "#7fbc41" + ], + [ + 0.9, + "#4d9221" + ], + [ + 1, + "#276419" + ] + ] + }, + "xaxis": { + "gridcolor": "#283442", + "linecolor": "#506784", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "#283442", + "automargin": true, + "zerolinewidth": 2 + }, + "yaxis": { + "gridcolor": "#283442", + "linecolor": "#506784", + "ticks": "", + "title": { + "standoff": 15 + }, + "zerolinecolor": "#283442", + "automargin": true, + "zerolinewidth": 2 + }, + "scene": { + "xaxis": { + "backgroundcolor": "rgb(17,17,17)", + "gridcolor": "#506784", + "linecolor": "#506784", + "showbackground": true, + "ticks": "", + "zerolinecolor": "#C8D4E3", + "gridwidth": 2 + }, + "yaxis": { + "backgroundcolor": "rgb(17,17,17)", + "gridcolor": "#506784", + "linecolor": "#506784", + "showbackground": true, + "ticks": "", + "zerolinecolor": "#C8D4E3", + "gridwidth": 2 + }, + "zaxis": { + "backgroundcolor": "rgb(17,17,17)", + "gridcolor": "#506784", + "linecolor": "#506784", + "showbackground": true, + "ticks": "", + "zerolinecolor": "#C8D4E3", + "gridwidth": 2 + } + }, + "shapedefaults": { + "line": { + "color": "#f2f5fa" + } + }, + "annotationdefaults": { + "arrowcolor": "#f2f5fa", + "arrowhead": 0, + "arrowwidth": 1 + }, + "geo": { + "bgcolor": "rgb(17,17,17)", + "landcolor": "rgb(17,17,17)", + "subunitcolor": "#506784", + "showland": true, + "showlakes": true, + "lakecolor": "rgb(17,17,17)" + }, + "title": { + "x": 0.05 + }, + "updatemenudefaults": { + "bgcolor": "#506784", + "borderwidth": 0 + }, + "sliderdefaults": { + "bgcolor": "#C8D4E3", + "borderwidth": 1, + "bordercolor": "rgb(17,17,17)", + "tickwidth": 0 + }, + "mapbox": { + "style": "dark" + } + } + }, + "xaxis": { + "anchor": "y", + "domain": [ + 0.0, + 1.0 + ], + "type": "date" + }, + "yaxis": { + "anchor": "x", + "domain": [ + 0.0, + 1.0 + ], + "title": { + "text": "row" + }, + "tickmode": "array", + "tickvals": [], + "ticktext": [], + "autorange": "reversed" + }, + "legend": { + "tracegroupgap": 0 + }, + "title": { + "text": "Scholars' Life Spans Timeline" + }, + "barmode": "overlay" + }, + "config": { + "plotlyServerURL": "https://plot.ly" + } + }, + "text/html": "<div> <div id=\"55be47cb-91f4-4113-a440-84ef0ea8fe4c\" class=\"plotly-graph-div\" style=\"height:525px; width:100%;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"55be47cb-91f4-4113-a440-84ef0ea8fe4c\")) { Plotly.newPlot( \"55be47cb-91f4-4113-a440-84ef0ea8fe4c\", [{\"alignmentgroup\":\"True\",\"base\":[\"1857-10-28T00:00:00+00:00\",\"1870-12-14T00:00:00+00:00\",\"1875-04-12T00:00:00+00:00\",\"1877-01-31T00:00:00+00:00\",\"1881-10-11T00:00:00+00:00\",\"1891-11-09T00:00:00+00:00\",\"1898-12-26T00:00:00+00:00\",\"1900-11-17T00:00:00+00:00\",\"1905-11-11T00:00:00+00:00\",\"1925-04-04T00:00:00+00:00\",\"1929-07-17T00:00:00+00:00\",\"1935-12-22T00:00:00+00:00\",\"1936-01-01T00:00:00+00:00\",\"1937-10-09T00:00:00+00:00\",\"1938-10-30T00:00:00+00:00\",\"1944-04-30T00:00:00+00:00\",null,null],\"hovertemplate\":\"dateOfBirth=%{base}\\u003cbr\\u003edateOfDeath=%{x}\\u003cbr\\u003erow=%{y}\\u003cbr\\u003efullName=%{text}\\u003cextra\\u003e\\u003c\\u002fextra\\u003e\",\"legendgroup\":\"\",\"marker\":{\"color\":\"#636efa\",\"pattern\":{\"shape\":\"\"}},\"name\":\"\",\"offsetgroup\":\"\",\"orientation\":\"h\",\"showlegend\":false,\"text\":[\"Ludwig Bendix\",\"Karl Renner\",\"Hugo Sinzheimer\",\"Arthur Nussbaum\",\"Hans Kelsen\",\"Theodor Geiger\",\"Ernst Fraenkel\",\"Otto Kahn-Freund\",\"Otto Kirchheimer\",\"Thilo Ramm\",\"Rudolf Wiethölter\",\"Rüdiger Lautmann\",\"Wolfgang Kaupen\",\"Volkmar Gessner\",\"Erhard Blankenburg\",\"Gunther Teubner\",\"Franz Leopold Neumann\",\"Niklas Luhmann\"],\"textposition\":\"auto\",\"x\":[2080080000000.0,2525990400000.0,2222553600000.0,2770934400000.0,2888092800000.0,1912377600000.0,2406240000000.0,2484950400000.0,1894406400000.0,2941228800000.0,null,null,1420156800000.0,2432505600000.0,2505945600000.0,null,null,null],\"xaxis\":\"x\",\"y\":[0,1,2,3,4,5,6,7,8,0,9,10,11,12,13,14,15,16],\"yaxis\":\"y\",\"type\":\"bar\"}], {\"template\":{\"data\":{\"histogram2dcontour\":[{\"type\":\"histogram2dcontour\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"choropleth\":[{\"type\":\"choropleth\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}],\"histogram2d\":[{\"type\":\"histogram2d\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"heatmap\":[{\"type\":\"heatmap\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"heatmapgl\":[{\"type\":\"heatmapgl\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"contourcarpet\":[{\"type\":\"contourcarpet\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}],\"contour\":[{\"type\":\"contour\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"surface\":[{\"type\":\"surface\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"},\"colorscale\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]]}],\"mesh3d\":[{\"type\":\"mesh3d\",\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}],\"scatter\":[{\"marker\":{\"line\":{\"color\":\"#283442\"}},\"type\":\"scatter\"}],\"parcoords\":[{\"type\":\"parcoords\",\"line\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatterpolargl\":[{\"type\":\"scatterpolargl\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"bar\":[{\"error_x\":{\"color\":\"#f2f5fa\"},\"error_y\":{\"color\":\"#f2f5fa\"},\"marker\":{\"line\":{\"color\":\"rgb(17,17,17)\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"bar\"}],\"scattergeo\":[{\"type\":\"scattergeo\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatterpolar\":[{\"type\":\"scatterpolar\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"histogram\":[{\"marker\":{\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"histogram\"}],\"scattergl\":[{\"marker\":{\"line\":{\"color\":\"#283442\"}},\"type\":\"scattergl\"}],\"scatter3d\":[{\"type\":\"scatter3d\",\"line\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scattermapbox\":[{\"type\":\"scattermapbox\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scatterternary\":[{\"type\":\"scatterternary\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"scattercarpet\":[{\"type\":\"scattercarpet\",\"marker\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}}}],\"carpet\":[{\"aaxis\":{\"endlinecolor\":\"#A2B1C6\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"minorgridcolor\":\"#506784\",\"startlinecolor\":\"#A2B1C6\"},\"baxis\":{\"endlinecolor\":\"#A2B1C6\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"minorgridcolor\":\"#506784\",\"startlinecolor\":\"#A2B1C6\"},\"type\":\"carpet\"}],\"table\":[{\"cells\":{\"fill\":{\"color\":\"#506784\"},\"line\":{\"color\":\"rgb(17,17,17)\"}},\"header\":{\"fill\":{\"color\":\"#2a3f5f\"},\"line\":{\"color\":\"rgb(17,17,17)\"}},\"type\":\"table\"}],\"barpolar\":[{\"marker\":{\"line\":{\"color\":\"rgb(17,17,17)\",\"width\":0.5},\"pattern\":{\"fillmode\":\"overlay\",\"size\":10,\"solidity\":0.2}},\"type\":\"barpolar\"}],\"pie\":[{\"automargin\":true,\"type\":\"pie\"}]},\"layout\":{\"autotypenumbers\":\"strict\",\"colorway\":[\"#636efa\",\"#EF553B\",\"#00cc96\",\"#ab63fa\",\"#FFA15A\",\"#19d3f3\",\"#FF6692\",\"#B6E880\",\"#FF97FF\",\"#FECB52\"],\"font\":{\"color\":\"#f2f5fa\"},\"hovermode\":\"closest\",\"hoverlabel\":{\"align\":\"left\"},\"paper_bgcolor\":\"rgb(17,17,17)\",\"plot_bgcolor\":\"rgb(17,17,17)\",\"polar\":{\"bgcolor\":\"rgb(17,17,17)\",\"angularaxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"},\"radialaxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"}},\"ternary\":{\"bgcolor\":\"rgb(17,17,17)\",\"aaxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"},\"baxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"},\"caxis\":{\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"ticks\":\"\"}},\"coloraxis\":{\"colorbar\":{\"outlinewidth\":0,\"ticks\":\"\"}},\"colorscale\":{\"sequential\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"sequentialminus\":[[0.0,\"#0d0887\"],[0.1111111111111111,\"#46039f\"],[0.2222222222222222,\"#7201a8\"],[0.3333333333333333,\"#9c179e\"],[0.4444444444444444,\"#bd3786\"],[0.5555555555555556,\"#d8576b\"],[0.6666666666666666,\"#ed7953\"],[0.7777777777777778,\"#fb9f3a\"],[0.8888888888888888,\"#fdca26\"],[1.0,\"#f0f921\"]],\"diverging\":[[0,\"#8e0152\"],[0.1,\"#c51b7d\"],[0.2,\"#de77ae\"],[0.3,\"#f1b6da\"],[0.4,\"#fde0ef\"],[0.5,\"#f7f7f7\"],[0.6,\"#e6f5d0\"],[0.7,\"#b8e186\"],[0.8,\"#7fbc41\"],[0.9,\"#4d9221\"],[1,\"#276419\"]]},\"xaxis\":{\"gridcolor\":\"#283442\",\"linecolor\":\"#506784\",\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"#283442\",\"automargin\":true,\"zerolinewidth\":2},\"yaxis\":{\"gridcolor\":\"#283442\",\"linecolor\":\"#506784\",\"ticks\":\"\",\"title\":{\"standoff\":15},\"zerolinecolor\":\"#283442\",\"automargin\":true,\"zerolinewidth\":2},\"scene\":{\"xaxis\":{\"backgroundcolor\":\"rgb(17,17,17)\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"#C8D4E3\",\"gridwidth\":2},\"yaxis\":{\"backgroundcolor\":\"rgb(17,17,17)\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"#C8D4E3\",\"gridwidth\":2},\"zaxis\":{\"backgroundcolor\":\"rgb(17,17,17)\",\"gridcolor\":\"#506784\",\"linecolor\":\"#506784\",\"showbackground\":true,\"ticks\":\"\",\"zerolinecolor\":\"#C8D4E3\",\"gridwidth\":2}},\"shapedefaults\":{\"line\":{\"color\":\"#f2f5fa\"}},\"annotationdefaults\":{\"arrowcolor\":\"#f2f5fa\",\"arrowhead\":0,\"arrowwidth\":1},\"geo\":{\"bgcolor\":\"rgb(17,17,17)\",\"landcolor\":\"rgb(17,17,17)\",\"subunitcolor\":\"#506784\",\"showland\":true,\"showlakes\":true,\"lakecolor\":\"rgb(17,17,17)\"},\"title\":{\"x\":0.05},\"updatemenudefaults\":{\"bgcolor\":\"#506784\",\"borderwidth\":0},\"sliderdefaults\":{\"bgcolor\":\"#C8D4E3\",\"borderwidth\":1,\"bordercolor\":\"rgb(17,17,17)\",\"tickwidth\":0},\"mapbox\":{\"style\":\"dark\"}}},\"xaxis\":{\"anchor\":\"y\",\"domain\":[0.0,1.0],\"type\":\"date\"},\"yaxis\":{\"anchor\":\"x\",\"domain\":[0.0,1.0],\"title\":{\"text\":\"row\"},\"tickmode\":\"array\",\"tickvals\":[],\"ticktext\":[],\"autorange\":\"reversed\"},\"legend\":{\"tracegroupgap\":0},\"title\":{\"text\":\"Scholars' Life Spans Timeline\"},\"barmode\":\"overlay\"}, {\"responsive\": true} ).then(function(){\n \nvar gd = document.getElementById('55be47cb-91f4-4113-a440-84ef0ea8fe4c');\nvar x = new MutationObserver(function (mutations, observer) {{\n var display = window.getComputedStyle(gd).display;\n if (!display || display === 'none') {{\n console.log([gd, 'removed!']);\n Plotly.purge(gd);\n observer.disconnect();\n }}\n}});\n\n// Listen for the removal of the full notebook cells\nvar notebookContainer = gd.closest('#notebook-container');\nif (notebookContainer) {{\n x.observe(notebookContainer, {childList: true});\n}}\n\n// Listen for the clearing of the current output cell\nvar outputEl = gd.closest('.output');\nif (outputEl) {{\n x.observe(outputEl, {childList: true});\n}}\n\n }) }; }); </script> </div>" + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "import plotly.express as px\n", + "\n", + "# Assuming df is already loaded and dateOfBirth/dateOfDeath are converted to datetime\n", + "\n", + "# Initialize a list to track the last dateOfDeath in each row to manage overlaps\n", + "last_dates = []\n", + "\n", + "# Function to find the appropriate row for each scholar\n", + "def find_row(last_dates, start_date):\n", + " for i, last_date in enumerate(last_dates):\n", + " if start_date > last_date:\n", + " return i\n", + " return len(last_dates)\n", + "\n", + "# Assign rows without overlaps and sort by the earliest dateOfBirth\n", + "df['row'] = 0\n", + "for index, scholar in df.iterrows():\n", + " row = find_row(last_dates, scholar['dateOfBirth'])\n", + " if row < len(last_dates):\n", + " last_dates[row] = scholar['dateOfDeath']\n", + " else:\n", + " last_dates.append(scholar['dateOfDeath'])\n", + " df.at[index, 'row'] = row\n", + "\n", + "# Now plotting without row labels\n", + "fig = px.timeline(df, x_start=\"dateOfBirth\", x_end=\"dateOfDeath\", y=\"row\", text=\"fullName\", title=\"Scholars' Life Spans Timeline\")\n", + "\n", + "# Update layout\n", + "fig.update_layout(yaxis=dict(tickmode='array', tickvals=[], ticktext=[]))\n", + "fig.update_yaxes(autorange=\"reversed\") # This reverses the y-axis to match your requirement\n", + "\n", + "fig.show()\n", + "\n" + ], + "metadata": { + "collapsed": false, + "ExecuteTime": { + "end_time": "2024-03-10T19:25:25.126760500Z", + "start_time": "2024-03-10T19:25:25.076205200Z" + } + }, + "id": "9bdf188991f29962" + }, { "cell_type": "code", "execution_count": 44, diff --git a/wikidata/readme.md b/wikidata/readme.md index 1c6c053..a68b257 100644 --- a/wikidata/readme.md +++ b/wikidata/readme.md @@ -1,3 +1,3 @@ # WikiData data retrieval -`pip install openpyxl` \ No newline at end of file +`pip install openpyxl plotly lxml` \ No newline at end of file diff --git a/wikidata/scholars.csv b/wikidata/scholars.csv index 8b6a4ba..7cf145a 100644 --- a/wikidata/scholars.csv +++ b/wikidata/scholars.csv @@ -1,19 +1,35 @@ -fullName,item,sexOrGender,image,countryOfCitizenship,givenName,familyName,dateOfBirth,dateOfDeath,occupation,fieldOfWork,employer,viaf_id,isni_id,gnd_id -Hans Kelsen,Q84165,male,http://commons.wikimedia.org/wiki/Special:FilePath/Hans%20Kelsen%20%281881%E2%80%931973%29%20~1930%20%C2%A9%20Georg%20Fayer%20%281892%E2%80%931950%29%20OeNB%208026867.jpg,Cisleithania,Hans,Kelsen,1881-10-11T00:00:00Z,1973-04-19T00:00:00Z,judge,international law,Charles University,31998356,0000000121266076,118561219 -Hugo Sinzheimer,Q86043,male,http://commons.wikimedia.org/wiki/Special:FilePath/Hugo%20Sinzheimer.jpg,Germany,Hugo,Sinzheimer,1875-04-12T00:00:00Z,1945-09-16T00:00:00Z,lawyer,,Goethe University Frankfurt,27864307,0000000109619641,118614711 -Karl Renner,Q11726,male,http://commons.wikimedia.org/wiki/Special:FilePath/Karl%20Renner%201905.jpg,Cisleithania,Karl,Renner,1870-12-14T00:00:00Z,1950-12-31T00:00:00Z,lawyer,politics,Austrian Federal Government,61669459,0000000121358165,118599739 -Ernst Fraenkel,Q86812,male,,Germany,Ernst,Fraenkel,1898-12-26T00:00:00Z,1975-03-28T00:00:00Z,lawyer,,Free University Berlin,27108403,0000000110230959,118534602 -Franz Leopold Neumann,Q112562068,male,,,Leopold,Neumann,,,printer,publishing,,637163874508945722514,, -Otto Kahn-Freund,Q121832,male,http://commons.wikimedia.org/wiki/Special:FilePath/Sir%20Otto%20Kahn-Freund%2C%20c1950.jpg,Germany,Otto,,1900-11-17T00:00:00Z,1979-08-16T00:00:00Z,judge,,University of Oxford,76317591,0000000109168959,118559362 -Otto Kirchheimer,Q214397,male,,Germany,Otto,Kirchheimer,1905-11-11T00:00:00Z,1965-11-22T00:00:00Z,jurist,,Office of Strategic Services,32042801,0000000081110244,118562371 -Ludwig Bendix,Q28053205,male,,,Ludwig,Bendix,1857-10-28T00:00:00Z,1923-09-28T00:00:00Z,university teacher,,,88720482,0000000061811334,1023309920 -Arthur Nussbaum,Q103088,male,http://commons.wikimedia.org/wiki/Special:FilePath/Arthur%20Nussbaum.jpg,United States of America,Arthur,Nussbaum,1877-01-31T00:00:00Z,1964-11-22T00:00:00Z,lawyer,law,Columbia University,5180962,0000000120988288,117071676 -Theodor Geiger,Q96410,male,,Germany,Theodor,Geiger,1891-11-09T00:00:00Z,1952-06-16T00:00:00Z,university teacher,,Technical University of Braunschweig,56667946,0000000109038951,118538187 -Erhard Blankenburg,Q51595283,male,http://commons.wikimedia.org/wiki/Special:FilePath/Erhard%20Blankenburg.jpg,Germany,Erhard,Blankenburg,1938-10-30T00:00:00Z,2018-03-28T00:00:00Z,sociology of law,sociology of law,Free University of Amsterdam,64109592,0000000110676109,115459235 -Wolfgang Kaupen,Q93221485,male,,,Wolfgang,,1936-01-01T00:00:00Z,1981-01-01T00:00:00Z,sociologist,sociology of law,,32919813,0000000035495614,124045405 -Rüdiger Lautmann,Q91074,male,http://commons.wikimedia.org/wiki/Special:FilePath/Lautmann%202012.jpg,Germany,Rüdiger,,1935-12-22T00:00:00Z,,author,sociology of law,University of Bremen,24732961,000000011469331X,120502208 -Thilo Ramm,Q59533838,male,,Germany,Thilo,Ramm,1925-04-04T00:00:00Z,2018-06-17T00:00:00Z,writer,,FernUniversität in Hagen,9924244,0000000108689541,116327391 -Rudolf Wiethölter,Q1512482,male,,Germany,Rudolf,,1929-07-17T00:00:00Z,,jurist,,Goethe University Frankfurt,106974404,0000000116961365,1034437860 +fullName,qid,sexOrGender,image,countryOfCitizenship,givenName,familyName,dateOfBirth,dateOfDeath,occupation,fieldOfWork,viaf_id,isni_id,gnd_id,wikipedia_en +Hans Kelsen,Q84165,male,http://commons.wikimedia.org/wiki/Special:FilePath/Hans%20Kelsen%20%281881%E2%80%931973%29%20~1930%20%C2%A9%20Georg%20Fayer%20%281892%E2%80%931950%29%20OeNB%208026867.jpg,United States of America,Hans,Kelsen,1881-10-11T00:00:00Z,1973-04-19T00:00:00Z,philosopher,constitutional law,31998356,0000000121266076,118561219,https://en.wikipedia.org/wiki/Hans%20Kelsen +Hugo Sinzheimer,Q86043,male,http://commons.wikimedia.org/wiki/Special:FilePath/Hugo%20Sinzheimer.jpg,Germany,D.,Sinzheimer,1875-01-01T00:00:00Z,1945-09-16T00:00:00Z,trade unionist,,27864307,0000000109619641,118614711,https://en.wikipedia.org/wiki/Hugo%20Sinzheimer +Karl Renner,Q48010797,male,,Austria,Karl,Renner,1884-12-24T00:00:00Z,1929-06-24T00:00:00Z,,,78817437,0000000054940875,134869036, +Karl Renner,Q15451414,male,http://commons.wikimedia.org/wiki/Special:FilePath/Karl-renner-hn.jpg,Germany,Karl,Renner,1833-05-13T00:00:00Z,1913-09-22T00:00:00Z,merchant,,171170593,,1012296458, +Karl Renner,Q94817885,male,,,Karl,Renner,,,board member,,100408035,,139099409, +Karl Renner,Q11726,male,http://commons.wikimedia.org/wiki/Special:FilePath/Karl%20Renner%201905.jpg,Austria,Karl,Renner,1870-12-14T00:00:00Z,1950-12-31T00:00:00Z,diplomat,politics,61669459,0000000121358165,118599739,https://en.wikipedia.org/wiki/Karl%20Renner +Karl Renner,Q107022720,male,,,Karl,Renner,1889-12-01T00:00:00Z,1947-05-17T00:00:00Z,local politician,,,,, +Ernst Fraenkel,Q21997821,male,,,Ernst,Fraenkel,1923-01-01T00:00:00Z,2014-11-13T00:00:00Z,businessperson,,,,,https://en.wikipedia.org/wiki/Ernst%20Fraenkel%20%28businessman%29 +Ernst Fraenkel,Q92522,male,,Germany,Ernst,Fraenkel,1881-10-16T00:00:00Z,1957-10-02T00:00:00Z,linguist,linguistics,24595835,0000000081027854,11669064X,https://en.wikipedia.org/wiki/Ernst%20Fraenkel%20%28linguist%29 +Ernst Fraenkel,Q1358093,male,,Germany,Ernst,Fraenkel,1891-04-05T00:00:00Z,1971-08-18T00:00:00Z,economic historian,,50078162,,121259854, +Ernst Fraenkel,Q86812,male,,United States of America,Ernst,Fraenkel,1898-12-26T00:00:00Z,1975-03-28T00:00:00Z,political scientist,,27108403,0000000110230959,118534602,https://en.wikipedia.org/wiki/Ernst%20Fraenkel%20%28political%20scientist%29 +Franz Leopold Neumann,Q63195,male,,Weimar Republic,Franz,Neumann,1900-05-23T00:00:00Z,1954-09-02T00:00:00Z,sociologist,,15561879,0000000109564943,118587293,https://en.wikipedia.org/wiki/Franz%20Neumann%20%28political%20scientist%29 +Franz Leopold Neumann,Q112562068,male,,,Franz,Neumann,,,printer,pressing,637163874508945722514,,, +Otto Kahn-Freund,Q121832,male,http://commons.wikimedia.org/wiki/Special:FilePath/Sir%20Otto%20Kahn-Freund%2C%20c1950.jpg,Germany,Otto,,1900-11-17T00:00:00Z,1979-06-16T00:00:00Z,university teacher,,76317591,0000000109168959,118559362,https://en.wikipedia.org/wiki/Otto%20Kahn-Freund +Otto Kirchheimer,Q214397,male,,United States of America,Otto,Kirchheimer,1905-11-11T00:00:00Z,1965-11-22T00:00:00Z,university teacher,,32042801,0000000081110244,118562371,https://en.wikipedia.org/wiki/Otto%20Kirchheimer +Ludwig Bendix,Q28053205,male,,,Ludwig,Bendix,1857-10-28T00:00:00Z,1923-09-28T00:00:00Z,university teacher,,88720482,0000000061811334,1023309920, +Ludwig Bendix,Q15449424,male,,Germany,Ludwig,Bendix,1877-06-28T00:00:00Z,1954-01-03T00:00:00Z,notary,,74647579,0000000081553379,118702033, +Arthur Nussbaum,Q103088,male,http://commons.wikimedia.org/wiki/Special:FilePath/Arthur%20Nussbaum.jpg,United States of America,Arthur,Nussbaum,1877-01-01T00:00:00Z,1964-01-01T00:00:00Z,university teacher,international law,5180962,0000000120988288,117071676,https://en.wikipedia.org/wiki/Arthur%20Nussbaum +Arthur Nussbaum,Q94847354,male,,,Arthur,,1853-10-18T00:00:00Z,1916-05-11T00:00:00Z,journalist,,308715560,,1051211875, +Theodor Geiger,Q96410,male,,Denmark,Theodor,Geiger,1891-11-09T00:00:00Z,1952-06-16T00:00:00Z,sociologist,,56667946,0000000109038951,118538187,https://en.wikipedia.org/wiki/Theodor%20Geiger +Erhard Blankenburg,Q51595283,male,http://commons.wikimedia.org/wiki/Special:FilePath/Erhard%20Blankenburg.jpg,Germany,Erhard,Blankenburg,1938-10-30T00:00:00Z,2018-03-28T00:00:00Z,sociologist,sociology of law,64109592,0000000110676109,115459235,https://en.wikipedia.org/wiki/Erhard%20Blankenburg +Wolfgang Kaupen,Q93221485,male,,,Wolfgang,,1936-01-01T00:00:00Z,1981-01-01T00:00:00Z,sociologist,sociology of law,32919813,0000000035495614,124045405, +Rüdiger Lautmann,Q91074,male,http://commons.wikimedia.org/wiki/Special:FilePath/Lautmann%202012.jpg,Germany,Rüdiger,,1935-12-22T00:00:00Z,,LGBTQI+ rights activist,homosexuality,24732961,000000011469331X,120502208,https://en.wikipedia.org/wiki/R%C3%BCdiger%20Lautmann +Thilo Ramm,Q59533838,male,,Germany,Thilo,Ramm,1925-04-04T00:00:00Z,2018-06-17T00:00:00Z,legal scholar,,9924244,0000000108689541,116327391, +Rudolf Wiethölter,Q1512482,male,,Germany,Rudolf,,1929-07-17T00:00:00Z,,university teacher,,106974404,0000000116961365,1034437860, +Niklas Luhmann,Q57238,male,http://commons.wikimedia.org/wiki/Special:FilePath/HSGH%20022-000941%20Niklas%20Luhmann%20%28cropped%29.png,Germany,Niklas,Luhmann,1927-12-08T00:00:00Z,1998-11-06T00:00:00Z,cyberneticist,sociology,29546145,0000000122778532,118575147,https://en.wikipedia.org/wiki/Niklas%20Luhmann Niklas Luhmann,Q85691627,,,,,,,,researcher,,,,, -Gunther Teubner,Q98304,male,http://commons.wikimedia.org/wiki/Special:FilePath/Gunther%20Teubner%20%282017%29.jpg,Germany,Gunther,Teubner,1944-04-30T00:00:00Z,,jurist,,Goethe University Frankfurt,108364502,0000000109312017,119443562 -Volkmar Gessner,Q15435946,male,http://commons.wikimedia.org/wiki/Special:FilePath/Volkmar%20Gessner%20%282006%29.JPG,Germany,Volkmar,Gessner,1937-10-09T00:00:00Z,2014-11-08T00:00:00Z,judge,comparative law,University of Bremen,69100039,0000000109127065,170469328 +Niklas Luhmann,Q61803657,,,,,,,,researcher,,,,, +Gunther Teubner,Q98304,male,http://commons.wikimedia.org/wiki/Special:FilePath/Gunther%20Teubner%20%282017%29.jpg,Germany,Gunther,Teubner,1944-04-30T00:00:00Z,,jurist,,108364502,0000000109312017,119443562,https://en.wikipedia.org/wiki/Gunther%20Teubner +Volkmar Gessner,Q15435946,male,http://commons.wikimedia.org/wiki/Special:FilePath/Volkmar%20Gessner%20%282006%29.JPG,Germany,Volkmar,Gessner,1937-10-09T00:00:00Z,2014-11-08T00:00:00Z,sociologist,sociology of law,69100039,0000000109127065,170469328,https://en.wikipedia.org/wiki/Volkmar%20Gessner +Konstanze Plett,Q95192683,female,,,,,1947-01-01T00:00:00Z,,jurist,,20628376,0000000066847723,124957048, +Ute Sacksofsky,Q48562036,female,,Germany,Ute,,1960-01-01T00:00:00Z,,university teacher,comparative law,54395802,0000000109029166,132505746, +Susanne Baer,Q95656754,female,,,Susanne,Baer,,,actor,,189145911193727062107,,1093595477, +Susanne Baer,Q101872,female,http://commons.wikimedia.org/wiki/Special:FilePath/Susanne%20Baer%202014%28cropped%29.jpg,Germany,Susanne,Baer,1964-02-16T00:00:00Z,,judge,,262465472,0000000030338599,113854161,https://en.wikipedia.org/wiki/Susanne%20Baer -- GitLab