forked from ldbc/ldbc_snb_interactive_v1_impls
-
Notifications
You must be signed in to change notification settings - Fork 1
/
bi-19.sparql
41 lines (40 loc) · 1.63 KB
/
bi-19.sparql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX sn: <http://www.ldbc.eu/ldbc_socialnet/1.0/data/>
PREFIX snvoc: <http://www.ldbc.eu/ldbc_socialnet/1.0/vocabulary/>
PREFIX sntag: <http://www.ldbc.eu/ldbc_socialnet/1.0/tag/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dbpedia: <http://dbpedia.org/resource/>
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>
SELECT ?personId (COUNT(DISTINCT ?stranger) AS ?strangerCount) (COUNT(?comment) AS ?interactionCount)
WHERE
{
{
SELECT DISTINCT ?stranger
WHERE
{
?forum1 a snvoc:Forum .
?forum1 snvoc:hasMember/snvoc:hasPerson ?stranger .
?forum1 snvoc:hasTag/a/rdfs:label $tagClass1 .
?forum2 a snvoc:Forum .
?forum2 snvoc:hasMember/snvoc:hasPerson ?stranger .
?forum2 snvoc:hasTag/a/rdfs:label $tagClass2 .
}
}
?personId a snvoc:Person .
FILTER( ?personId != ?stranger ) .
?personId snvoc:birthday ?personBirthday .
FILTER( ?personBirthday > $date^^xsd:date ) .
FILTER NOT EXISTS{ {?personId snvoc:knows/snvoc:hasPerson ?stranger} UNION {?stranger snvoc:knows/snvoc:hasPerson ?personId} }
VALUES (?type) {(snvoc:Comment) (snvoc:Post)} .
?message a ?type .
?message snvoc:hasCreator ?stranger .
?comment a snvoc:Comment .
?comment snvoc:hasCreator ?personId .
?comment snvoc:replyOf+ ?message .
FILTER NOT EXISTS { ?message snvoc:replyOf+/snvoc:hasCreator ?stranger }
}
GROUP BY ?personId
ORDER BY DESC(?interactionCount) ?personId
LIMIT 100