@@ -40,19 +40,18 @@ async function replaceExistingData() {
40
40
?versionedMember ${ sparqlEscapeUri ( VERSION_PREDICATE ) } ?s .
41
41
42
42
{
43
- ?versionedMember (a | as:formerType) ?type.
43
+ ?versionedMember a ?type.
44
44
VALUES ?type { mandaat:Mandataris mandaat:Fractie org:Membership }
45
45
?versionedMember ?pNew ?oNew.
46
46
BIND(<http://mu.semte.ch/graphs/lmb-data-public> as ?target_graph)
47
47
}
48
48
UNION
49
49
{
50
- ?versionedMember (a | as:formerType) ?type.
50
+ ?versionedMember a ?type.
51
51
VALUES ?type { person:Person }
52
52
?versionedMember ?pNew ?oNew.
53
53
VALUES ?pNew {
54
54
rdf:type
55
- as:formerType
56
55
dct:modified
57
56
mu:uuid
58
57
foaf:familyName
@@ -62,7 +61,7 @@ async function replaceExistingData() {
62
61
}
63
62
UNION
64
63
{
65
- ?versionedMember (a | as:formerType) ?type.
64
+ ?versionedMember a ?type.
66
65
VALUES ?type { person:Person persoon:Geboorte }
67
66
?versionedMember ?pNew ?oNew.
68
67
FILTER (?pNew NOT IN ( adms:identifier ))
@@ -77,6 +76,29 @@ async function replaceExistingData() {
77
76
}
78
77
}
79
78
};
79
+ DELETE {
80
+ GRAPH ?g {
81
+ ?member ?pOut ?oOut.
82
+ ?sIn ?pIn ?member.
83
+ }
84
+ }
85
+ WHERE {
86
+ GRAPH ${ sparqlEscapeUri ( BATCH_GRAPH ) } {
87
+ ?stream <https://w3id.org/tree#member> ?versionedMember .
88
+ ?versionedMember ${ sparqlEscapeUri ( VERSION_PREDICATE ) } ?member .
89
+ ?versionedMember a as:Tombstone.
90
+ }
91
+ GRAPH ?g {
92
+ {
93
+ ?member ?pOut ?oOut.
94
+ }
95
+ UNION
96
+ {
97
+ ?sIn ?pIn ?member.
98
+ }
99
+ }
100
+ FILTER(?g != ${ sparqlEscapeUri ( BATCH_GRAPH ) } )
101
+ };
80
102
DELETE {
81
103
GRAPH <http://mu.semte.ch/graphs/lmb-data-public> {
82
104
?administrativeUnit ext:lastLMBUpdate ?oldTimestamp.
0 commit comments