feat: mandates and functions for governing bodies legislature 2025

For each of the governing bodies created by the migrations in the previous
commit, now add the corresponding mandates and functions.

Within a organisation some governing bodies share the same mandates. For
example, for municipalities the governing body "Burgemeester" and "College van
burgemeester en schepen" both refer to the SAME instance of mandates for
"Burgemeester" and "Aangewezen burgemeester".
To achieve this the some migrations contain a second `INSERT` clause in which
the other governing body that contains the necessary mandates is selected to be
able to determine the correct mandate URI. This only works on two conditions:
1. Migrations that depend on each must be executed in the correct order. For
   example, the migration inserting the mandates for "College van burgemeester
   en schepen" must be executed after that for "Burgemeester". The former will
   reuse mandates created by the latter.
2. The UUID for the shared mandates is calculated in exactly the same way in
   migrations that depend on each other.
This commit is contained in:
mirdono
2024-08-29 18:18:29 +02:00
committed by Alexander van den Berghe
parent a647c7ea69
commit 78ce1f7071
19 changed files with 705 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/4955bd72cd0e4eb895fdbfab08da0284> . # Burgemeester
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000013> # Burgemeester
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/7b038cc40bba10bec833ecfe6f15bc7a> # Aangewezen burgemeester
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000005> . # Gemeenteraad
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000012> # Voorzitter van de gemeenteraad
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000011> # Gemeenteraadslid
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,67 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000006> . # College van Burgemeester en Schepenen
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000014> # Schepen
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/59a90e03-4f22-4bb9-8c91-132618db4b38> # Toegevoegde schepen
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}
;
# Link mandates shared with Burgemeester governing body
# !! Make sure the Burgemeester governing body and its mandates are !!
# !! already created, otherwise this will not work correctly. !!
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000006> . # College van Burgemeester en Schepenen
# Find the other governing body as it is needed to determine correct UUID and URI
?governingBody besluit:bestuurt ?organisation .
?governingBodyOther besluit:bestuurt ?organisation ;
org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/4955bd72cd0e4eb895fdbfab08da0284> . # Burgemeester
?governingBodyInTimeOther a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBodyOther ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000013> # Burgemeester
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/7b038cc40bba10bec833ecfe6f15bc7a> # Aangewezen burgemeester
}
BIND(SHA256(CONCAT(STR(?governingBodyOther), STR(?governingBodyInTimeOther), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,31 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/53c0d8cd-f3a2-411d-bece-4bd83ae2bbc9> . # Voorzitter van het Bijzonder Comité voor de Sociale Dienst
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001a> # Voorzitter van het Bijzonder Comité voor de Sociale Dienst
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000007> . # Raad voor Maatschappelijk Welzijn
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000016> # Voorzitter van de Raad voor Maatschappelijk Welzijn
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000015> # Lid van de Raad voor Maatschappelijk Welzijn
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000008> . # Vast Bureau
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000018> # Voorzitter van het Vast bureau
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000017> # Lid van het Vast Bureau
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,65 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000009> . # Bijzonder Comité voor de Sociale Dienst
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000019> # Lid van het Bijzonder Comité voor de Sociale Dienst
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}
;
# Link mandates shared with Voorzitter van het Bijzonder Comité voor de Sociale Dienst governing body
# !! Make sure the Voorzitter van het Bijzonder Comité voor de Sociale Dienst governing body and its mandates are !!
# !! already created, otherwise this will not work correctly. !!
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e000009> . # Bijzonder Comité voor de Sociale Dienst
# Find the other governing body as it is needed to determine correct UUID and URI
?governingBody besluit:bestuurt ?organisation .
?governingBodyOther besluit:bestuurt ?organisation ;
org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/53c0d8cd-f3a2-411d-bece-4bd83ae2bbc9> . # Voorzitter van het Bijzonder Comité voor de Sociale Dienst
?governingBodyInTimeOther a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBodyOther ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001a> # Voorzitter van het Bijzonder Comité voor de Sociale Dienst
}
BIND(SHA256(CONCAT(STR(?governingBodyOther), STR(?governingBodyInTimeOther), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e00000c> . # Provincieraad
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000027> # Voorzitter van de provincieraad
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001f> # Provincieraadslid
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,31 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/180a2fba-6ca9-4766-9b94-82006bb9c709> . # Gouverneur
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/d7c00cd1-baf1-4346-83c0-6796c0bedd85> # Gouverneur
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,31 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e00000d> . # Deputatie
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e000020> # Gedeputeerde
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e00000a> . # Districtsraad
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001c> # Voorzitter van de districtsraad
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001b> # Districtsraadslid
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,31 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/9314533e-891f-4d84-a492-0338af104065> . # Districtsburgemeester
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001d> # Districtsburgemeester
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,65 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
?mandate a mandaat:Mandaat , org:Post ;
mu:uuid ?mandateUuid ;
org:role ?mandateRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e00000b> . # Districtscollege
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001e> # Districtsschepen
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}
;
# Link mandates shared with Districtsburgemeester governing body
# !! Make sure the Districtsburgemeester governing body and its mandates are !!
# !! already created, otherwise this will not work correctly. !!
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime org:hasPost ?mandate .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab0e9b8a3b2ca7c5e00000b> . # Districtscollege
# Find the other governing body as it is needed to determine correct UUID and URI
?governingBody besluit:bestuurt ?organisation .
?governingBodyOther besluit:bestuurt ?organisation ;
org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/9314533e-891f-4d84-a492-0338af104065> . # Districtsburgemeester
?governingBodyInTimeOther a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBodyOther ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
}
VALUES ?mandateRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ab0e9b8a3b2ca7c5e00001d> # Districtsburgemeester
}
BIND(SHA256(CONCAT(STR(?governingBodyOther), STR(?governingBodyInTimeOther), STR(?mandateRole), " 2025")) AS ?mandateUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?mandateUuid)) AS ?mandate)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime lblodlg:heeftBestuursfunctie ?function .
?function a lblodlg:Bestuursfunctie , org:Post ;
mu:uuid ?functionUuid ;
org:role ?functionRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/39854196-f214-4688-87a1-d6ad12baa2fa> . # Algemeen directeur
}
VALUES ?functionRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/39e08271-68db-4282-897f-5cba88c71862> # Algemeen directeur
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?functionRole), " 2025")) AS ?functionUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursfuncties/", ?functionUuid)) AS ?function)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime lblodlg:heeftBestuursfunctie ?function .
?function a lblodlg:Bestuursfunctie , org:Post ;
mu:uuid ?functionUuid ;
org:role ?functionRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/11f0af9e-016c-4e0b-983a-d8bc73804abc> . # Adjunct-algemeen directeur
}
VALUES ?functionRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f7b4e17b-6f4e-48e7-a558-bce61669f59a> # Adjunct algemeen directeur
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?functionRole), " 2025")) AS ?functionUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursfuncties/", ?functionUuid)) AS ?function)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime lblodlg:heeftBestuursfunctie ?function .
?function a lblodlg:Bestuursfunctie , org:Post ;
mu:uuid ?functionUuid ;
org:role ?functionRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/62644b9c-4514-41dd-a660-4c35257f2b35> . # Financieel directeur
}
VALUES ?functionRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/6d4cf4dd-2080-4752-8733-d02a036b2df0> # Financieel directeur
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?functionRole), " 2025")) AS ?functionUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursfuncties/", ?functionUuid)) AS ?function)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime lblodlg:heeftBestuursfunctie ?function .
?function a lblodlg:Bestuursfunctie , org:Post ;
mu:uuid ?functionUuid ;
org:role ?functionRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/ed40469e-3b6f-4f38-99ba-18912ee352b0> . # Adjunct-financieel directeur
}
VALUES ?functionRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/3200ffc1-bb72-4235-a81c-64aa578b0789> # Adjunct financieel directeur
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?functionRole), " 2025")) AS ?functionUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursfuncties/", ?functionUuid)) AS ?function)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime lblodlg:heeftBestuursfunctie ?function .
?function a lblodlg:Bestuursfunctie , org:Post ;
mu:uuid ?functionUuid ;
org:role ?functionRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/5ab19107-82d2-4273-a986-3da86fda050d> . # Griffier
}
VALUES ?functionRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/63195ec6-02cb-4f86-ac8e-29c5183a11dc> # Griffier
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?functionRole), " 2025")) AS ?functionUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursfuncties/", ?functionUuid)) AS ?function)
}

View File

@@ -0,0 +1,32 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime lblodlg:heeftBestuursfunctie ?function .
?function a lblodlg:Bestuursfunctie , org:Post ;
mu:uuid ?functionUuid ;
org:role ?functionRole .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?governingBodyInTime a besluit:Bestuursorgaan ;
generiek:isTijdspecialisatieVan ?governingBody ;
mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime .
?governingBody org:classification <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/3e9f22c1-0d35-445b-8a37-494addedf2d8> . # Financieel beheerder
}
VALUES ?functionRole {
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/b213c870-c762-4e39-9f78-3abdeda4b64a> # Financieel beheerder
}
BIND(SHA256(CONCAT(STR(?governingBody), STR(?governingBodyInTime), STR(?functionRole), " 2025")) AS ?functionUuid)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursfuncties/", ?functionUuid)) AS ?function)
}