query-75c348c1fb5212d39cd30435a03c85fd
Premi stregaBuongiorno a tutti, Volevo dirvi che stavo giocando un po' con Wikidata Query Service ed ho creato una query per estrarre i dati riguardanti i vincitori del premio Strega.
Use at
- https://query.wikidata.org/sparql
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX pq: <http://www.wikidata.org/prop/qualifier/>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX bd: <http://www.bigdata.com/rdf#>
SELECT ?item ?title ?autoreLabel ?pubblicazione ?data_premio_strega ?genreLabel ?casa_editriceLabel ?itemLabel WHERE {
?item wdt:P166 wd:Q731542. #premio ricevuto è premio strega
SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
FILTER ( ?istanza != wd:Q5 ) #non è un umano (il premio su wikidata è assegnato sia ai libri vincitori che agli autori). Ci deve essere un modo migliore di selezionare solo i libri ma non l'ho trovato
FILTER ( ?tipopremio = wd:Q731542 ) #il premio è premio strega (questo l'ho dovuto inserire altrimenti ricevevo tutti i premi
OPTIONAL { ?item p:P166 ?premio . ?premio pq:P585 ?data_premio_strega ; ps:P166 ?tipopremio } #questo artifizio serve per estrarre solo il dato di anno di assegnazione del premio (che spesso è diverso dalla data di pubblicazione)
OPTIONAL { ?item wdt:P577 ?pubblicazione. } #anno di pubblicazione
OPTIONAL { ?item wdt:P31 ?istanza. } #l'istanza su cui fare la query
OPTIONAL { ?item wdt:P50 ?autore. } #nome dell'autore
OPTIONAL { ?item wdt:P136 ?genre. } #genere del libro
OPTIONAL { ?item wdt:P123 ?casa_editrice. } #casa editrice
OPTIONAL { ?item wdt:P1476 ?title } #titolo originale
}
ORDER BY ?data_premio_strega #ordinato per data di assegnazione del premio (non per data di pubblicazione)
Query found at
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
v7("?autore")
v9("?casa_editrice")
v1("?data_premio_strega"):::projected
v8("?genre")
v3("?istanza")
v4("?item"):::projected
v5("?premio")
v6("?pubblicazione"):::projected
v2("?tipopremio")
v10("?title"):::projected
c7(["en"]):::literal
c5(["bd:serviceParam"]):::iri
c1(["wd:Q731542"]):::iri
f0[["?tipopremio = 'wd:Q731542'"]]
f0 --> v2
f1[["?istanza != 'wd:Q5'"]]
f1 --> v3
v4 --"p:direct/P166"--> c1
subgraph s1["http://wikiba.se/ontology#label"]
style s1 stroke-width:4px;
c5 --"wikibase:language"--> c7
end
subgraph optional0["(optional)"]
style optional0 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:P166".-> v5
v5 --"p:qualifier/P585"--> v1
v5 --"p:statement/P166"--> v2
end
subgraph optional1["(optional)"]
style optional1 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:direct/P577".-> v6
end
subgraph optional2["(optional)"]
style optional2 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:direct/P31".-> v3
end
subgraph optional3["(optional)"]
style optional3 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:direct/P50".-> v7
end
subgraph optional4["(optional)"]
style optional4 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:direct/P136".-> v8
end
subgraph optional5["(optional)"]
style optional5 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:direct/P123".-> v9
end
subgraph optional6["(optional)"]
style optional6 fill:#bbf,stroke-dasharray: 5 5;
v4 -."p:direct/P1476".-> v10
end