Zenderl / conseil_federal

projet pour le cours en humanites numeriques unine 2023-2024 sujet pour le catalogue, le conseil federal entre 1848 et 2023. Et pour le 2e semestre, le Conseil national entre 1950 et 2019
Creative Commons Attribution Share Alike 4.0 International
0 stars 1 forks source link

Requêtes dans wikidata #1

Open atterebf opened 7 months ago

atterebf commented 7 months ago

Exemple: Pascale Bruderer, https://www.wikidata.org/wiki/Q116100

SPARQL-Enpoint: https://query.wikidata.org/

Positions de politiciens suisses

Noter que dans cette requête on utilise la structure des statements et on ajoute toutes les propriétés de chaque statement

  PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

  select distinct ?item ?itemLabel ?itemDescription ?birthDate ?position ?positionLabel ?p ?o
  where {
      ?item wdt:P31 wd:Q5;  # Any instance of a human.
            p:P39 ?statement.
          ?statement ps:P39 wd:Q18510612;
                     ps:P39 ?position;
                     ?p ?o.
      ?item wdt:P569 ?birthDate.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en,nl" }
  }

  LIMIT 500

Seulement les propriétés liées à la fonction

Noter qu'il y a plein de doublons si différentes valeurs

  SELECT DISTINCT ?item ?itemLabel ?itemDescription ?birthDate ?position ?positionLabel ?startYear ?startTime ?endTime ?p ?o
  where {
      ?item wdt:P31 wd:Q5;  # Any instance of a human.
            p:P39 ?statement.
          ?statement ps:P39 wd:Q18510612;
                     ps:P39 ?position;
                     pq:P580 ?startTime;
                     pq:P582 ?endTime.
      ?item wdt:P569 ?birthDate.
      BIND(REPLACE(str(?startTime), "(.*)([0-9]{4})(.*)", "$2") AS ?startYear)

    FILTER (?startYear > '1950')
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
  }
  ORDER BY ?startYear
  LIMIT 500

  SELECT DISTINCT ?item ?itemLabel ?itemDescription ?birthYear ?position ?positionLabel ?startYear ?startTime ?endTime
  where {
      ?item wdt:P31 wd:Q5;  # Any instance of a human.
            p:P39 ?statement.
          ?statement ps:P39 wd:Q18510612;
                     ps:P39 ?position;
                     pq:P580 ?startTime;
                     pq:P582 ?endTime.
      ?item wdt:P569 ?birthDate.
      BIND(REPLACE(str(?startTime), "(.*)([0-9]{4})(.*)", "$2") AS ?startYear)
      BIND(REPLACE(str(?birthDate), "(.*)([0-9]{4})(.*)", "$2") AS ?birthYear)

    FILTER (?startYear > '1950')
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
  }
  ORDER BY ?startYear
  LIMIT 500