Compare commits

...

60 Commits

Author SHA1 Message Date
mirdono
b31d6c65e6 fix: update label for locations to match their merged municipality
As part of the 2025 municipality mergers, three municipalities kept their URI
but were renamed. This updates the labels for their scope of
operation (nl. werkingsgebied) locations accordingly. This way the label of the
location resources matches the name of the municipality administrative unit.
2025-06-20 12:52:41 +02:00
cecemel
c77f1e9139 Merge pull request #551 from lblod/hotfix/add-vlaamse-regering-as-eenheid
Hotfix/add vlaamse regering as eenheid
2025-06-17 13:39:28 +02:00
felix
8a76be40e8 Release v1.33.1 2025-06-16 14:50:16 +02:00
felix
3dffca6623 Added migration for Vlaams Parlement
Note:
  `<http://mu.semte.ch/graphs/shared>` is only needed when data needs to
    be availible to worship and non-worship users
2025-06-16 14:49:13 +02:00
mirdono
f6fe8ac87d chore: update changelog 2025-06-05 14:00:34 +02:00
mirdono
7defbf9009 chore: bump frontend 2025-06-05 14:00:20 +02:00
mirdono
5f1bfe96c7 feat: cleanup jobs municipality and province relations
Add cleanup jobs to automatically insert and delete `org:hasSubOrganization`
relations between provinces and municipalities. These memberships were moved to
the `shared` graph causing the existing cleanup jobs to no longer work for them.
2025-06-04 11:41:21 +02:00
mirdono
d2ec188373 fix: relate provinces and municipalities in shared graph
The frontend relies on the memberships relating municipalities and province to
- automatically select the appropriate province given a municipality; and
- limit the municipality options to those in a given province.

This kind of functionality is used in both the worship and non-worship module so
the data should be readable by users with either roles. This moves the
appropriate data the `shared` graph, which can be read by all authenticated
users. Thereby fixing that that functionality was broken for users with the
worship role.
2025-06-04 11:41:21 +02:00
mirdono
9515aec9ad Merge branch 'master' into development 2025-06-04 11:40:58 +02:00
cecemel
d4cd0d5cbd Hotfix/add kabinet crevits as eenheid (#548)
* Added migration for Kabinet Crevits

Note: 
`<http://mu.semte.ch/graphs/shared>` is only needed when data needs to
be availible to worship and non-worship users

* Update CHANGELOG.md
2025-06-02 16:46:51 +02:00
mirdono
6036b030c1 Merge branch 'master' into development 2025-05-23 18:12:40 +02:00
mirdono
d3420cf935 chore: set correct release version 2025-05-23 18:08:27 +02:00
mirdono
f2a65697db chore: remove deprecated version from docker compose configurations
The version property has been deprecated for a while. Now that the servers are
on a recent version of docker compose these can be removed from our
configurations. This avoids that the warnings are shown each time.
2025-05-23 14:40:09 +02:00
mirdono
f279c1dba5 chore: bump frontend to latest release 2025-05-23 14:19:28 +02:00
mirdono
d0d3440338 chore: adjust order of commands in deploy notes
This simplifies deploying the release correctly as it decreases the chance of
missing a command.
2025-05-23 14:16:28 +02:00
mirdono
6c0619d45c chore: bump frontend to latest pre-release version 2025-05-23 11:12:19 +02:00
wolfderechter
8b8b192bbd Merge pull request #546 from lblod/fix/datafix-of-3-orgs
datafix: update status of kerkfabriek weelde to non-active
datafix: delete change event and update status to active for protesta… 
datafix: update date of change event for islamic assocations
2025-05-22 13:38:38 +02:00
wolfez
bde4180168 update changelog 2025-05-21 14:06:35 +02:00
wolfez
f04ebf5723 datafix: update date of change event for islamic assocations 2025-05-21 14:04:56 +02:00
wolfez
addd4304f6 datafix: delete change event and update status to active for protestantse kerk oostende 2025-05-21 14:04:32 +02:00
wolfez
ba5bdac6cb datafix: update status of kerkfabriek weelde to non-active 2025-05-21 14:03:33 +02:00
mirdono
366aad9fe5 fix: move lingering location triples from shared to public graph
The `shared` graph still contains some location triples introduced as part of
the municipality mergers. They were overlooked by the original cleanup
migrations because the `prov:Location` and `ext:werkingsgebiedNiveau` triples
were located in the `administrative-unit` graph, causing the `WHERE` clause to
not match these triples.
2025-05-21 12:36:08 +02:00
mirdono
01c5c7e7b3 fix: insert location relations in the correct graph
The initial version of the migration, incorrectly, inserted the triples linking
municipality and province locations in the administrative unit graph. This
corrects that behaviour putting the triples in the public graph along with all
location data.
2025-05-21 10:50:51 +02:00
palexopoulos-triply
73a494cd73 Merge pull request #543 from lblod/OP-3597
OP-3597: Write migration to extract from existing primary sites the province URI
2025-05-16 15:06:11 +02:00
Panos Alexopoulos
73e6c2c60c Added two migrations, one for adding province URIs to address entities, and one for adding a concept scheme for provinces
Updated add province uri migration to avoid duplicates

Added a cleanup migration for adding province URIs to addresses

Updated the export,json config to expose the province URI of addresses

Fixing errors after review

Updated CHANGELOG

Refactored and corrected migrations, changed the timestamps

refactoring cleanup migrations

Refactored the cleanup add province migrations

Updated changelog to ensure db-cleanup-service picks up the new jobs.
2025-05-16 14:53:00 +02:00
Riad Abdallah
6cc9acd4cd Merge branch 'master' into development 2025-05-08 16:33:57 +02:00
Riad Abdallah
273c3d1f10 Merge pull request #544 from lblod/hotfix/remove-suborganization-from-inactive-ckb-deinze
Remove suborganization from inactive ckb deinze
2025-05-08 16:31:29 +02:00
Riad Abdallah
464da76876 Release v1.31.3 2025-05-08 16:27:34 +02:00
Riad Abdallah
eb7d8949cd Remove Active Organization from Inactive CKB Deinze
There is a 'double' instance of CKB Deinze in the database. One is active, and the other is inactive. This confuses systems, and it doesn't make sense that active organizations are linked (almost managed) by an inactive organization.

* Insert suborganization(s) belonging to non-active org to the active one
  * Insert new membership belonging to the suborganization(s) and active org
* Delete memberships for non-active org
2025-05-08 16:26:52 +02:00
Panos Alexopoulos
34244b699b Undo last accidental push of migration jobs 2025-05-07 16:35:27 +02:00
Panos Alexopoulos
0f4173fd1a Added two migrations, one for adding province URIs to addresses, and one for creating a concept scheme for provinces 2025-05-07 16:31:58 +02:00
mirdono
5dfa7e4676 feat: related werkingsgebiededn for municipalities and provinces 2025-05-06 11:50:38 +02:00
mirdono
927e370aa6 feat: add werkingsgebied for Borsbeek district
When the new district of Borsbeek was created, no corresponding werkingsgebied
was created. This fixes that.
2025-05-06 11:50:17 +02:00
mirdono
2f06135cf9 fix: relate district locations to Antwerp locations
The districts locations were previously not linked to their containing Antwerp
municipality location. This migration fixes that.
2025-05-06 11:50:17 +02:00
mirdono
c6b74f6a1c refactor: move werkingsgebieden to public graph
The data on werkingsgebieden was largely duplicated across two graphs the shared
graph and administrative unit graph. Some exceptions were that werkingsgebieden
with level "referentieregio" were only in the shared graph, whereas
werkingsgebieden for new municipalities that resulted from the 2025 mergers were
only in the administrative unit graph.

This moves all the werkingsgebieden and their corresponding data to the public
graph, resolving the duplication in the process. Furthermore, the `public` and
`organizations` producers are update to only look in the public graph for
locations.
2025-05-06 11:49:47 +02:00
mirdono
706b7fa525 chore: move memberships from shared to administrative-unit graph
These memberships can be edited by users via the related organisations
page. If this data is kept in the read-only shared graph this leads to
unexpected behaviour when users (try to) remove such a membership. More
specifically, as the user has no write acces to the graph the request will be
silently ignored and the "removed" data will simply reappear after saving the
form.
2025-05-05 11:49:09 +02:00
wolfderechter
8ca23d5515 update change event date of ckb olen (#540) 2025-05-05 10:10:24 +02:00
mirdono
e712fa8fc8 chore: update changelog 2025-04-17 11:36:01 +02:00
mirdono
225e31d845 fix: update werkingsgebieden to match NIS 2025 codes
As part of the 2025 municipality mergers some NIS2019 codes were linked to their
NIS2025 counterparts using `skos:narrowMatch` or `skos:broadMatch`, instead of
`skos:exactMatch`. Consequently, the initial insertion of the NIS2025 codes did
not update the NIS code for the werkingsgebieden linking to these.
2025-04-17 11:35:31 +02:00
mirdono
a26abc8523 fix: update end dates for NIS 2019 codes 2025-04-17 11:35:31 +02:00
Claire Lovisa
9591cd3603 Merge pull request #537 from lblod/fix/kbo-status-not-displayed
Add migration and instructions to reset kbo sync
2025-04-15 21:29:51 +02:00
Claire Lovisa
85c307216c Bump kbo-data-sync 2025-04-15 21:26:31 +02:00
Claire Lovisa
e9327a4357 Add migration and instructions to reset kbo sync 2025-04-09 12:40:34 +02:00
Claire Lovisa
539376c47c Release v1.31.2 2025-04-02 11:27:35 +02:00
Claire Lovisa
57ef47cef9 Merge pull request #536 from lblod/fix/produce-secondary-sites-in-public-producer
Produce secondary sites in public producer as well
2025-04-02 11:02:30 +02:00
Claire Lovisa
12265b7eee Update changelog 2025-04-01 20:39:09 +02:00
Claire Lovisa
a019ee1025 Merge branch 'development' into fix/produce-secondary-sites-in-public-producer 2025-04-01 20:37:00 +02:00
Claire Lovisa
50d9db571b Produce site description 2025-04-01 20:10:00 +02:00
Claire Lovisa
f41aaae912 Produce secondary site addresses and contact (public producer) 2025-04-01 20:06:37 +02:00
mirdono
c0d23e6178 chore: corrected changelog
The entries about the public producer changes accidentally ended up in the
v1.31.0 section but were not actually part of this release. This moves them back
to the unreleased section so they are correctly included in the next release.
2025-04-01 17:26:28 +02:00
mirdono
67a8e9c6df Merge branch 'master' into development 2025-04-01 17:24:31 +02:00
Claire Lovisa
b6ac54df46 Produce secondary sites in public producer as well 2025-04-01 12:43:57 +02:00
wolfez
0497b23fac release v1.31.1 2025-04-01 09:53:23 +02:00
Claire Lovisa
725f608a3b Update changelog 2025-03-31 14:30:02 +02:00
Claire Lovisa
a3d1ec1b81 Merge pull request #534 from lblod/fix/produce-ro-status-and-sites-in-public
Add sites and status to representative organ in public producer
2025-03-31 14:26:00 +02:00
Claire Lovisa
285bb6f6cb Add sites and status to representative organ in public producer 2025-03-28 13:35:15 +01:00
Claire Lovisa
9dde9bf2b9 Merge pull request #533 from lblod/feature/produce-nis-codes-in-public-producer
Produce NIS codes and countries in public producer
2025-03-27 14:07:27 +01:00
Claire Lovisa
262fe89248 Produce countries in public producer 2025-03-26 11:00:41 +01:00
Claire Lovisa
d5c8f699b1 Update changelog 2025-03-25 14:05:37 +01:00
Claire Lovisa
d017d1b0e3 Produce NIS codes in public producer 2025-03-25 13:58:06 +01:00
38 changed files with 7741 additions and 11 deletions

View File

@@ -1,5 +1,96 @@
# Changelog
## Unreleased
## v1.33.2 (2025-06-20)
### Backend
- datafix: correct name for locations whose municipalities kept their URI in the 2025 mergers
### Deploy notes
```
drc restart migrations-triggering-indexing && drc logs -ft --tail=200
```
## v1.33.1 (2025-06-16)
### Backend
- Added Vlaams Parlement as bestuurseenheid. [DL-6686]
### Deploy Notes
```
drc restart migrations;
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/public/healing-jobs
```
## v1.33.0 (2025-06-05)
### Frontend
- Bump to version [v1.32.0](https://github.com/lblod/frontend-organization-portal/releases/tag/v1.32.0)
### Backend
- datafix: move memberships involving provinces and municipalities to shared graph [OP-3619]
### Deploy notes
```
drc restart migrations; drc logs -ft --tail=200 migrations
drc exec db-cleanup curl -X POST "http://localhost/cleanup"
drc pull frontend; drc up -d frontend
```
## v1.32.1 (2025-06-02)
### Backend
- Added Kabinet Crevits as bestuurseenheid. [DL-6655]
### Deploy Notes
```
drc restart migrations;
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/public/healing-jobs
```
## v1.32.0 (2025-05-23)
### Frontend
- Bump to version [v1.31.0](https://github.com/lblod/frontend-organization-portal/releases/tag/v1.31.0)
### Backend
- Fix KBO statuses not being displayed [OP-3584]
- datafix: update NIS2019 end dates and link additional NIS2025 to werkingsgebieden [part of OP-3566]
- datafix: correct date of change event of ckb olen [OP-3594]
- datafix: move memberships from shared to administrative unit graph
- datafix: cleanup werkingsgbieden data [OP-3566]
+ Move werkingsgebieden to public graph
+ Link district werkingsgebieden to Antwerp municipality werkingsgebied
+ Add missing werkingsgebied for Borsbeek district
- Write migration to extract from existing primary sites the province URI [OP-3597]
- datafix: update status kerkfabriek weelde [OP-3598]
- datafix: delete change event and update status protestantse kerk oostende [OP-3604]
- datafix: update change event date islamic assocation [OP-3602]
### Deploy Notes
```
drc pull frontend; drc up -d frontend
drc restart migrations; drc logs -ft --tail=200 migrations
drc restart migrations-triggering-indexing && drc logs -ft --tail=200 migrations-triggering-indexing
drc up -d kbo-data-sync
drc exec kbo-data-sync curl -X POST http://localhost/sync-all-kbo-data
drc restart delta-producer-publication-graph-maintainer
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/public/healing-jobs # or wait until nightly healing kicks in
drc exec delta-producer-background-jobs-initiator curl -X POST http://localhost/organizations/healing-jobs # or wait until nightly healing kicks in
drc exec db-cleanup curl -X POST "http://localhost/cleanup"
```
## v1.31.3 (2025-05-08)
### Backend
- Migrate active organizations linked to inactive CKB to the active one. [DL-6604]
### Deploy notes
```
drc restart migrations-triggering-indexing && drc logs -ft --tail=200 migrations-triggering-indexing
```
## v1.31.2 (2025-04-02)
### Backend
- Extend the public producer to include: [CLBV-980]
- NIS codes
- Sites and statuses of representative organs
- Secondary sites with their contacts and addresses
- Site descriptions
### Deploy notes
```
drc restart delta-producer-publication-graph-maintainer
```
## v1.31.1 (2025-04-01)
### Backend
- Removal of change events of 8 ckb's + update of their status [OP-3562]
### Deploy Notes
@@ -7,6 +98,7 @@
drc restart migrations-triggering-indexing; drc logs -ft --tail=200 migrations-triggering-indexing
drc restart migrations; drc logs -ft --tail=200 migrations
```
## v1.31.0 (2025-03-27)
### Frontend
- Bump to version [v1.30.0](https://github.com/lblod/frontend-organization-portal/blob/v1.30.0/CHANGELOG.md#v1300-2025-03-27)
@@ -47,7 +139,7 @@ Before we can generate a user we need to add an application salt to the server.
Once this is done you can generate a user by running `mu script project-scripts generate-dashboard-login` and following the prompts. A new local migration will be generated which can be run by restarting the migrations service and which will insert the new user into the database.
Store the login credentials as a comment in the docker-compose.override.yml file.
Store the login credentials as a comment in the docker-compose.override.yml file.
##### 3. (Re)start the needed services
`drc up -d frontend-dashboard dashboard-login identifier; drc restart dispatcher resource db`

View File

@@ -336,6 +336,7 @@
"http://www.w3.org/ns/locn#postCode",
"https://data.vlaanderen.be/ns/adres#gemeentenaam",
"http://www.w3.org/ns/locn#adminUnitL2",
"https://data.vlaanderen.be/ns/adres#adresIsGelegenIn",
"https://data.vlaanderen.be/ns/adres#land",
"http://www.w3.org/ns/locn#fullAddress",
"https://data.vlaanderen.be/ns/adres#verwijstNaar",
@@ -389,7 +390,7 @@
{
"type": "http://www.w3.org/ns/prov#Location",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared"
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://www.w3.org/2000/01/rdf-schema#label",

View File

@@ -157,6 +157,9 @@
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/ns/regorg#legalName",
"http://www.w3.org/2004/02/skos/core#altLabel",
"http://www.w3.org/ns/regorg#orgStatus",
"http://www.w3.org/ns/org#hasPrimarySite",
"http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/org#linkedTo",
"http://data.lblod.info/vocabularies/erediensten/typeEredienst",
"http://www.w3.org/ns/org#classification",
@@ -204,7 +207,28 @@
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/ns/org#siteAddress",
"https://data.vlaanderen.be/ns/organisatie#bestaatUit",
"http://data.lblod.info/vocabularies/erediensten/vestigingstype"
"http://data.lblod.info/vocabularies/erediensten/vestigingstype",
"http://purl.org/dc/terms/description"
]
},
{
"type": "http://www.w3.org/ns/org#Site",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
],
"pathToConceptScheme": [
"^http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/org#classification",
"http://www.w3.org/2004/02/skos/core#inScheme"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/ns/org#siteAddress",
"https://data.vlaanderen.be/ns/organisatie#bestaatUit",
"http://data.lblod.info/vocabularies/erediensten/vestigingstype",
"http://purl.org/dc/terms/description"
]
},
{
@@ -228,6 +252,35 @@
"http://www.w3.org/ns/locn#postCode",
"https://data.vlaanderen.be/ns/adres#gemeentenaam",
"http://www.w3.org/ns/locn#adminUnitL2",
"https://data.vlaanderen.be/ns/adres#adresIsGelegenIn",
"https://data.vlaanderen.be/ns/adres#land",
"http://www.w3.org/ns/locn#fullAddress",
"https://data.vlaanderen.be/ns/adres#verwijstNaar",
"http://purl.org/dc/terms/source"
]
},
{
"type": "http://www.w3.org/ns/locn#Address",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
],
"pathToConceptScheme": [
"^https://data.vlaanderen.be/ns/organisatie#bestaatUit",
"^http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/org#classification",
"http://www.w3.org/2004/02/skos/core#inScheme"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"https://data.vlaanderen.be/ns/adres#Adresvoorstelling.huisnummer",
"https://data.vlaanderen.be/ns/adres#Adresvoorstelling.busnummer",
"http://www.w3.org/ns/locn#thoroughfare",
"http://www.w3.org/ns/locn#postCode",
"https://data.vlaanderen.be/ns/adres#gemeentenaam",
"http://www.w3.org/ns/locn#adminUnitL2",
"https://data.vlaanderen.be/ns/adres#adresIsGelegenIn",
"https://data.vlaanderen.be/ns/adres#land",
"http://www.w3.org/ns/locn#fullAddress",
"https://data.vlaanderen.be/ns/adres#verwijstNaar",
@@ -258,6 +311,30 @@
"http://schema.org/telephone"
]
},
{
"type": "http://schema.org/ContactPoint",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
],
"pathToConceptScheme": [
"^http://www.w3.org/ns/org#siteAddress",
"^http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/org#classification",
"http://www.w3.org/2004/02/skos/core#inScheme"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/ns/locn#address",
"http://xmlns.com/foaf/0.1/page",
"http://schema.org/faxNumber",
"http://schema.org/contactType",
"http://xmlns.com/foaf/0.1/page",
"http://schema.org/email",
"http://schema.org/telephone"
]
},
{
"type": "http://www.w3.org/ns/adms#Identifier",
"graphsFilter": [
@@ -553,8 +630,7 @@
{
"type": "http://www.w3.org/ns/prov#Location",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/public"
],
"hasRegexGraphsFilter": false,
"properties": [
@@ -564,6 +640,41 @@
"http://www.opengis.net/ont/geosparql#sfWithin",
"http://www.w3.org/2004/02/skos/core#exactMatch"
]
},
{
"type": "http://www.w3.org/2004/02/skos/core#Concept",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#altLabel",
"http://www.w3.org/2004/02/skos/core#broadMatch",
"http://www.w3.org/2004/02/skos/core#broader",
"http://www.w3.org/2004/02/skos/core#exactMatch",
"http://www.w3.org/2004/02/skos/core#inScheme",
"http://www.w3.org/2004/02/skos/core#narrowMatch",
"http://www.w3.org/2004/02/skos/core#narrower",
"http://www.w3.org/2004/02/skos/core#notation",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#relatedMatch",
"http://www.w3.org/2004/02/skos/core#topConceptOf",
"https://schema.org/endDate",
"https://schema.org/startDate"
]
},
{
"type": "http://publications.europa.eu/ontology/euvoc#Country",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2000/01/rdf-schema#label"
]
}
]
}

View File

@@ -0,0 +1,55 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?activeOrg
<http://www.w3.org/ns/org#hasSubOrganization> ?sub .
?membership a org:Membership ;
mu:uuid ?uuid ;
org:organization ?activeOrg ;
org:member ?sub ;
org:role <http://data.lblod.info/id/rollen/4ec7d5c39bdc4e84b4174379b9e22ad8> .
}
}
WHERE {
BIND(<http://data.lblod.info/id/centraleBesturenVanDeEredienst/643ddbd9448ca43828702527af7bfbb8> AS ?inactiveOrg)
BIND(<http://data.lblod.info/id/centraleBesturenVanDeEredienst/7f5475cfb202d12f54779f046441c9e1> AS ?activeOrg)
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?inactiveOrg
<http://www.w3.org/ns/org#hasSubOrganization> ?sub .
}
FILTER NOT EXISTS {
?activeOrg
<http://www.w3.org/ns/org#hasSubOrganization> ?sub .
}
BIND(SHA1(CONCAT(STR(?activeOrg), STR(?sub), "sub organization")) as ?uuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/lidmaatschap/", ?uuid)) AS ?membership)
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?inactiveOrg
<http://www.w3.org/ns/org#hasSubOrganization> ?sub .
?membership ?membershipP ?membershipO .
}
}
WHERE {
BIND(<http://data.lblod.info/id/centraleBesturenVanDeEredienst/643ddbd9448ca43828702527af7bfbb8> AS ?inactiveOrg)
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?inactiveOrg
<http://www.w3.org/ns/org#hasSubOrganization> ?sub .
?membership a org:Membership ;
org:organization ?inactiveOrg ;
?membershipP ?membershipO .
}
}

View File

@@ -0,0 +1,17 @@
PREFIX regorg: <http://www.w3.org/ns/regorg#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s regorg:orgStatus ?activeStatus.
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s regorg:orgStatus ?notActiveStatus.
}
} WHERE {
VALUES ?s {
<http://data.lblod.info/id/besturenVanDeEredienst/b1dbb9effdedef39bc4f0c8d96197cfd>
}
BIND (<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> AS ?notActiveStatus)
BIND (<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> AS ?activeStatus)
}

View File

@@ -0,0 +1,17 @@
PREFIX regorg: <http://www.w3.org/ns/regorg#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s regorg:orgStatus ?notActiveStatus.
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s regorg:orgStatus ?activeStatus.
}
} WHERE {
VALUES ?s {
<http://data.lblod.info/id/besturenVanDeEredienst/45596b602140f031237b0ec26a8d4718>
}
BIND (<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> AS ?notActiveStatus)
BIND (<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> AS ?activeStatus)
}

View File

@@ -0,0 +1,22 @@
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX prov: <http://www.w3.org/ns/prov#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/public> {
?scope rdfs:label ?oldLabel .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?scope rdfs:label ?newLabel .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/public> {
?scope a prov:Location ;
rdfs:label ?oldLabel .
VALUES (?scope ?newLabel) {
(<http://data.lblod.info/id/werkingsgebieden/1f5dd7043ad54d07751da8689d5b47ad9ae0e52dccce8f00cc8debab35f8e2b2> "Bilzen-Hoeselt")
(<http://data.lblod.info/id/werkingsgebieden/fc34bb0a1dbf157ac5e5f8e657dd774210f03d2efa21370dd3b9a6342906c7ab> "Tessenderlo-Ham")
(<http://data.lblod.info/id/werkingsgebieden/fabec9e745fc9efa32afadd8b7268938805b9679dcf3b032c9b9a9a3530d6b59> "Tongeren-Borgloon")
}
}
}

View File

@@ -0,0 +1,15 @@
INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?s skos:inScheme <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b>.
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/public> {
VALUES ?nisScheme {
<http://vocab.belgif.be/auth/refnis2025>
<http://vocab.belgif.be/auth/refnis2019>
}
?s a <http://www.w3.org/2004/02/skos/core#Concept> ;
<http://www.w3.org/2004/02/skos/core#inScheme> ?nisScheme .
}
}

View File

@@ -0,0 +1,14 @@
DELETE {
GRAPH ?g {
?s <http://purl.org/dc/terms/modified> ?modified .
}
} INSERT {
GRAPH ?g {
?s <http://purl.org/dc/terms/modified> "1000-01-01"^^xsd:date .
}
} WHERE {
GRAPH ?g {
?s a <http://mu.semte.ch/vocabularies/ext/KboOrganisatie> ;
<http://purl.org/dc/terms/modified> ?modified .
}
}

View File

@@ -0,0 +1 @@
http://mu.semte.ch/graphs/refnis2019-data-temp

View File

@@ -0,0 +1,21 @@
PREFIX schemas: <https://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/public> {
?nis2019 schemas:endDate ?currentEndDate .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?nis2019 schemas:endDate ?newEndDate .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/public> {
?nis2019 skos:inScheme <http://vocab.belgif.be/auth/refnis2019> ;
schemas:endDate ?currentEndDate .
}
GRAPH <http://mu.semte.ch/graphs/refnis2019-data-temp> {
?nis2019 schemas:endDate ?newEndDate .
}
FILTER (?currentEndDate != ?newEndDate)
}

View File

@@ -0,0 +1 @@
CLEAR GRAPH <http://mu.semte.ch/graphs/refnis2019-data-temp>

View File

@@ -0,0 +1,18 @@
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied skos:exactMatch ?nis2019 .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied skos:exactMatch ?nis2025 .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?werkingsgebied skos:exactMatch ?nis2019 .
}
VALUES (?nis2019 ?nis2025) {
(<http://vocab.belgif.be/auth/refnis2019/10000> <http://vocab.belgif.be/auth/refnis2025/10000>) # Antwerp province
(<http://vocab.belgif.be/auth/refnis2019/40000> <http://vocab.belgif.be/auth/refnis2025/40000>) # East Flanders province
(<http://vocab.belgif.be/auth/refnis2019/11002> <http://vocab.belgif.be/auth/refnis2025/11002>) # Antwerp municipality
}
}

View File

@@ -0,0 +1,22 @@
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
DELETE {
GRAPH ?sourceGraph {
?werkingsgebied ?p ?o .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?werkingsgebied ?p ?o .
}
} WHERE {
GRAPH ?sourceGraph {
?werkingsgebied a prov:Location ;
ext:werkingsgebiedNiveau ?level ;
?p ?o .
}
VALUES ?sourceGraph {
<http://mu.semte.ch/graphs/administrative-unit>
<http://mu.semte.ch/graphs/shared>
}
}

View File

@@ -0,0 +1,17 @@
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?districtLocation geo:sfWithin ?antwerpLocation .
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/public> {
?districtLocation a prov:Location ;
ext:werkingsgebiedNiveau ?level .
FILTER (?level = "District")
}
# Hardcode the werkingsgbied for the Antwerp municipality as it is the only one with districts anyway.
BIND (<http://data.lblod.info/id/werkingsgebieden/3a9b09cbccb798c8f9d5bad3fce1476bce1ee014165ba243488b0af690d0f464> AS ?antwerpLocation)
}

View File

@@ -0,0 +1,24 @@
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?borsbeekLocation a prov:Location;
mu:uuid ?uuid ;
rdfs:label "Borsbeek" ;
ext:werkingsgebiedNiveau "District" ;
geo:sfWithin ?antwerpLocation .
}
# Also link this new werkingsgbied to the actual district
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?borsbeekDistrict besluit:werkingsgebied ?borsbeekLocation .
}
} WHERE {
BIND(SHA256(CONCAT("Werkingsgebied for the district of Borsbeek")) AS ?uuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/werkingsgebieden/", STR(?uuid))) AS ?borsbeekLocation)
BIND (<http://data.lblod.info/id/werkingsgebieden/3a9b09cbccb798c8f9d5bad3fce1476bce1ee014165ba243488b0af690d0f464> AS ?antwerpLocation)
BIND (<http://data.lblod.info/id/bestuurseenheden/4b44e6f1-113b-4692-b149-44a889b215f2> AS ?borsbeekDistrict)
}

View File

@@ -0,0 +1,26 @@
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?municipalityLocation geo:sfWithin ?provinceLocation .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?municipality a besluit:Bestuurseenheid ;
org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> .
?province a besluit:Bestuurseenheid ;
org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> .
}
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?membership a org:Membership ;
org:member ?municipality ;
org:organization ?province .
?municipality besluit:werkingsgebied ?municipalityLocation .
?province besluit:werkingsgebied ?provinceLocation .
}
}

View File

@@ -0,0 +1,24 @@
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX prov: <http://www.w3.org/ns/prov#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?s ?p ?o .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/public> {
?s ?p ?o .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?s ?p ?o .
VALUES ?p {
geo:sfWithin
skos:exactMatch
}
}
GRAPH <http://mu.semte.ch/graphs/public> {
?s a prov:Location .
}
}

View File

@@ -0,0 +1,15 @@
PREFIX dct: <http://purl.org/dc/terms/>
DELETE {
GRAPH ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/68021371D4DB18EC8BA958FC> dct:date ?oldDate .
}
} INSERT {
GRAPH ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/68021371D4DB18EC8BA958FC> dct:date "2023-11-30"^^xsd:date .
}
} WHERE {
GRAPH ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/68021371D4DB18EC8BA958FC> dct:date ?oldDate .
}
}

View File

@@ -0,0 +1,16 @@
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?membership ?p ?o .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?membership ?p ?o .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?membership a org:Membership ;
?p ?o .
}
}

View File

@@ -0,0 +1,26 @@
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX concept_schemes: <http://data.lblod.info/doc/conceptscheme#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX dcterms: <http://purl.org/dc/terms/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
concept_schemes:ProvincesConceptScheme a skos:ConceptScheme ;
skos:prefLabel "Provinces Concept Scheme" ;
dcterms:description "A concept scheme containing all the location entities that are provinces".
}
}
;
INSERT
{
GRAPH <http://mu.semte.ch/graphs/public> {
?province_uri rdf:type skos:Concept ;
skos:inScheme concept_schemes:ProvincesConceptScheme .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/public> {
?province_uri ext:werkingsgebiedNiveau "Provincie".
}
}

View File

@@ -0,0 +1,40 @@
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?address adres:adresIsGelegenIn ?province_uri .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?address rdf:type locn:Address ;
locn:adminUnitL2 ?province_literal .
}
GRAPH <http://mu.semte.ch/graphs/public> {
?province_uri rdfs:label ?province_literal ;
ext:werkingsgebiedNiveau "Provincie" .
}
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?address adres:adresIsGelegenIn ?province_uri .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?address rdf:type locn:Address ;
locn:adminUnitL2 ?province_literal .
}
GRAPH <http://mu.semte.ch/graphs/public> {
?province_uri rdfs:label ?province_literal ;
ext:werkingsgebiedNiveau "Provincie" .
}
}

View File

@@ -0,0 +1,41 @@
@prefix cleanup: <http://mu.semte.ch/vocabularies/ext/cleanup/> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<http://data.lblod.info/id/cleanup-job/42245582-ea60-4d44-80ef-c686901eccb5> a cleanup:Job ;
mu:uuid "42245582-ea60-4d44-80ef-c686901eccb5" ;
dcterms:title "Insert missing province uris for addresses of administrative units" ;
cleanup:randomQuery """
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?address adres:adresIsGelegenIn ?province_uri .
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?address rdf:type locn:Address ;
locn:adminUnitL2 ?province_literal .
FILTER NOT EXISTS {
?address adres:adresIsGelegenIn ?province_uri2 .
}
}
GRAPH <http://mu.semte.ch/graphs/public> {
?province_uri rdfs:label ?province_literal ;
ext:werkingsgebiedNiveau "Provincie" .
BIND (?province_uri as ?province_uri2)
}
}
""" .

View File

@@ -0,0 +1,39 @@
@prefix cleanup: <http://mu.semte.ch/vocabularies/ext/cleanup/> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<http://data.lblod.info/id/cleanup-job/cdbb9f4e-90cc-40f6-a0a9-bd0bd8c9105f> a cleanup:Job ;
mu:uuid "cdbb9f4e-90cc-40f6-a0a9-bd0bd8c9105f" ;
dcterms:title "Insert missing province uris for addresses of worship services" ;
cleanup:randomQuery """
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?address adres:adresIsGelegenIn ?province_uri .
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?address rdf:type locn:Address ;
locn:adminUnitL2 ?province_literal .
FILTER NOT EXISTS {
?address adres:adresIsGelegenIn ?province_uri2 .
}
}
GRAPH <http://mu.semte.ch/graphs/public> {
?province_uri rdfs:label ?province_literal ;
ext:werkingsgebiedNiveau "Provincie" .
BIND (?province_uri as ?province_uri2)
}
}
""" .

View File

@@ -0,0 +1,32 @@
PREFIX core: <http://mu.semte.ch/vocabularies/core/>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX lblodorg: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX euro: <http://data.europa.eu/m8g/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?event ?ep ?eo .
?result ?rp ?ro .
?decision ?de ?do .
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?event a org:ChangeEvent ;
core:uuid "6824418BD4DB18EC8BA95940" ;
lblodorg:veranderingsgebeurtenisResultaat ?result ;
?ep ?eo .
?result a lblodorg:VeranderingsgebeurtenisResultaat ;
?rp ?ro .
OPTIONAL {
?event euro:hasFormalFramework ?decision .
?decision a besluit:Besluit ;
?de ?do .
}
}
}

View File

@@ -0,0 +1,15 @@
PREFIX dct: <http://purl.org/dc/terms/>
DELETE {
GRAPH ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/682443E0D4DB18EC8BA95945> dct:date ?oldDate .
}
} INSERT {
GRAPH ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/682443E0D4DB18EC8BA95945> dct:date "2021-06-18"^^xsd:date .
}
} WHERE {
GRAPH ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/682443E0D4DB18EC8BA95945> dct:date ?oldDate .
}
}

View File

@@ -0,0 +1,32 @@
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
<http://data.lblod.info/id/bestuurseenheden/a33d5059-d527-4c9a-a788-1b7f5c75d10e>
rdf:type <http://www.w3.org/ns/org#Organization> , <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid> , dcterms:Agent ;
owl:sameAs <http://data.vlaanderen.be/doc/organisatie/OVO053550> ;
<http://www.w3.org/ns/org#classification> <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/52cc9d8d-1c9a-4d92-9936-da9d4a622ec4> ;
<http://www.w3.org/ns/org#linkedTo> <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> ;
<http://mu.semte.ch/vocabularies/core/uuid> "a33d5059-d527-4c9a-a788-1b7f5c75d10e" ;
skos:prefLabel "Kabinet Crevits" ;
<http://www.w3.org/2004/02/skos/core#note> """This is a special case, we consider (for now) Kabinet Crevits as a bestuurseenheid, of org:classification ABB.""";
<http://www.w3.org/ns/adms#identifier> <http://data.lblod.info/id/identificatoren/b53dc2b0-7fca-4c59-8f2a-276753edb81e> ;
<http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> ;
<http://www.w3.org/ns/regorg#legalName> "Kabinet Crevits" .
<http://data.lblod.info/id/identificatoren/b53dc2b0-7fca-4c59-8f2a-276753edb81e>
<https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> <http://data.lblod.info/id/gestructureerdeIdentificator/aac3f5c0-e525-4cec-8432-2d59806661e5>;
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/ns/adms#Identifier>;
<http://www.w3.org/2004/02/skos/core#notation> "OVO-nummer" ;
<http://mu.semte.ch/vocabularies/core/uuid> "b53dc2b0-7fca-4c59-8f2a-276753edb81e" .
<http://data.lblod.info/id/gestructureerdeIdentificator/aac3f5c0-e525-4cec-8432-2d59806661e5>
<http://mu.semte.ch/vocabularies/core/uuid> "aac3f5c0-e525-4cec-8432-2d59806661e5";
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator>;
<https://data.vlaanderen.be/ns/generiek#lokaleIdentificator> "OVO053550" .
}
}

View File

@@ -0,0 +1,24 @@
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?membership ?p ?o .
?organization org:hasSubOrganization ?member .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/shared>{
?membership ?p ?o .
?organization org:hasSubOrganization ?member .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?membership a org:Membership ;
org:member ?member ;
org:organization ?organization ;
?p ?o .
}
GRAPH <http://mu.semte.ch/graphs/shared> {
?member org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> . # Municipality
?organization org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> . # Province
}
}

View File

@@ -0,0 +1,36 @@
@prefix cleanup: <http://mu.semte.ch/vocabularies/ext/cleanup/> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
# Insert triples of the form
# <Province> <http://www.w3.org/ns/org#hasSubOrganization> <Municipality>
# matching memberships for which no such triple exists.
# Province: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>
#
# Municipality: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>
<http://data.lblod.info/id/cleanup-job/0cc5e981-a61e-433e-b6f2-c59fd8599944> a cleanup:Job ;
mu:uuid "0cc5e981-a61e-433e-b6f2-c59fd8599944" ;
dcterms:title "Insert missing `org:hasSubOrganization` triples relating provinces and municipalities." ;
cleanup:randomQuery """
PREFIX org: <http://www.w3.org/ns/org#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?membership a org:Membership ;
org:organization ?province ;
org:member ?municipality ;
org:role <http://data.lblod.info/id/rollen/4ec7d5c39bdc4e84b4174379b9e22ad8> .
FILTER NOT EXISTS { ?province org:hasSubOrganization ?municipality . }
?municipality org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> .
?province org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> .
}
}
""" .

View File

@@ -0,0 +1,37 @@
@prefix cleanup: <http://mu.semte.ch/vocabularies/ext/cleanup/> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
# Delete triples of the form
# <Province> <http://www.w3.org/ns/org#hasSubOrganization> <Municipality>
# for which no matching membership exists.
# Province: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>
#
# Municipality: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>
<http://data.lblod.info/id/cleanup-job/7354dfd9-bdef-48d6-b81e-e814bd4f4e9c> a cleanup:Job ;
mu:uuid "7354dfd9-bdef-48d6-b81e-e814bd4f4e9c" ;
dcterms:title "Delete leftover `org:hasSubOrganization` triples between Provinces and municipalities." ;
cleanup:randomQuery """
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality .
FILTER NOT EXISTS {
?membership a org:Membership ;
org:organization ?province ;
org:member ?municipality ;
org:role <http://data.lblod.info/id/rollen/4ec7d5c39bdc4e84b4174379b9e22ad8> .
}
?municipality org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> .
?province org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> .
}
}
""" .

View File

@@ -0,0 +1,32 @@
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
<http://data.lblod.info/id/bestuurseenheden/862d7e64-fa34-4cd8-a948-00327c6260a6>
rdf:type <http://www.w3.org/ns/org#Organization> , <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid> , dcterms:Agent ;
owl:sameAs <http://data.vlaanderen.be/doc/organisatie/OVO000617> ;
<http://www.w3.org/ns/org#classification> <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/52cc9d8d-1c9a-4d92-9936-da9d4a622ec4> ;
<http://www.w3.org/ns/org#linkedTo> <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> ;
<http://mu.semte.ch/vocabularies/core/uuid> "862d7e64-fa34-4cd8-a948-00327c6260a6" ;
skos:prefLabel "Vlaams Parlement" ;
<http://www.w3.org/2004/02/skos/core#note> """This is a special case, we consider (for now) Vlaams Parlement as a bestuurseenheid, of org:classification ABB.""";
<http://www.w3.org/ns/adms#identifier> <http://data.lblod.info/id/identificatoren/a03f0b48-1a6d-40af-84eb-5aee7b757986> ;
<http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> ;
<http://www.w3.org/ns/regorg#legalName> "Vlaams Parlement" .
<http://data.lblod.info/id/identificatoren/a03f0b48-1a6d-40af-84eb-5aee7b757986>
<https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> <http://data.lblod.info/id/gestructureerdeIdentificator/666c8cb7-030b-4e28-9042-82ac685684b9>;
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/ns/adms#Identifier>;
<http://www.w3.org/2004/02/skos/core#notation> "OVO-nummer" ;
<http://mu.semte.ch/vocabularies/core/uuid> "a03f0b48-1a6d-40af-84eb-5aee7b757986" .
<http://data.lblod.info/id/gestructureerdeIdentificator/666c8cb7-030b-4e28-9042-82ac685684b9>
<http://mu.semte.ch/vocabularies/core/uuid> "666c8cb7-030b-4e28-9042-82ac685684b9";
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator>;
<https://data.vlaanderen.be/ns/generiek#lokaleIdentificator> "OVO000617" .
}
}

View File

@@ -1,5 +1,3 @@
version: "3.4"
services:
identifier:
restart: "no"

View File

@@ -1,5 +1,3 @@
version: "3.4"
x-logging: &default-logging
driver: "json-file"
options:
@@ -196,7 +194,7 @@ services:
restart: always
logging: *default-logging
frontend:
image: lblod/frontend-organization-portal:1.30.0
image: lblod/frontend-organization-portal:1.32.0
volumes:
- ./config/frontend/add-x-frame-options-header.conf:/config/add-x-frame-options.conf
environment:
@@ -312,7 +310,7 @@ services:
restart: always
logging: *default-logging
kbo-data-sync:
image: lblod/sync-wegwijs-organization-service:2.0.2
image: lblod/sync-wegwijs-organization-service:2.0.3
links:
- db:database
labels: