SPARQL examples

Revision as of 13:08, 1 June 2023 by Admin (talk | contribs) (→‎Simple Queries: fix wrong property)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page is automatically parsed by the query page to provide examples.


Simple Queries

Complete Dependency Graph

Properties used: depends on (P1), subclass of (P2), image (P11)

#defaultView:Graph
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT ?item ?itemLabel ?class ?classLabel ?image ?dependency ?dependencyLabel WHERE {
  ?item wdt:P1 ?dependency.
  ?item wdt:P2 ?class
  OPTIONAL{ ?item wdt:P11 ?image.}
  OPTIONAL{ ?class wdt:P11 ?image.}
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Try it!


Central topics (topics with a high number of dependencies)

Properties used: depends on (P1)

#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wds: <https://graphit.ur.de/entity/statement/>
PREFIX wdv: <https://graphit.ur.de/value/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX p: <https://graphit.ur.de/prop/>
PREFIX ps: <https://graphit.ur.de/prop/statement/>
PREFIX pq: <https://graphit.ur.de/prop/qualifier/>

SELECT ?dependency ?dependencyLabel ?prerequisites ?prerequisite ?prerequisiteLabel WHERE {
  {
  SELECT ?dependency ?dependencyLabel (COUNT(DISTINCT ?prerequisite) as ?prerequisites) WHERE {
      ?prerequisite wdt:P1 ?dependency.      
  } GROUP BY ?dependency ?dependencyLabel
  }
  ?prerequisite wdt:P1 ?dependency.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Try it!


Advanced topics (topics with a high number of prerequisites)

Properties used: depends on (P1)

#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wds: <https://graphit.ur.de/entity/statement/>
PREFIX wdv: <https://graphit.ur.de/value/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX p: <https://graphit.ur.de/prop/>
PREFIX ps: <https://graphit.ur.de/prop/statement/>
PREFIX pq: <https://graphit.ur.de/prop/qualifier/>

SELECT ?prerequisite ?prerequisiteLabel ?dependencies ?dependency ?dependencyLabel WHERE {
  {
  SELECT ?prerequisite ?prerequisiteLabel (COUNT(DISTINCT ?dependency) as ?dependencies) WHERE {
      ?prerequisite wdt:P1 ?dependency.      
  } GROUP BY ?prerequisite ?prerequisiteLabel
  }
  ?prerequisite wdt:P1 ?dependency.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Try it!


Topics that Max Mustermann has completed

Items used: Max Mustermann (Q157)

Properties used: image (P11), has completed (P12), on date (P19)

#defaultView:Timeline
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wds: <https://graphit.ur.de/entity/statement/>
PREFIX wdv: <https://graphit.ur.de/value/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX p: <https://graphit.ur.de/prop/>
PREFIX ps: <https://graphit.ur.de/prop/statement/>
PREFIX pq: <https://graphit.ur.de/prop/qualifier/>
SELECT ?topic ?topicLabel ?image ?date WHERE {
  BIND(wd:Q157 as ?user).
  ?user p:P12 ?statement.
  ?statement ps:P12 ?topic.
  ?statement pq:P19 ?date.
  OPTIONAL{ ?topic wdt:P11 ?image.}
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Try it!


Stuff you need to learn if you want to write an image editor

Items used: Implementing an Image Editor (Q76)

Properties used: depends on (P1), image (P11)

#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wds: <https://graphit.ur.de/entity/statement/>
PREFIX wdv: <https://graphit.ur.de/value/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX p: <https://graphit.ur.de/prop/>
PREFIX ps: <https://graphit.ur.de/prop/statement/>
PREFIX pq: <https://graphit.ur.de/prop/qualifier/>

SELECT ?topic ?topicLabel ?item2 ?item2Label ?image WHERE {
  {
  SELECT ?goal ?goalLabel ?topic ?topicLabel ?image WHERE {
    {
    BIND(wd:Q76 as ?goal).
    ?goal wdt:P1+ ?topic.
    OPTIONAL{ ?topic wdt:P11 ?image.}
    } UNION {
      VALUES ?topic { wd:Q76 } # we also want to include the root node itself
    }
  }
  }
  ?topic wdt:P1 ?item2.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

Try it!


All backlinks to a given topic

Items used: Tutorial (Q159)


#defaultView:Graph
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wd: <https://graphit.ur.de/entity/>
select distinct ?subject ?subjectLabel ?item ?itemLabel { # ?property ?propertyLabel
  values (?item) {(wd:Q159)}
  ?subject ?predicate ?item .
  ?property wikibase:directClaim ?predicate
  service wikibase:label { bd:serviceParam wikibase:language "en" }
}

Try it!


Not yet implemented

Topics that Max Mustermann wants to complete

All topics in the CGBV course

Educational resources for learning Python