forked from ldbc/ldbc_snb_interactive_v1_impls
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbi-7.sparql
46 lines (45 loc) · 1.71 KB
/
bi-7.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
42
43
44
45
46
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 (SUM(?popularityScore) AS ?authorityScore)
WHERE
{
SELECT DISTINCT ?personId ?person2 ?popularityScore
WHERE
{
?personId a snvoc:Person .
VALUES (?type) {(snvoc:Comment) (snvoc:Post)}
?message2 a ?type .
?message2 snvoc:hasCreator ?personId .
?message2 snvoc:hasTag/foaf:name $tag .
OPTIONAL {
?person2 snvoc:likes/(snvoc:hasPost|snvoc:hasComment) ?message2 .
?message2 snvoc:hasCreator ?personId .
?person2 a snvoc:Person .
{
SELECT ?person2 (COUNT(DISTINCT ?like2) AS ?popularityScore)
WHERE
{
VALUES (?type) {(snvoc:Comment) (snvoc:Post)}
?person2 a snvoc:Person .
?message3 a ?type .
?message3 snvoc:hasCreator ?person2 .
?person3 snvoc:likes ?like2 .
?person3 a snvoc:Person .
?like2 snvoc:hasPost|snvoc:hasComment ?message3 .
}
GROUP BY ?person2 ?like2
ORDER BY ?person2 ?like2
}
}
}
}
GROUP BY ?personId ?message2 ?authorityScore
ORDER BY DESC(?authorityScore) ?personId
LIMIT 100