Submissions for SKKG
Description
The SKKG Knowledge Graph represents the diverse collections of the Stiftung für Kunst, Kultur und Geschichte, linking artworks, cultural heritage objects, historical artefacts, and curiosities across themes, periods, and provenance. With a strong focus on Swiss art of the 19th and 20th centuries and everyday European life, it models relationships between objects, historical events, exhibitions, and loans. The KG supports discovery of items in the “Sammlung digital” online catalogue and tracks national and international loans as well as SKKG-funded projects, providing a structured view of one of Switzerland’s largest private collections.
3 of 3 submissions
#89
Natural Language Question
Which artists are most often exhibited together?
SPARQL Query
PREFIX skkgonto: <https://ontology.skkg.ch/>
PREFIX crm: <http://www.cidoc-crm.org/cidoc-crm/>
PREFIX la: <https://linked.art/ns/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?artistA ?artistA_label ?artistB ?artistB_label (COUNT(DISTINCT ?exhibition) AS ?coExhibitionCount)
WHERE {
{
SELECT DISTINCT ?exhibition ?artistA ?artistB
WHERE {
?exhibition a skkgonto:Exhibition ;
crm:P16_used_specific_object ?exhibited_objects .
?exhibited_objects la:has_member ?o1, ?o2 .
FILTER(?o1 != ?o2)
# artists for each exhibited object
?o1 crm:P108i_was_produced_by/crm:P9_consists_of/crm:P14_carried_out_by ?a1 .
?o2 crm:P108i_was_produced_by/crm:P9_consists_of/crm:P14_carried_out_by ?a2 .
FILTER(?a1 != ?a2)
# normalize unordered artist pairs so (A,B) == (B,A)
BIND( IF(STR(?a1) < STR(?a2), ?a1, ?a2) AS ?artistA )
BIND( IF(STR(?a1) < STR(?a2), ?a2, ?a1) AS ?artistB )
}
}
?artistA skos:prefLabel ?artistA_label .
?artistB skos:prefLabel ?artistB_label .
}
GROUP BY ?artistA ?artistB ?artistA_label ?artistB_label
ORDER BY DESC(?coExhibitionCount) ?artistA_label ?artistB_label
#90
Natural Language Question
What is the exhibition with the highest number of exhibited objects?
Source
SPARQL Query
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX la: <https://linked.art/ns/terms/>
PREFIX crm: <http://www.cidoc-crm.org/cidoc-crm/>
PREFIX skkgonto: <https://ontology.skkg.ch/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT ?exhibition ?exhibition_name ?exhibition_place ?exhibition_date ?number_of_exhibited_objects WHERE {
?exhibition skos:prefLabel ?exhibition_name .
OPTIONAL {
?exhibition crm:P7_took_place_at/skos:prefLabel ?exhibition_place .
}
OPTIONAL {
?exhibition crm:P4_has_time-span ?exhibition_date_entity .
?exhibition_date_entity crm:P82a_begin_of_the_begin ?exhibition_date_begin ;
crm:P82b_end_of_the_end ?exhibition_date_end .
BIND (CONCAT(xsd:string(?exhibition_date_begin), " - ", xsd:string(?exhibition_date_end)) AS ?exhibition_date)
}
{
SELECT ?exhibition (COUNT(DISTINCT ?object) AS ?number_of_exhibited_objects) WHERE {
?exhibition a skkgonto:Exhibition ;
crm:P16_used_specific_object ?exhibited_objects .
?exhibition crm:P7_took_place_at ?exhibition_place .
?exhibited_objects la:has_member ?object .
}
GROUP BY ?exhibition
}
}
ORDER BY DESC(?number_of_exhibited_objects)
LIMIT 1
#91
Natural Language Question
Which pairs of objects are most often exhibited together?
Source
SPARQL Query
PREFIX skkgonto: <https://ontology.skkg.ch/>
PREFIX crm: <http://www.cidoc-crm.org/cidoc-crm/>
PREFIX la: <https://linked.art/ns/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?objectA ?objectA_name ?objectB ?objectB_name (COUNT(DISTINCT ?exhibition) AS ?coExhibitionCount) WHERE {
{
SELECT DISTINCT ?exhibition ?objectA ?objectB WHERE {
?exhibition a skkgonto:Exhibition ;
crm:P16_used_specific_object ?exhibited_objects ;
crm:P7_took_place_at ?exhibition_place .
?exhibited_objects la:has_member ?o1, ?o2 .
FILTER (?o1 != ?o2)
# normalize unordered pairs so (A,B) == (B,A)
BIND (IF(STR(?o1) < STR(?o2),?o1,?o2) AS ?objectA)
BIND (IF(STR(?o1) < STR(?o2),?o2,?o1) AS ?objectB)
}
}
?objectA skos:prefLabel ?objectA_name .
?objectB skos:prefLabel ?objectB_name .
}
GROUP BY ?objectA ?objectB ?objectA_name ?objectB_name
ORDER BY DESC(?coExhibitionCount)
LIMIT 100