SPARQL endpoint: http://ldf.fi/procope/sparql
Event query:
PREFIX ps: <http://ldf.fi/procope-schema#>
PREFIX crm: <http://www.cidoc-crm.org/cidoc-crm/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wgs84: <http://www.w3.org/2003/01/geo/wgs84_pos#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX ees: <http://ldf.fi/ee-schema#>
PREFIX gts: <http://ldf.fi/grandtour-schema#>
SELECT ?place1 ?place2 ?year1 ?year2 (COUNT(*) AS ?events) WHERE {
{
?letter a ees:Letter .
?letter ees:sourceLocation ?place1 .
?letter ees:destinationLocation ?place2 .
?letter crm:P4_has_time-span|ees:hasPossibleTimeSpan ?time .
?time crm:P82a_begin_of_the_begin ?begintime .
?time crm:P82b_end_of_the_end ?endtime .
} UNION {
?person ps:placeOfBirth ?place1 .
?person ps:placeOfDeath ?place2 .
?person ps:birthDate|ps:possibleBirthDate ?time1 .
?person ps:deathDate|ps:possibleDeathDate ?time2 .
?time1 crm:P82a_begin_of_the_begin ?begintime .
?time2 crm:P82b_end_of_the_end ?endtime .
} UNION {
?travel1 crm:P14_carried_out_by ?person .
?travel1 crm:P4_has_time-span|gts:estimatedTimeSpan ?time1 .
?time1 crm:P82a_begin_of_the_begin ?begintime .
?travel2 crm:P14_carried_out_by ?person .
FILTER (?travel1!=?travel2)
?travel2 crm:P4_has_time-span|gts:estimatedTimeSpan ?time2 .
?time2 crm:P82b_end_of_the_end ?endtime .
FILTER(?begintime<?endtime)
FILTER NOT EXISTS {
?travel3 crm:P14_carried_out_by ?person .
?travel3 crm:P4_has_time-span|gts:estimatedTimeSpan ?time3 .
?time3 crm:P82b_end_of_the_end ?endtime2 .
FILTER(?endtime2<?endtime && ?endtime2>?begintime)
}
?travel1 crm:P7_took_place_at ?place1 .
?travel2 crm:P7_took_place_at ?place2 .
}
FILTER EXISTS {
?place1 wgs84:lat ?lat1 .
?place2 wgs84:lat ?lat2 .
}
BIND(YEAR(?begintime) AS ?year1)
BIND(YEAR(?endtime) AS ?year2)
FILTER(?year1<=?year2 && ?year1>=1700 && ?year2<1800)
}
GROUP BY ?place1 ?place2 ?year1 ?year2
HAVING(?events>5)
Secondary place query:
PREFIX ps: <http://ldf.fi/procope-schema#>
PREFIX crm: <http://www.cidoc-crm.org/cidoc-crm/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wgs84: <http://www.w3.org/2003/01/geo/wgs84_pos#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX ees: <http://ldf.fi/ee-schema#>
PREFIX gts: <http://ldf.fi/grandtour-schema#>
SELECT ?place (SAMPLE(?name) AS ?pname) (CONCAT(SAMPLE(?lat),',',SAMPLE(?lon)) AS ?coordinates) {
?place skos:prefLabel ?name .
?place wgs84:lat ?lat .
?place wgs84:long ?lon .
} GROUP BY ?place