forked from ldbc/ldbc_snb_interactive_v1_impls
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinteractive-complex-9.sparql
45 lines (44 loc) · 1.52 KB
/
interactive-complex-9.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
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
(?frId AS ?personId)
(?first AS ?personFirstName)
(?last AS ?personLastName)
?messageId
(?content AS ?messageContent)
(?creationDate AS ?messageCreationDate)
WHERE {
VALUES (?type) {(snvoc:Comment) (snvoc:Post)}
{
SELECT DISTINCT
?fr
?frId
WHERE
{
BIND( $personId AS ?rootId )
?rootPerson a snvoc:Person .
?rootPerson snvoc:id ?rootId .
?rootPerson ((snvoc:knows/snvoc:hasPerson)|^(snvoc:knows/snvoc:hasPerson))?/((snvoc:knows/snvoc:hasPerson)|^(snvoc:knows/snvoc:hasPerson)) ?fr .
?fr snvoc:id ?frId .
FILTER(?frId != ?rootId)
}
} .
?message snvoc:hasCreator ?fr .
?message a ?type .
?message snvoc:creationDate ?creationDate .
FILTER(?creationDate < $maxDate) .
?message snvoc:content|snvoc:imageFile ?content .
?message snvoc:id ?messageId .
?fr snvoc:firstName ?first .
?fr snvoc:lastName ?last .
?fr snvoc:id ?frId
}
ORDER BY DESC(?creationDate) ?post
LIMIT 20