Compare commits

...

10 Commits

Author SHA1 Message Date
Damon
d80614b139 Release v1.41.5 2026-09-11 10:05:46 +02:00
Damon
22d91920f8 DL-7473: added politiecollege bestuursorgaan via migrations + ended politieraad orgs 2026-09-11 09:56:00 +02:00
Damon
aac4410c2f Release v1.41.4 2026-08-31 11:12:10 +02:00
Damon
c7e06f2bf5 OP-3867: fix to mandataris mapping query + backfil migration for stuck mandatarissen 2026-08-31 11:04:40 +02:00
Claire Lovisa
486ccadcfa Release v1.41.3 2026-08-28 10:37:08 +02:00
Claire Lovisa
65edb1b2b0 Fix betrokken lokale besturen links via migration 2026-08-28 10:36:31 +02:00
Claire Lovisa
3024940172 Release v1.41.2 2026-08-25 14:48:46 +02:00
Claire Lovisa
4ede122678 Update changelog 2026-08-25 14:46:01 +02:00
Claire Lovisa
e7fd43c0c3 Set timeout to producer jobs 2026-08-25 14:44:57 +02:00
Claire Lovisa
eb10f5897d Fix betrokken lokale besturen links via migration 2026-08-25 14:44:45 +02:00
10 changed files with 287 additions and 3 deletions

View File

@@ -5,6 +5,16 @@
- Add new organization types (interlokale vereniging, vervoerregioraad, zorgraad, bosgroep, woonmaatschappij); add werkingsgebied (dct:spatial) to registered organizations [OP-3828]
- Rename generic organization types to "Vereniging algemeen" / "Vennootschap algemeen" [OP-3828]
- Werkingsgebied (dct:spatial) for private OCMW associations [OP-3832]
- Search organizations by vendor [OP-3808]
- Add organization types "Regionaal zorgplatform" (altLabel "Regionale zorgzone") and residual "Andere" [OP-3844]
- Move organizations from "Vereniging algemeen" / "Vennootschap algemeen" to "Andere"; delete those codes [OP-3844]
- Bump construct-organization-relationships [OP-3844]
- Frontend [v1.40.5](https://github.com/lblod/frontend-organization-portal/blob/v1.40.5/CHANGELOG.md) [OP-3844] [OP-3808] [OP-3849]
- Consume and serve provenance properties on harvested Worship positions [DL-7437]
- Frontend [v1.41.0](https://github.com/lblod/frontend-organization-portal/blob/v1.41.0/CHANGELOG.md) [DL-7438]
- Keep werkingsgebied filter up to date via db-cleanup service [OP-3841]
- Restrict available imam roles based on worship organisation status [DL-7485]
- IMPORTANT NOTE: Make sure first the [DL-7485] loket migration has completed + data has flown from loket to OP
### Deploy notes
```
@@ -24,6 +34,50 @@ drc restart migrations search
drc up -d frontend
```
## v1.41.5
- Add the value politiecollege to the existing dropdown list beslissingsorgaan [DL-7473]
- Bump construct-organization-relationships [DL-7473]
### Deploy notes
```
drc pull construct-organization-relationships && drc up -d construct-organization-relationships
drc restart migrations cache
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/public/healing-jobs
```
## v1.41.4
- Fix broken lmb mandataris mappin query [OP-3867]
### Deploy notes
```
drc restart migrations mandatarissen-consumer
```
## v1.41.3
- Fix betrokken lokale besturen links via migration [OP-3882]
### Deploy notes
```
drc restart migrations
drc restart cache resource
```
## v1.41.2
- Fix betrokken lokale besturen links via migration [OP-3877]
- Add timeout to producer jobs to prevent them staying stuck forever [OP-3815]
### Deploy notes
In the docker-compose.override.yml, on PROD only, set the `error-alert` environment variable `EMAIL_TO:` to `support+lblod@redpencil.io`.
Then:
```
drc up -d error-alert delta-producer-background-jobs-initiator
drc restart migrations
drc restart cache resource
```
## v1.41.1
- Added service to link addresses to addressregister uris [OP-3795]
- Site type changes [OP-3818]
@@ -53,6 +107,12 @@ drc restart migrations frontend db resource cache
/bin/bash scripts/reset-elastic.sh
```
```
drc restart migrations
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/public/healing-jobs
drc up -d construct-organization-relationships
```
## v1.41.0
- added explicit healtchecks [DL-7466]

View File

@@ -8,10 +8,10 @@ CONSTRUCT {
?p ?o.
?orgaanInTime <http://www.w3.org/ns/org#hasPost> ?mandate ;
<http://data.vlaanderen.be/ns/mandaat#isTijdspecialisatieVan> ?orgaan .
<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?orgaan .
?orgaan <http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuur .
?bestuur <http://data.vlaanderen.be/ns/besluit#classificatie> ?classification .
?bestuur <http://www.w3.org/ns/org#classification> ?classification .
FILTER(?classification IN (

View File

@@ -0,0 +1,11 @@
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix ext: <http://mu.semte.ch/vocabularies/ext/> .
@prefix code: <http://lblod.data.gift/vocabularies/organisatie/> .
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/4f82dfea-0581-43d4-b672-3bdb261d2d33>
rdf:type code:BestuursorgaanClassificatieCode , skos:Concept , ext:BestuursorgaanClassificatieCode ;
mu:uuid "4f82dfea-0581-43d4-b672-3bdb261d2d33" ;
skos:prefLabel "Politiecollege" ;
skos:inScheme <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> .

View File

@@ -0,0 +1,19 @@
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?timedBody mandaat:bindingEinde "2026-07-02T00:00:00"^^xsd:dateTime .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?politiezone a besluit:Bestuurseenheid ;
org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/a3922c6d-425b-474f-9a02-ffb71a436bfc> . # Politiezone
?governingBody besluit:bestuurt ?politiezone ;
org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/1afce932-53c1-46d8-8aab-90dcc331e67d> . # Politieraad
?timedBody generiek:isTijdspecialisatieVan ?governingBody .
FILTER NOT EXISTS { ?timedBody mandaat:bindingEinde ?endDate . }
}
}

View File

@@ -0,0 +1,34 @@
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?newGoverningBody a besluit:Bestuursorgaan ;
mu:uuid ?newGoverningBodyUuid ;
skos:prefLabel ?newGoverningBodyLabel ;
besluit:bestuurt ?politiezone ;
org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/4f82dfea-0581-43d4-b672-3bdb261d2d33> . # Politiecollege
?newTimedGoverningBody a besluit:Bestuursorgaan ;
mu:uuid ?newTimedGoverningBodyUuid ;
generiek:isTijdspecialisatieVan ?newGoverningBody ;
mandaat:bindingStart "2026-07-02T00:00:00"^^xsd:dateTime .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?politiezone a besluit:Bestuurseenheid ;
org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/a3922c6d-425b-474f-9a02-ffb71a436bfc> ; # Politiezone
mu:uuid ?politiezoneUuid ;
skos:prefLabel ?politiezoneLabel .
?oldGoverningBody besluit:bestuurt ?politiezone ;
org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/1afce932-53c1-46d8-8aab-90dcc331e67d> . # Politieraad
}
BIND(CONCAT("Politiecollege ", ?politiezoneLabel) AS ?newGoverningBodyLabel)
BIND(SHA256(CONCAT("politiecollege-", STR(?politiezoneUuid))) AS ?newGoverningBodyUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?newGoverningBodyUuid))) AS ?newGoverningBody)
BIND(SHA256(CONCAT("politiecollege-timed-", STR(?politiezoneUuid))) AS ?newTimedGoverningBodyUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?newTimedGoverningBodyUuid))) AS ?newTimedGoverningBody)
}

View File

@@ -0,0 +1,40 @@
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/landing-zone/mandatarissen> {
?s a mandaat:Mandataris;
org:holds ?mandate;
?p ?o.
}
?orgaanInTime org:hasPost ?mandate ;
generiek:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?bestuur .
?bestuur org:classification ?classification .
FILTER(?classification IN (
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000002>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000003>
))
FILTER (?p NOT IN (mandaat:start, mandaat:einde))
FILTER NOT EXISTS {
?s ?p "" .
}
FILTER NOT EXISTS {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> { ?s org:holds ?mandate }
}
}

View File

@@ -0,0 +1,94 @@
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?bestuur ere:betrokkenBestuur ?betrokkenLokaleBesturen .
?betrokkenLokaleBesturen ?p ?o .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES ?betrokkenLokaleBesturen {
<http://data.lblod.info/id/betrokkenLokaleBesturen/6363D5718DE5818A7C9F4402>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A462F3FDD4B9E78BCCD458F>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A462F3FDD4B9E78BCCD4590>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A462F3FDD4B9E78BCCD458E>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439361>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43935D>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43935F>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439364>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439366>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439367>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43936A>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439369>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43936B>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43936D>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43936C>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439368>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439360>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439365>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A43935E>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439362>
<http://data.lblod.info/id/betrokkenLokaleBesturen/6A71F922F541BB824A439363>
}
?bestuur ere:betrokkenBestuur ?betrokkenLokaleBesturen .
?betrokkenLokaleBesturen ?p ?o .
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?bestuur ere:betrokkenBestuur ?betrokkenLokaleBesturen .
?betrokkenLokaleBesturen ?p ?o .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES ?worshipService {
<http://data.lblod.info/id/besturenVanDeEredienst/6371F8418DE5818A7C9F44A5>
<http://data.lblod.info/id/besturenVanDeEredienst/65F5B3BEE77A4F2289F6B64C>
}
?bestuur ere:betrokkenBestuur ?betrokkenLokaleBesturen .
?betrokkenLokaleBesturen ere:typebetrokkenheid <http://lblod.data.gift/concepts/0f845f00ee76099c89518cbaf6a7b77f> ;
org:organization ?worshipService ;
?p ?o .
}
}
;
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/bestuurseenheden/be278471a2a318edba32e7ac4294c0eafbe4c8077a34dcbb9c2e43211d4a78a6>
ere:betrokkenBestuur <http://data.lblod.info/id/betrokkenLokaleBesturen/c663fdc9-642a-44c0-ac41-18e0ba047a9c> .
<http://data.lblod.info/id/betrokkenLokaleBesturen/c663fdc9-642a-44c0-ac41-18e0ba047a9c>
a ere:BetrokkenLokaleBesturen ;
mu:uuid "c663fdc9-642a-44c0-ac41-18e0ba047a9c" ;
ere:financieringspercentage "0"^^xsd:integer ;
ere:typebetrokkenheid <http://lblod.data.gift/concepts/0f845f00ee76099c89518cbaf6a7b77f> ;
org:organization <http://data.lblod.info/id/besturenVanDeEredienst/65F5B3BEE77A4F2289F6B64C> .
}
}
;
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/bestuurseenheden/298b13541e1e85de4b71535197aa1f3bbc4bdb67f0fe0f58ab4a7dc207af61fa>
ere:betrokkenBestuur <http://data.lblod.info/id/betrokkenLokaleBesturen/a26b6366-982a-40e1-aafe-eea7ade5865e> .
<http://data.lblod.info/id/betrokkenLokaleBesturen/a26b6366-982a-40e1-aafe-eea7ade5865e>
a ere:BetrokkenLokaleBesturen ;
mu:uuid "a26b6366-982a-40e1-aafe-eea7ade5865e" ;
ere:financieringspercentage "0"^^xsd:integer ;
ere:typebetrokkenheid <http://lblod.data.gift/concepts/86fcbbbff764f1cba4c7e10dbbae578e> ;
org:organization <http://data.lblod.info/id/besturenVanDeEredienst/6874B0FE8806FCC9C1BBF1C3> .
}
}

View File

@@ -0,0 +1,23 @@
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?bestuur ere:betrokkenBestuur ?betrokkenLokaleBesturen .
?betrokkenLokaleBesturen ?p ?o .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES ?worshipService {
<http://data.lblod.info/id/besturenVanDeEredienst/6A5624A4174153E0CE6F0423>
}
?bestuur ere:betrokkenBestuur ?betrokkenLokaleBesturen .
?betrokkenLokaleBesturen ere:typebetrokkenheid <http://lblod.data.gift/concepts/0f845f00ee76099c89518cbaf6a7b77f> ;
org:organization ?worshipService ;
?p ?o .
FILTER (?bestuur != <http://data.lblod.info/id/bestuurseenheden/670db1d66c0de3b931962e1044033ccfa9d6e3023aa9828a5f252c3bc69bd32c>)
}
}

View File

@@ -308,7 +308,7 @@ services:
restart: always
logging: *default-logging
construct-organization-relationships:
image: lblod/construct-organization-relationships-service:1.1.3
image: lblod/construct-organization-relationships-service:1.1.3-1
links:
- db:database
labels:
@@ -394,6 +394,8 @@ services:
image: lblod/delta-producer-background-jobs-initiator:1.0.1
volumes:
- ./config/delta-producer/background-job-initiator:/config
environment:
JOB_TIMEOUT_MINUTES: 1380 # 23h
links:
- db:database
labels: