User:Salgo60/ListeriaNobelData3

SPARQL data is not updated by Nobelprize.org TeamEdit

See T234811#5552880

SPARQL in action: Comparing 2 datasets using federated SPARQLEdit

See also:

Lesson learnedEdit

  • data.nobelprize.org feels like having good sources BUT they don't have sources/references for facts ==> problem understand if Wikidata should change a fact or not
  • data.nobelprize.org has no support for calendar dates Julian/Gregorian
    • ==> we need to guess if a mismatch is because of an error or just the lack of support in the software e.g.
  • Wikidata is fast updating when people passed away see list
  • as Wikidata has no standard of describing a source its difficult to understand what Trust this source has see my blogpost

Listeria checking diffs dates Wikidata and Nobelprize.orgEdit

An empty list is a good list

Below a Federated search Wikidata <-> data.nobelprize.org displaying differencies ordered by desc death date in Wikidata

  • Birth dates
    • NobelBirth <-> WDBirth
  • Death dates
    • NobelDeath <-> WDDeath

Sortorder is death date descending. To better track changes it would be better to sort on the Nobel ID

This list is periodically updated by a bot. Manual changes to the list will be removed on the next update!

WDQS | PetScan | YASGUI | TABernacle | Find images Recent changes
image ?item ?nobelid ?laureatenobeluri ?wdbirth ?nobelbirth ?wddeath ?nobeldeath
Oliver E. Williamson 847 http://data.nobelprize.org/resource/laureate/847 1932-09-27 1932-09-27 2020-05-21
Philip W. Anderson 107 http://data.nobelprize.org/resource/laureate/107 1923-12-13 1923-12-13 2020-03-29
Betty Williams 535 http://data.nobelprize.org/resource/laureate/535 1943-05-22 1943-05-22 2020-03-17
Stanley Cohen 434 http://data.nobelprize.org/resource/laureate/434 1922-11-17 1922-11-17 2020-02-05
Kary Mullis 278 http://data.nobelprize.org/resource/laureate/278 1944-12-28 1944-12-28 2019-08-07
Toni Morrison 670 http://data.nobelprize.org/resource/laureate/670 1931-02-18 1931-02-18 2019-08-05
John Robert Schrieffer 96 http://data.nobelprize.org/resource/laureate/96 1931-05-31 1931-05-31 2019-07-27
Murray Gell-Mann 90 http://data.nobelprize.org/resource/laureate/90 1929-09-15 1929-09-15 2019-05-24
Riccardo Giacconi 755 http://data.nobelprize.org/resource/laureate/755 1931-10-06 1931-10-06 2018-12-09 2018-12-16
Thomas A. Steitz 842 http://data.nobelprize.org/resource/laureate/842 1940-08-23 1940-08-23 2018-10-09 2018-08-23
Kofi Annan 749 http://data.nobelprize.org/resource/laureate/749 1938-04-08 1938-04-08 2018-08-18
Peter Grünberg 815 http://data.nobelprize.org/resource/laureate/815 1939-05-18 1939-05-18 2018-04-07 2018-04-09
Shimon Peres 558 http://data.nobelprize.org/resource/laureate/558 1923-08-01 1923-08-16 2016-09-28 2016-09-28
Richard F. Heck 851 http://data.nobelprize.org/resource/laureate/851 1931-08-15 1931-08-15 2015-10-10 2015-10-09
Irwin Rose 781 http://data.nobelprize.org/resource/laureate/781 1926-07-16 1926-07-16 2015-06-02 2015-06-03
Val Logsdon Fitch 117 http://data.nobelprize.org/resource/laureate/117 1923-03-10 1923-03-10 2015-02-04 2015-02-05
Robert Fogel 709 http://data.nobelprize.org/resource/laureate/709 1926-07-01 1927-07-01 2013-06-11 2013-06-11
Kim Dae-jung 725 http://data.nobelprize.org/resource/laureate/725 1924-01-06 1925-12-03 2009-08-18 2009-08-18
Trygve Haavelmo 703 http://data.nobelprize.org/resource/laureate/703 1911-12-13 1911-12-13 1999-07-28 1999-07-26
Linus Pauling 217 http://data.nobelprize.org/resource/laureate/217 1901-02-28 1901-02-28 1994-08-18 1994-08-19
Isaac Bashevis Singer 654 http://data.nobelprize.org/resource/laureate/654 1902-11-21 1904-07-14 1991-07-24 1991-07-24
Patrick White 648 http://data.nobelprize.org/resource/laureate/648 1912-05-28 1912-05-28 1990-09-29 1990-09-30
Niko Tinbergen 402 http://data.nobelprize.org/resource/laureate/402 1907-04-15 1907-04-15 1988-12-22 1988-12-21
Albert Szent-Györgyi 332 http://data.nobelprize.org/resource/laureate/332 1893-09-16 1893-09-16 1986-10-21 1986-10-22
Nikolay Semyonov 220 http://data.nobelprize.org/resource/laureate/220 1896-04-15 1896-04-03 1986-09-25 1986-09-25
James Rainwater 104 http://data.nobelprize.org/resource/laureate/104 1917-12-09 1917-12-09 1986-05-31 1986-03-31
Tjalling Koopmans 687 http://data.nobelprize.org/resource/laureate/687 1910-08-27 1910-08-28 1985-02-26 1985-02-26
Pyotr Kapitsa 110 http://data.nobelprize.org/resource/laureate/110 1894-07-08 1894-07-09 1984-04-08 1984-04-08
Albert Claude 403 http://data.nobelprize.org/resource/laureate/403 1898-08-23 1898-08-24 1983-05-22 1983-05-22
Philip Noel-Baker, Baron Noel-Baker 518 http://data.nobelprize.org/resource/laureate/518 1889-11-01 1889-11-01 1982-10-09 1982-10-08
Manne Siegbahn 29 http://data.nobelprize.org/resource/laureate/29 1886-12-03 1886-12-03 1978-09-24 1978-09-26
Edgar Adrian, 1st Baron Adrian 324 http://data.nobelprize.org/resource/laureate/324 1889-11-30 1889-11-30 1977-08-04 1977-08-08
Cyril Norman Hinshelwood 219 http://data.nobelprize.org/resource/laureate/219 1897-06-19 1897-05-19 1967-10-09 1967-10-09
Richard Kuhn 198 http://data.nobelprize.org/resource/laureate/198 1900-12-03 1900-12-03 1967-08-01 1967-07-31
Max von Laue 19 http://data.nobelprize.org/resource/laureate/19 1879-10-09 1879-10-09 1960-04-24 1960-04-23
George Marshall 514 http://data.nobelprize.org/resource/laureate/514 1980-12-01 1880-12-31 1959-10-16 1959-10-16
Alexis Carrel 306 http://data.nobelprize.org/resource/laureate/306 1873-06-28 1873-06-28 1944-08-21 1944-11-05
Ludwig Quidde 493 http://data.nobelprize.org/resource/laureate/493 1858-03-23 1858-03-23 1941-03-05 1941-03-04
Charles Richet 307 http://data.nobelprize.org/resource/laureate/307 1850-08-26 1850-08-26 1935-12-03 1935-12-04
Jane Addams 496 http://data.nobelprize.org/resource/laureate/496 1860-09-06 1860-09-06 1935-06-21 1935-05-21
Richard Adolf Zsigmondy 182 http://data.nobelprize.org/resource/laureate/182 1865-04-01 1865-04-01 1929-09-23 1929-09-24
Rudolf Christoph Eucken 578 http://data.nobelprize.org/resource/laureate/578 1846-01-05 1846-01-05 1926-09-15 1926-09-14
Léon Bourgeois 484 http://data.nobelprize.org/resource/laureate/484 1851-05-29 1851-05-21 1925-09-29 1925-09-29
Woodrow Wilson 483 http://data.nobelprize.org/resource/laureate/483 1856-12-28 1856-12-28 1924-02-23 1924-02-03
Emil Adolf von Behring 293 http://data.nobelprize.org/resource/laureate/293 1864-03-15 1854-03-15 1917-03-31 1917-03-31
José Echegaray 574 http://data.nobelprize.org/resource/laureate/574 1832-01-01 1832-04-19 1916-09-04 1916-09-04
Klas Pontus Arnoldson 473 http://data.nobelprize.org/resource/laureate/473 1844-10-21 1844-10-27 1916-02-20 1916-02-20
Paul Heyse 580 http://data.nobelprize.org/resource/laureate/580 1830-03-13 1830-03-15 1914-04-02 1914-04-02
Tobias Asser 478 http://data.nobelprize.org/resource/laureate/478 1838-04-28 1838-04-28 1913-06-29 1913-07-29
Donna Strickland 962 http://data.nobelprize.org/resource/laureate/962 1959-05-29 1959-05-27
Nadia Murad Basee 967 http://data.nobelprize.org/resource/laureate/967 1993-01-01
Mo Yan 880 http://data.nobelprize.org/resource/laureate/880 1955-02-17 1955-02-02
Chen-ning Yang 68 http://data.nobelprize.org/resource/laureate/68 1922-10-01 1922-09-22
Venkatraman Ramakrishnan 841 http://data.nobelprize.org/resource/laureate/841 1952-04-05
Susumu Tonegawa 436 http://data.nobelprize.org/resource/laureate/436 1939-09-06 1939-09-05
Duncan Haldane 929 http://data.nobelprize.org/resource/laureate/929 1951-09-14 1951-09-14 2019-04-06
Paul M. Romer 969 http://data.nobelprize.org/resource/laureate/969 1955-11-06
Craig Mello 803 http://data.nobelprize.org/resource/laureate/803 1960-10-18 1960-10-19
Patrick Modiano 912 http://data.nobelprize.org/resource/laureate/912 1945-07-07 1945-07-30
Koichi Tanaka 757 http://data.nobelprize.org/resource/laureate/757 1959-10-03 1959-08-03
Saul Perlmutter 864 http://data.nobelprize.org/resource/laureate/864 1959-09-22
Michael Spence 745 http://data.nobelprize.org/resource/laureate/745 1943-11-07 1942-11-30
Richard Thaler 949 http://data.nobelprize.org/resource/laureate/949 1945-12-09 1945-09-12
End of automatically generated list.

Query to check diffEdit

PREFIX      dbpprop:  <http://dbpedia.org/property/>
PREFIX      foaf:  <http://xmlns.com/foaf/0.1/>
SELECT ?NobelId ?item ?LaureateNobelUri ?NobelBirth  ?WDBirth ?NobelDeath ?WDDeath 
with
{SELECT ?NobelId ?item ?LaureateNobelUri ?NobelBirth ?NobelDeath ?WDBirth ?WDDeath{
  SERVICE <http://data.nobelprize.org/sparql>  {
      SELECT distinct ?NobelId ?LaureateNobelUri ?NobelBirth ?NobelDeath ?NobelGender WHERE {        
      ?LaureateNobelUri <http://data.nobelprize.org/terms/laureateAward> ?NobelAwardid.
      BIND(REPLACE(str(?LaureateNobelUri),"http://data.nobelprize.org/resource/laureate/","") AS ?NobelId)
      OPTIONAL{ ?LaureateNobelUri foaf:birthday ?NobelBirth}
      OPTIONAL{ ?LaureateNobelUri dbpprop:dateOfDeath ?NobelDeath}
      }
   }
  } 
 } as %i where
{
  include %i
  ?item wdt:P2888 ?LaureateNobelUri . 
  OPTIONAL{ ?item wdt:P569 ?birthDate.}
  OPTIONAL{ ?item wdt:P570 ?diedDate.}
  BIND (SUBSTR(CONCAT("0",STR(DAY(?birthDate))),STRLEN(STR(DAY(?birthDate))),2) AS ?birthDay)
  BIND (SUBSTR(CONCAT("0",STR(MONTH(?birthDate))),STRLEN(STR(MONTH(?birthDate))),2) AS ?birthMonth)
  BIND (CONCAT(STR(YEAR(?birthDate)),"-",?birthMonth,"-",?birthDay) AS ?WDBirth)
  BIND (SUBSTR(CONCAT("0",STR(DAY(?diedDate))),STRLEN(STR(DAY(?diedDate))),2) AS ?diedDay)
  BIND (SUBSTR(CONCAT("0",STR(MONTH(?diedDate))),STRLEN(STR(MONTH(?diedDate))),2) AS ?diedMonth)
  BIND (CONCAT(STR(YEAR(?diedDate)),"-",?diedMonth,"-",?diedDay) AS ?WDDeath)
  FILTER (
        !(BOUND(?NobelBirth) = BOUND(?WDBirth))
    ||
        !(BOUND(?NobelDeath) = BOUND(?WDDeath))
    ||
        !(str(?WDBirth) = str(?NobelBirth))
    ||
        !(str(?WDDeath) = str(?NobelDeath))
  )
}
 order by desc(xsd:integer(?NobelId))

Try it!

As filter with the operator Or dont work in Listeria ==> rewrite logic with AND operator

PREFIX      dbpprop:  <http://dbpedia.org/property/>
PREFIX      foaf:  <http://xmlns.com/foaf/0.1/>
SELECT ?NobelId ?item ?LaureateNobelUri ?NobelBirth  ?WDBirth ?NobelDeath ?WDDeath 
with
{SELECT ?NobelId ?item ?LaureateNobelUri ?NobelBirth ?NobelDeath ?WDBirth ?WDDeath{
  SERVICE <http://data.nobelprize.org/sparql>  {
      SELECT distinct ?NobelId ?LaureateNobelUri ?NobelBirth ?NobelDeath ?NobelGender WHERE {        
      ?LaureateNobelUri <http://data.nobelprize.org/terms/laureateAward> ?NobelAwardid.
      BIND(REPLACE(str(?LaureateNobelUri),"http://data.nobelprize.org/resource/laureate/","") AS ?NobelId)
      OPTIONAL{ ?LaureateNobelUri foaf:birthday ?NobelBirth}
      OPTIONAL{ ?LaureateNobelUri dbpprop:dateOfDeath ?NobelDeath}
      }
   }
  } 
 } as %i where
{
  include %i
  ?item wdt:P2888 ?LaureateNobelUri . 
  OPTIONAL{ ?item wdt:P569 ?birthDate.}
  OPTIONAL{ ?item wdt:P570 ?diedDate.}
  BIND (SUBSTR(CONCAT("0",STR(DAY(?birthDate))),STRLEN(STR(DAY(?birthDate))),2) AS ?birthDay)
  BIND (SUBSTR(CONCAT("0",STR(MONTH(?birthDate))),STRLEN(STR(MONTH(?birthDate))),2) AS ?birthMonth)
  BIND (CONCAT(STR(YEAR(?birthDate)),"-",?birthMonth,"-",?birthDay) AS ?WDBirth)
  BIND (SUBSTR(CONCAT("0",STR(DAY(?diedDate))),STRLEN(STR(DAY(?diedDate))),2) AS ?diedDay)
  BIND (SUBSTR(CONCAT("0",STR(MONTH(?diedDate))),STRLEN(STR(MONTH(?diedDate))),2) AS ?diedMonth)
  BIND (CONCAT(STR(YEAR(?diedDate)),"-",?diedMonth,"-",?diedDay) AS ?WDDeath)
  FILTER (!(
        (BOUND(?NobelBirth) = BOUND(?WDBirth))
    &&
        (BOUND(?NobelDeath) = BOUND(?WDDeath))
    &&
        (str(?WDBirth) = str(?NobelBirth))
    &&
        (str(?WDDeath) = str(?NobelDeath)))
  )
}
 order by desc(xsd:integer(?NobelId))

Try it!

Next stepEdit

We should also inform of calendar model used and sources

PREFIX      dbpprop:  <http://dbpedia.org/property/>
PREFIX      foaf:  <http://xmlns.com/foaf/0.1/>
SELECT ?NobelId ?item ?LaureateNobelUri ?NobelBirth  ?WDBirth ?NobelDeath ?WDDeath ?statedin (?cm AS ?CalendarModel) (?p854 AS ?refURL) (?p143 AS ?ImportedFromWikipedia)
with
{SELECT ?NobelId ?item ?LaureateNobelUri ?NobelBirth ?NobelDeath ?WDBirth ?WDDeath ?statedin ?cm ?p854 ?p143{
  SERVICE <http://data.nobelprize.org/sparql>  {
      SELECT distinct ?NobelId ?LaureateNobelUri ?NobelBirth ?NobelDeath ?NobelGender WHERE {        
      ?LaureateNobelUri <http://data.nobelprize.org/terms/laureateAward> ?NobelAwardid.
      BIND(REPLACE(str(?LaureateNobelUri),"http://data.nobelprize.org/resource/laureate/","") AS ?NobelId)
      OPTIONAL{ ?LaureateNobelUri foaf:birthday ?NobelBirth}
      OPTIONAL{ ?LaureateNobelUri dbpprop:dateOfDeath ?NobelDeath}
      }
   }
  } 
 } as %i where
{
  include %i
  ?item wdt:P2888 ?LaureateNobelUri . 
  OPTIONAL{ ?item wdt:P569 ?birthDate.}
  OPTIONAL{  ?item p:P569 [ prov:wasDerivedFrom ?ref; psv:P569 [wikibase:timeCalendarModel ?cm ]] . 
     OPTIONAL { ?ref pr:P248 ?statedin }
     OPTIONAL { ?ref pr:P143 ?p143 }
     OPTIONAL { ?ref pr:P854 ?p854 } 
  }
  OPTIONAL{ ?item wdt:P570 ?diedDate.}
  BIND (SUBSTR(CONCAT("0",STR(DAY(?birthDate))),STRLEN(STR(DAY(?birthDate))),2) AS ?birthDay)
  BIND (SUBSTR(CONCAT("0",STR(MONTH(?birthDate))),STRLEN(STR(MONTH(?birthDate))),2) AS ?birthMonth)
  BIND (CONCAT(STR(YEAR(?birthDate)),"-",?birthMonth,"-",?birthDay) AS ?WDBirth)
  BIND (SUBSTR(CONCAT("0",STR(DAY(?diedDate))),STRLEN(STR(DAY(?diedDate))),2) AS ?diedDay)
  BIND (SUBSTR(CONCAT("0",STR(MONTH(?diedDate))),STRLEN(STR(MONTH(?diedDate))),2) AS ?diedMonth)
  BIND (CONCAT(STR(YEAR(?diedDate)),"-",?diedMonth,"-",?diedDay) AS ?WDDeath)
  FILTER (!(
        (BOUND(?NobelBirth) = BOUND(?WDBirth))
    &&
        (BOUND(?NobelDeath) = BOUND(?WDDeath))
    &&
        (str(?WDBirth) = str(?NobelBirth))
    &&
        (str(?WDDeath) = str(?NobelDeath)))
  )
}
 order by desc(xsd:integer(?NobelId))

Try it!

LinksEdit