User:TweetsFactsAndQueries/Queries-test-copy

From Wikidata
Jump to navigation Jump to search
# which genres are more likely to be in major key, which in minor key, which are about equally distributed?
# note: some tonalities are neither major nor minor, e. g. Q211745 atonality
SELECT ?genre ?genreLabel ?total ?major ?minor (?major / ?total AS ?majorRatio)
WITH {
  SELECT DISTINCT ?tonality WHERE {
    [] wdt:P826 ?tonality.
  }
} AS %tonalities
WITH {
  SELECT ?tonality ?isMajor ?isMinor WHERE {
    INCLUDE %tonalities.
    ?tonality rdfs:label ?tonalityLabel.
    FILTER(LANG(?tonalityLabel) = "en")
    # TODO https://www.wikidata.org/wiki/Wikidata_talk:WikiProject_Music#Items_for_major_and_minor_keys
    BIND(STRENDS(?tonalityLabel, " major") AS ?isMajor)
    BIND(STRENDS(?tonalityLabel, " minor") AS ?isMinor)
  }
} AS %tonalitiesWithMode
WITH {
  SELECT ?genre ?tonality (COUNT(DISTINCT ?composition) AS ?count) WHERE {
    ?composition wdt:P31/wdt:P279* wd:Q207628;
                 wdt:P136/wdt:P279* ?genre;
                 wdt:P826 ?tonality.
    ?genre wdt:P31 wd:Q188451.
  }
  GROUP BY ?genre ?tonality
} AS %genresAndTonalities WITH {
  SELECT ?genre (SUM(?count) AS ?total) (SUM(IF(?isMajor, ?count, 0)) AS ?major) (SUM(IF(?isMinor, ?count, 0)) AS ?minor) WHERE {
    INCLUDE %genresAndTonalities.
    INCLUDE %tonalitiesWithMode.
  }
  GROUP BY ?genre
} AS %results WHERE {
  INCLUDE %results.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY DESC(?total) DESC(?major)
Try it!
# a list of all movies shot in the 60s in Spain…
# TODO: in which a black female horse is stolen by a…
# left-handed actor…
# TODO playing a Portuguese orphan, …
# directed by a colorblind German…
# TODO who liked sailing, …
# and written by a dog-owning wom[a]n from Helsinki
# https://www.wikidata.org/wiki/Special:Diff/91950454
SELECT ?movie WHERE {
  ?movie wdt:P31/wdt:P279* wd:Q11424;
         wdt:P915/wdt:P17 wd:Q29;
         wdt:P577 ?date; # TODO *shot* in the 60s, not published. But how is that modeled? “significant event: principal photography” is occasionally used, but currently a constraint violation.
         wdt:P161 ?actor;
         wdt:P57 ?director;
         wdt:P58 ?writer.
  FILTER("1960-01-01"^^xsd:dateTime <= ?date && ?date < "1970-01-01"^^xsd:dateTime)
  ?actor wdt:P552 wd:Q789447.
  ?director wdt:P31 wd:Q5;
            wdt:P27 wd:Q183;
            wdt:P1050/wdt:P279* wd:Q133696.
  ?writer wdt:P31 wd:Q5;
          wdt:P1429/(wdt:P31/wdt:P279*)? wd:Q144;
          wdt:P21 wd:Q6581072;
          wdt:P19|wdt:P551 wd:Q1757. # TODO meaning of “from”?
Try it!

}

#defaultView:Timeline{ "hide": ["?publicationDate"] }
SELECT ?item (?title AS ?itemLabel) ?url ?publicationDate ?subject ?subjectLabel ?dead ?injured WHERE {
  ?item wdt:P179 wd:Q67365338;
        wdt:P1476 ?title;
        wdt:P953 ?url;
        wdt:P577 ?publicationDate;
        wdt:P921 ?subject.
  OPTIONAL { ?subject wdt:P1120 ?dead_. BIND(STRLANG(CONCAT(STR(?dead_), " dead"), "en") AS ?dead) }
  OPTIONAL { ?subject wdt:P1339 ?injured_. BIND(STRLANG(CONCAT(STR(?injured_), " injured"), "en") AS ?injured) }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
Try it!

}