Compare commits

...

8 Commits

Author SHA1 Message Date
felix
fc676dd30f Release v1.28.2 2025-01-13 15:04:25 +01:00
felix
54700d9832 Publish "Opdrachthoudende vereniging met private deelname" in ->
delta stream "public"
2025-01-13 14:56:01 +01:00
mirdono
ce0e267627 chore: add changelog file
Introduce a changelog file to keep track of the changes in each release.
Furthermore, this should contain the necessary steps to deploy a release.
2025-01-10 10:49:11 +01:00
wolfez
d0835a1b30 Migration to delete betrokkene 'oudenaarde' and update financieringspercentage 2025-01-09 16:48:28 +01:00
wolfez
44e2de4f0b Create migrations for the cleanup of local involvements 2025-01-09 16:48:10 +01:00
mirdono
824201ced6 feat: merge police zones 2025
- Migrations to create the necessary merger change events that represent the
  merger of several police zones into three new ones
- Migration to update the status of the merged police zones to not active
2025-01-09 15:29:54 +01:00
mirdono
80ad432a5c fix: relate merged municipalities and province in shared graph
When new organisations were added for some merged municipalities (see PR #442)
their `org:hasSubOrganization` link with the province was inserted in to the
`<http://mu.semte.ch/graphs/administrative-unit>` graph instead of the
`<http://mu.semte.ch/graphs/shared>`.

Consequently, when logged in as a worship user and either of these
municipalities were selected in a form, the corresponding province was not
automatically filled in. This is due to the fact that worship users cannot read
from the `administrative-unit` graph.

This migration moves the appropriate `org:hasSubOrganization` triples to the
correct graph such that the behaviour for worship and non-worship users is the
same again.
2025-01-09 15:29:00 +01:00
Claire Lovisa
9122c18f1e Import 2025 NIS codes and update werkingsgebieden (#490) 2025-01-08 12:17:38 +01:00
16 changed files with 9186 additions and 0 deletions

37
CHANGELOG.md Normal file
View File

@@ -0,0 +1,37 @@
# Changelog
## 1.28.2 (2025-01-13)
### Backend
- Added "Opdrachthoudende vereniging met private deelname" in delta public
### Deploy commands
```
drc up -d migrations
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/public/healing-jobs # or wait for the healing to kick in
```
## 1.28.1 (2025-01-11)
### Backend
- Import 2025 NIS codes and update werkingsgebieden (OP-3342)
- Add merger change events for merged police zones (OP-3454)
- Delete local involvements for worship services (OP-3501, OP-3512)
- Move link between new municipalities and province to shared graph (OP-3513, OP-3514)
### Deploy notes
- Restart both migration services
#### Docker commands
- `drc restart migrations; drc logs -ft --tail=200 migrations`
- `drc restart migrations-triggering-indexing; drc logs -ft --tail=200 migrations-triggering-indexing`
## 1.28.0 (2025-01-02)
### Backend
- Bump frontend to `v1.28.0`
- Add end date for governing bodies for municipalities and OCMWs and update status (OP-3348)
- Update municipality and province name in organisation's addresses (OP-3410)
- Add merger change events for merged municipalities and OCMWs (OP-3412)
- Updates names for merged municipalities and OCMWs (OP-3456)
### Deploy notes
- Restart both migration services
- Bump frontend
#### Docker commands
- `drc restart migrations; drc logs -ft --tail=200 migrations`
- `drc restart migrations-triggering-indexing; drc logs -ft --tail=200 migrations-triggering-indexing`
- `drc pull frontend; drc up -d frontend`

View File

@@ -0,0 +1,25 @@
PREFIX regorg: <http://www.w3.org/ns/regorg#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s regorg:orgStatus ?activeStatus.
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s regorg:orgStatus ?notActiveStatus.
}
} WHERE {
VALUES ?s {
<http://data.lblod.info/id/bestuurseenheden/150440a8bb763d6f53d24ca1c6f1460cb5817c8a261fd90e74aadac3292c3efe>
<http://data.lblod.info/id/bestuurseenheden/41d31a2eb697af977aadf64c73e0bcffb094e0f20e4017fe3b49c507079c0976>
<http://data.lblod.info/id/bestuurseenheden/330516b323c00851cf4b93e6d5d7a2ef4591f68ae6e71ad9c1f432ee70521bb2>
<http://data.lblod.info/id/bestuurseenheden/7dd1250996188607bb1e28df1ebea0b943e8db59c08ea01e3c57672531c43ec6>
<http://data.lblod.info/id/bestuurseenheden/541c1603eb8c01968f95d1f262854134499e00d135cd7c9147d307ccbd1e20fd>
<http://data.lblod.info/id/bestuurseenheden/4deae42b2b25bff407f5abc7cbb6d62eb02afaf2892086341c324fdf2c0e6e92>
<http://data.lblod.info/id/bestuurseenheden/b7af3483cb5d0021c6f5864a433b211fce30246ef685621d104b1951915c21c4>
}
BIND (<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> AS ?notActiveStatus)
BIND (<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> AS ?activeStatus)
}

View File

@@ -0,0 +1 @@
http://mu.semte.ch/graphs/public

View File

@@ -0,0 +1,12 @@
INSERT {
GRAPH ?g {
?nisCode <http://mu.semte.ch/vocabularies/core/uuid> ?uuid .
}
} WHERE {
GRAPH ?g {
?nisCode a skos:Concept ;
skos:inScheme <http://vocab.belgif.be/auth/refnis2025> .
BIND(SHA256(CONCAT("NIS codes 2025", STR(?nisCode))) AS ?uuid) .
}
}

View File

@@ -0,0 +1,18 @@
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied <http://www.w3.org/2004/02/skos/core#exactMatch> ?nis2019 .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied <http://www.w3.org/2004/02/skos/core#exactMatch> ?nis2025 .
}
} WHERE {
?werkingsgebied a <http://www.w3.org/ns/prov#Location> ;
<http://www.w3.org/2004/02/skos/core#exactMatch> ?nis2019 .
?nis2019 skos:inScheme <http://vocab.belgif.be/auth/refnis2019> .
?nis2025 a skos:Concept ;
skos:inScheme <http://vocab.belgif.be/auth/refnis2025> ;
skos:exactMatch ?nis2019 .
}

View File

@@ -0,0 +1,30 @@
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied <http://www.w3.org/2004/02/skos/core#exactMatch> ?preMergerNIS .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied <http://www.w3.org/2004/02/skos/core#exactMatch> ?postMergerNIS .
}
} WHERE {
VALUES (?werkingsgebied ?postMergerNIS) {
(<http://data.lblod.info/id/werkingsgebieden/92398c49-30d5-46b2-af90-37f135c89e47> <http://vocab.belgif.be/auth/refnis2025/23106>) # Pajottegem
(<http://data.lblod.info/id/werkingsgebieden/21034a361da5b5c45424cbbef38a89029ca025e32aa1b132fcceca1d13149ee6> <http://vocab.belgif.be/auth/refnis2025/37021>) # Wingene
(<http://data.lblod.info/id/werkingsgebieden/1fb92312354f3d900670e2b9cfbd80148910f1227e321f2c377f92957b071cb1> <http://vocab.belgif.be/auth/refnis2025/37022>) # Tielt
(<http://data.lblod.info/id/werkingsgebieden/41362ab2-5130-4160-b76b-4bfa5d9a1f59> <http://vocab.belgif.be/auth/refnis2025/44086>) # Nazareth-De Pinte
(<http://data.lblod.info/id/werkingsgebieden/f1552be4471af0742d8ea03cd8596900c634a66f67e1fbc130d79f655de0240e> <http://vocab.belgif.be/auth/refnis2025/44087>) # Lochristi
(<http://data.lblod.info/id/werkingsgebieden/4afbdfef4de7314c2637a9f950b13bb9b0b4eaaf3413c0bd5d0600852a9d7cb3> <http://vocab.belgif.be/auth/refnis2025/46029>) # Lokeren
(<http://data.lblod.info/id/werkingsgebieden/62fef519-b1de-4a0f-911a-c63a5365c17b> <http://vocab.belgif.be/auth/refnis2025/44088>) # Merelbeke-Melle
(<http://data.lblod.info/id/werkingsgebieden/b97c1b58-6431-4509-ab94-3300d27759a8> <http://vocab.belgif.be/auth/refnis2025/46030>) # Beveren-Kruibeke-Zwijndrecht
(<http://data.lblod.info/id/werkingsgebieden/1f5dd7043ad54d07751da8689d5b47ad9ae0e52dccce8f00cc8debab35f8e2b2> <http://vocab.belgif.be/auth/refnis2025/73110>) # Bilzen-Hoeselt
(<http://data.lblod.info/id/werkingsgebieden/fabec9e745fc9efa32afadd8b7268938805b9679dcf3b032c9b9a9a3530d6b59> <http://vocab.belgif.be/auth/refnis2025/73111>) # Tongeren-Borgloon
(<http://data.lblod.info/id/werkingsgebieden/fc34bb0a1dbf157ac5e5f8e657dd774210f03d2efa21370dd3b9a6342906c7ab> <http://vocab.belgif.be/auth/refnis2025/71071>) # Tessenderlo-Ham
(<http://data.lblod.info/id/werkingsgebieden/e55336a3ecbae33f21e595458ba93eeeb0fa4390626622884d4d32523d0e0033> <http://vocab.belgif.be/auth/refnis2025/71072>) # Hasselt
}
?werkingsgebied a <http://www.w3.org/ns/prov#Location> .
OPTIONAL {
?werkingsgebied <http://www.w3.org/2004/02/skos/core#exactMatch> ?preMergerNIS .
}
}

View File

@@ -0,0 +1,35 @@
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/betrokkenLokaleBesturen/0da11d9fdef2d45f90fd4ebd353ecd3c> ?p ?o.
}
}
;
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/bestuurseenheden/d9f7c0ab4920fdecf3f9a60b92e921b5ca07248fcb0eac2113eb97392ddd6c6c> <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> <http://data.lblod.info/id/betrokkenLokaleBesturen/0da11d9fdef2d45f90fd4ebd353ecd3c>.
}
}
;
DELETE {
GRAPH ?g {
?localInvolvementWortegemPetegem <http://data.lblod.info/vocabularies/erediensten/financieringspercentage> ?percentage.
}
}
INSERT {
GRAPH ?g {
?localInvolvementWortegemPetegem <http://data.lblod.info/vocabularies/erediensten/financieringspercentage> 100.
}
}
WHERE {
BIND(<http://mu.semte.ch/graphs/worship-service> AS ?g)
GRAPH ?g {
?localInvolvementWortegemPetegem <http://data.lblod.info/vocabularies/erediensten/financieringspercentage> ?percentage.
}
VALUES ?localInvolvementWortegemPetegem {
<http://data.lblod.info/id/betrokkenLokaleBesturen/00b8f19ce0fafa090df049498337aad8>
}
}

View File

@@ -0,0 +1,23 @@
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?province org:hasSubOrganization ?municipality.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?province org:hasSubOrganization ?municipality.
}
VALUES ?municipality {
<http://data.lblod.info/id/bestuurseenheden/19483103-318e-435a-aa37-45e485406ee9> # Beveren-Kruibeke-Zwijndrecht
<http://data.lblod.info/id/bestuurseenheden/1ca65d65-54ff-4b44-b750-bd70c91191af> # Nazareth-De Pinte
<http://data.lblod.info/id/bestuurseenheden/add1e4eb-9ec7-4ea6-af82-335aa76b7d48> # Pajottegem
<http://data.lblod.info/id/bestuurseenheden/b8bb293d-aa22-4b43-bda4-0b6af76e9493> # Merelbeke-Melle
}
}

View File

@@ -0,0 +1,13 @@
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/betrokkenLokaleBesturen/b38d5606b539da68af04891d9ca08605> ?p ?o.
}
}
;
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/bestuurseenheden/e41ffa04f94bb450a79793020e70d55b5fee5033a5280277998608a9d0913117> <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> <http://data.lblod.info/id/betrokkenLokaleBesturen/b38d5606b539da68af04891d9ca08605>.
}
}

View File

@@ -0,0 +1,13 @@
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/betrokkenLokaleBesturen/1f525a624264469c0a765a33f1c609cc> ?p ?o.
}
}
;
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/bestuurseenheden/5a4b2b4f1de1f3b91b0348a7eb6d6aa0ef9420b8ec31374970c9ffe933a79515> <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> <http://data.lblod.info/id/betrokkenLokaleBesturen/1f525a624264469c0a765a33f1c609cc>.
}
}

View File

@@ -0,0 +1,13 @@
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/betrokkenLokaleBesturen/623B1D5CB72F9F4B3350823E> ?p ?o.
}
}
;
DELETE WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/bestuurseenheden/a3bd0845853278f478f90b14436d3efa99e73249a84d462f0ddc2e5b6e37a156> <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> <http://data.lblod.info/id/betrokkenLokaleBesturen/623B1D5CB72F9F4B3350823E>.
}
}

View File

@@ -0,0 +1,60 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX lblodOrg: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?changeEvent a org:ChangeEvent;
mu:uuid ?uuidChangeEvent;
ch:typeWijziging ?mergerChangeEventType;
org:resultingOrganization ?resultingOrganisation;
dct:date "2025-01-01"^^xsd:date;
dct:description "Fusie tussen PZ Alken/Borgloon/Heers/Kortessem/Wellen (= 5379 PZ Kanton Borgloon) en PZ Tongeren/Herstappe (= 5380 PZ Tongeren/Herstappe) resulteert in PZ Tongeren-Borgloon/Herstappe/Heers/Wellen (= 5962 PZ Haspengouw)";
org:originalOrganization ?firstNotActiveOriginal;
org:originalOrganization ?secondNotActiveOriginal;
lblodOrg:veranderingsgebeurtenisResultaat ?firstNotActiveChangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?secondNotActivechangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?resultingOrganisationChangeEventResult.
?firstNotActiveChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidFirstNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?firstNotActiveOriginal.
?secondNotActivechangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidSecondNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?secondNotActiveOriginal.
?resultingOrganisationChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidResultingOrganisationChangeEventResult;
lblodOrg:resulterendeStatus ?activeStatus;
ext:resultingOrganization ?resultingOrganisation.
}
} WHERE {
VALUES (?firstNotActiveOriginal ?secondNotActiveOriginal ?resultingOrganisation) {
(<http://data.lblod.info/id/bestuurseenheden/150440a8bb763d6f53d24ca1c6f1460cb5817c8a261fd90e74aadac3292c3efe> # PZ Alken/Borgloon/Heers/Kortessem/Wellen
<http://data.lblod.info/id/bestuurseenheden/41d31a2eb697af977aadf64c73e0bcffb094e0f20e4017fe3b49c507079c0976> # PZ Tongeren/Herstappe
<http://data.lblod.info/id/bestuurseenheden/677E848329299CC832892A1B> # PZ Tongeren-Borgloon/Herstappe/Heers/Wellen
)
}
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), STR(?secondNotActiveOriginal), STR(?resultingOrganization))) AS ?uuidChangeEvent) .
BIND (IRI(CONCAT("http://data.lblod.info/id/veranderingsgebeurtenissen/", STR(?uuidChangeEvent))) AS ?changeEvent) .
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), "FirstNotActiveMergerChangeEventResult")) AS ?uuidFirstNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidFirstNotActiveChangeEventResult))) AS ?firstNotActiveChangeEventResult) .
BIND (SHA256(CONCAT(STR(?secondNotActiveOriginal), "SecondNotActiveMergerChangeEventResult")) AS ?uuidSecondNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidSecondNotActiveChangeEventResult))) AS ?secondNotActivechangeEventResult) .
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), STR(?secondNotActiveOriginal), STR(?resultingOrganization), "fusieChangeEventActiveResult")) AS ?uuidResultingOrganisationChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidResultingOrganisationChangeEventResult))) AS ?resultingOrganisationChangeEventResult) .
BIND (<http://lblod.data.gift/concepts/fa80032794c841ecac73ff874f856db1> AS ?mergerChangeEventType)
BIND (<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> AS ?notActiveStatus)
BIND (<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> AS ?activeStatus)
}

View File

@@ -0,0 +1,72 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX lblodOrg: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
# Add fusion change event
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?changeEvent a org:ChangeEvent;
mu:uuid ?uuidChangeEvent;
ch:typeWijziging ?mergerChangeEventType;
org:resultingOrganization ?resultingOrganisation;
dct:date "2025-01-01"^^xsd:date;
dct:description "Fusie tussen PZ Zwijndrecht (= 5346 PZ Zwijndrecht) en PZ Kruibeke/Temse (= 5433 PZ Kruibeke/Temse) en PZ Beveren/Sint-Gillis-Waas/Stekene (= 5904 Waasland-Noord) resulteert in PZ Beveren-Kruibeke-Zwijndrecht/Sint-Gillis-Waas/Stekene/Temse (= 5964 PZ Scheldewaas)";
org:originalOrganization ?firstNotActiveOriginal;
org:originalOrganization ?secondNotActiveOriginal;
org:originalOrganization ?thirdNotActiveOriginal;
lblodOrg:veranderingsgebeurtenisResultaat ?firstNotActiveChangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?secondNotActiveChangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?thirdNotActiveChangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?resultingOrganisationChangeEventResult.
?firstNotActiveChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidFirstNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?firstNotActiveOriginal.
?secondNotActiveChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidSecondNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?secondNotActiveOriginal.
?thirdNotActiveChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidThirdNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?thirdNotActiveOriginal.
?resultingOrganisationChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidResultingOrganisationChangeEventResult;
lblodOrg:resulterendeStatus ?activeStatus;
ext:resultingOrganization ?resultingOrganisation.
}
} WHERE {
VALUES (?firstNotActiveOriginal ?secondNotActiveOriginal ?thirdNotActiveOriginal ?resultingOrganisation) {
(<http://data.lblod.info/id/bestuurseenheden/330516b323c00851cf4b93e6d5d7a2ef4591f68ae6e71ad9c1f432ee70521bb2> # PZ Zwijndrecht
<http://data.lblod.info/id/bestuurseenheden/7dd1250996188607bb1e28df1ebea0b943e8db59c08ea01e3c57672531c43ec6> # PZ Kruibeke/Temse
<http://data.lblod.info/id/bestuurseenheden/541c1603eb8c01968f95d1f262854134499e00d135cd7c9147d307ccbd1e20fd> # PZ Beveren/Sint-Gillis-Waas/Stekene
<http://data.lblod.info/id/bestuurseenheden/677E959629299CC832892A24> # PZ Beveren-Kruibeke-Zwijndrecht/Sint-Gillis-Waas/Stekene/Temse
)
}
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), STR(?secondNotActiveOriginal), STR(?resultingOrganization))) AS ?uuidChangeEvent) .
BIND (IRI(CONCAT("http://data.lblod.info/id/veranderingsgebeurtenissen/", STR(?uuidChangeEvent))) AS ?changeEvent) .
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), "FirstNotActiveMergerChangeEventResult")) AS ?uuidFirstNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidFirstNotActiveChangeEventResult))) AS ?firstNotActiveChangeEventResult) .
BIND (SHA256(CONCAT(STR(?secondNotActiveOriginal), "SecondNotActiveMergerChangeEventResult")) AS ?uuidSecondNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidSecondNotActiveChangeEventResult))) AS ?secondNotActiveChangeEventResult) .
BIND (SHA256(CONCAT(STR(?thirdNotActiveOriginal), "ThirdNotActiveMergerChangeEventResult")) AS ?uuidThirdNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidThirdNotActiveChangeEventResult))) AS ?thirdNotActiveChangeEventResult) .
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), STR(?secondNotActiveOriginal), STR(?thirdNotActiveOriginal), STR(?resultingOrganization), "MergerChangeEventResultActiveResult")) AS ?uuidResultingOrganisationChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidResultingOrganisationChangeEventResult))) AS ?resultingOrganisationChangeEventResult) .
BIND (<http://lblod.data.gift/concepts/fa80032794c841ecac73ff874f856db1> AS ?mergerChangeEventType)
BIND (<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> AS ?notActiveStatus)
BIND (<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> AS ?activeStatus)
}

View File

@@ -0,0 +1,61 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX lblodOrg: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
# Add fusion change event
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?changeEvent a org:ChangeEvent;
mu:uuid ?uuidChangeEvent;
ch:typeWijziging ?mergerChangeEventType;
org:resultingOrganization ?resultingOrganisation;
dct:date "2025-01-01"^^xsd:date;
dct:description "Fusie tussen PZ Kluisbergen/Kruisem/Oudenaarde/Wortegem-Petegem (= 5425 PZ Vlaamse Ardennen) en PZ Brakel/Horebeke/Maarkedal/Zwalm (= 5426 PZ Brakel) resulteert in PZ Vlaamse Ardennen (= 5915 PZ Vlaamse Ardennen)";
org:originalOrganization ?firstNotActiveOriginal;
org:originalOrganization ?secondNotActiveOriginal;
lblodOrg:veranderingsgebeurtenisResultaat ?firstNotActiveChangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?secondNotActivechangeEventResult;
lblodOrg:veranderingsgebeurtenisResultaat ?resultingOrganisationChangeEventResult.
?firstNotActiveChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidFirstNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?firstNotActiveOriginal.
?secondNotActivechangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidSecondNotActiveChangeEventResult;
lblodOrg:resulterendeStatus ?notActiveStatus;
ext:resultingOrganization ?secondNotActiveOriginal.
?resultingOrganisationChangeEventResult a lblodOrg:VeranderingsgebeurtenisResultaat;
mu:uuid ?uuidResultingOrganisationChangeEventResult;
lblodOrg:resulterendeStatus ?activeStatus;
ext:resultingOrganization ?resultingOrganisation.
}
} WHERE {
VALUES (?firstNotActiveOriginal ?secondNotActiveOriginal ?resultingOrganisation) {
(<http://data.lblod.info/id/bestuurseenheden/4deae42b2b25bff407f5abc7cbb6d62eb02afaf2892086341c324fdf2c0e6e92> # PZ Kluisbergen/Kruisem/Oudenaarde/Wortegem-Petegem
<http://data.lblod.info/id/bestuurseenheden/b7af3483cb5d0021c6f5864a433b211fce30246ef685621d104b1951915c21c4> # PZ Brakel/Horebeke/Maarkedal/Zwalm
<http://data.lblod.info/id/bestuurseenheden/677E966229299CC832892A2D> # PZ Vlaamse Ardennen
)
}
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), STR(?secondNotActiveOriginal), STR(?resultingOrganization))) AS ?uuidChangeEvent) .
BIND (IRI(CONCAT("http://data.lblod.info/id/veranderingsgebeurtenissen/", STR(?uuidChangeEvent))) AS ?changeEvent) .
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), "FirstNotActiveMergerChangeEventResult")) AS ?uuidFirstNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidFirstNotActiveChangeEventResult))) AS ?firstNotActiveChangeEventResult) .
BIND (SHA256(CONCAT(STR(?secondNotActiveOriginal), "SecondNotActiveMergerChangeEventResult")) AS ?uuidSecondNotActiveChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidSecondNotActiveChangeEventResult))) AS ?secondNotActivechangeEventResult) .
BIND (SHA256(CONCAT(STR(?firstNotActiveOriginal), STR(?secondNotActiveOriginal), STR(?resultingOrganization), "fusieChangeEventActiveResult")) AS ?uuidResultingOrganisationChangeEventResult) .
BIND (IRI(CONCAT("http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/", STR(?uuidResultingOrganisationChangeEventResult))) AS ?resultingOrganisationChangeEventResult) .
BIND (<http://lblod.data.gift/concepts/fa80032794c841ecac73ff874f856db1> AS ?mergerChangeEventType)
BIND (<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> AS ?notActiveStatus)
BIND (<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> AS ?activeStatus)
}

View File

@@ -0,0 +1,6 @@
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/4b8450cf-a326-4c66-9e63-b4ec10acc7f6>
<http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> .
}
}