diff --git a/config/delta-producer/organizations/export.json b/config/delta-producer/organizations/export.json index b026ee5..213ee92 100644 --- a/config/delta-producer/organizations/export.json +++ b/config/delta-producer/organizations/export.json @@ -228,7 +228,8 @@ "http://www.w3.org/ns/org#hasPost", "http://www.w3.org/ns/org#linkedTo", "http://www.w3.org/ns/org#hasSubOrganization", - "http://data.lblod.info/vocabularies/erediensten/typeEredienst" + "http://data.lblod.info/vocabularies/erediensten/typeEredienst", + "http://www.w3.org/ns/org#classification" ] }, { diff --git a/config/delta-producer/public/export.json b/config/delta-producer/public/export.json index f6233c8..5c5de6e 100644 --- a/config/delta-producer/public/export.json +++ b/config/delta-producer/public/export.json @@ -144,6 +144,7 @@ "http://www.w3.org/2004/02/skos/core#altLabel", "http://www.w3.org/ns/org#linkedTo", "http://data.lblod.info/vocabularies/erediensten/typeEredienst", + "http://www.w3.org/ns/org#classification", "http://www.w3.org/ns/adms#identifier" ] }, diff --git a/config/delta-producer/worship-posts/export.json b/config/delta-producer/worship-posts/export.json index 28eef61..3c11065 100644 --- a/config/delta-producer/worship-posts/export.json +++ b/config/delta-producer/worship-posts/export.json @@ -131,6 +131,7 @@ "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", "http://www.w3.org/ns/adms#identifier" ] }, diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160204-timed-governing-bodies-gemeente-2025.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160204-timed-governing-bodies-gemeente-2025.sparql new file mode 100644 index 0000000..deefd6e --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160204-timed-governing-bodies-gemeente-2025.sparql @@ -0,0 +1,60 @@ +PREFIX besluit: +PREFIX mu: +PREFIX generiek: +PREFIX mandaat: +PREFIX skos: +PREFIX org: +PREFIX regorg: + +INSERT { + GRAPH { + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + # Note: for municipalities and provinces the graphs differ, splitting this + # WHERE clause in two GRAPH clauses simplifies the generation of these + # migrations. + GRAPH { + ?organization mu:uuid ?organizationUuid ; + org:classification . # Gemeente + } + + GRAPH { + ?governingBody besluit:bestuurt ?organization ; + org:classification ?governingBodyClassification . + + # Only active organizations should get new timed governing bodies + ?organization regorg:orgStatus . # Actief (Eng. Active) + } + + FILTER ( + ?organization + NOT IN + ( # Beveren + , # Borgloon + , # Borsbeek + , # De Pinte + , # Galmaarden + , # Gooik + , # Herne + , # Hoeselt + , # Kortessem + , # Kruibeke + , # Melle + , # Merelbeke + , # Meulebeke + , # Moerbeke + , # Nazareth + , # Ruiselede + , # Tessenderlo + , # Wachtebeke + , # Zwijndrecht + ) + ) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160205-timed-governing-bodies-ocmw-2025.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160205-timed-governing-bodies-ocmw-2025.sparql new file mode 100644 index 0000000..8995b56 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160205-timed-governing-bodies-ocmw-2025.sparql @@ -0,0 +1,60 @@ +PREFIX besluit: +PREFIX mu: +PREFIX generiek: +PREFIX mandaat: +PREFIX skos: +PREFIX org: +PREFIX regorg: + +INSERT { + GRAPH { + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + # Note: for municipalities and provinces the graphs differ, splitting this + # WHERE clause in two GRAPH clauses simplifies the generation of these + # migrations. + GRAPH { + ?organization mu:uuid ?organizationUuid ; + org:classification . # OCMW + } + + GRAPH { + ?governingBody besluit:bestuurt ?organization ; + org:classification ?governingBodyClassification . + + # Only active organizations should get new timed governing bodies + ?organization regorg:orgStatus . # Actief (Eng. Active) + } + + FILTER ( + ?organization + NOT IN + ( # Beveren + , # Borgloon + , # Borsbeek + , # De Pinte + , # Galmaarden + , # Gooik + , # Herne + , # Hoeselt + , # Kortessem + , # Kruibeke + , # Melle + , # Merelbeke + , # Meulebeke + , # Moerbeke + , # Nazareth + , # Ruiselede + , # Tessenderlo + , # Wachtebeke + , # Zwijndrecht + ) + ) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160206-timed-governing-bodies-district-2025.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160206-timed-governing-bodies-district-2025.sparql new file mode 100644 index 0000000..1c27560 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160206-timed-governing-bodies-district-2025.sparql @@ -0,0 +1,35 @@ +PREFIX besluit: +PREFIX mu: +PREFIX generiek: +PREFIX mandaat: +PREFIX skos: +PREFIX org: +PREFIX regorg: + +INSERT { + GRAPH { + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + # Note: for municipalities and provinces the graphs differ, splitting this + # WHERE clause in two GRAPH clauses simplifies the generation of these + # migrations. + GRAPH { + ?organization mu:uuid ?organizationUuid ; + org:classification . # District + } + + GRAPH { + ?governingBody besluit:bestuurt ?organization ; + org:classification ?governingBodyClassification . + + # Only active organizations should get new timed governing bodies + ?organization regorg:orgStatus . # Actief (Eng. Active) + } + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160207-timed-governing-bodies-provincie-2025.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160207-timed-governing-bodies-provincie-2025.sparql new file mode 100644 index 0000000..074f97d --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160207-timed-governing-bodies-provincie-2025.sparql @@ -0,0 +1,35 @@ +PREFIX besluit: +PREFIX mu: +PREFIX generiek: +PREFIX mandaat: +PREFIX skos: +PREFIX org: +PREFIX regorg: + +INSERT { + GRAPH { + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + # Note: for municipalities and provinces the graphs differ, splitting this + # WHERE clause in two GRAPH clauses simplifies the generation of these + # migrations. + GRAPH { + ?organization mu:uuid ?organizationUuid ; + org:classification . # Provincie + } + + GRAPH { + ?governingBody besluit:bestuurt ?organization ; + org:classification ?governingBodyClassification . + + # Only active organizations should get new timed governing bodies + ?organization regorg:orgStatus . # Actief (Eng. Active) + } + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160208-add-missing-governing-bodies-merged-ocmw-beveren_kruibeke_zwijndrecht.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160208-add-missing-governing-bodies-merged-ocmw-beveren_kruibeke_zwijndrecht.sparql new file mode 100644 index 0000000..e529eae --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160208-add-missing-governing-bodies-merged-ocmw-beveren_kruibeke_zwijndrecht.sparql @@ -0,0 +1,113 @@ +PREFIX mu: +PREFIX org: +PREFIX besluit: +PREFIX mandaat: +PREFIX generiek: + +# Algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " beveren_kruibeke_zwijndrecht") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/39854196-f214-4688-87a1-d6ad12baa2fa", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " beveren_kruibeke_zwijndrecht") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/11f0af9e-016c-4e0b-983a-d8bc73804abc", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " beveren_kruibeke_zwijndrecht") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/62644b9c-4514-41dd-a660-4c35257f2b35", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " beveren_kruibeke_zwijndrecht") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/ed40469e-3b6f-4f38-99ba-18912ee352b0", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160209-add-missing-governing-bodies-merged-ocmw-merelbeke_melle.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160209-add-missing-governing-bodies-merged-ocmw-merelbeke_melle.sparql new file mode 100644 index 0000000..948f5c9 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160209-add-missing-governing-bodies-merged-ocmw-merelbeke_melle.sparql @@ -0,0 +1,113 @@ +PREFIX mu: +PREFIX org: +PREFIX besluit: +PREFIX mandaat: +PREFIX generiek: + +# Algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " merelbeke_melle") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/39854196-f214-4688-87a1-d6ad12baa2fa", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " merelbeke_melle") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/11f0af9e-016c-4e0b-983a-d8bc73804abc", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " merelbeke_melle") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/62644b9c-4514-41dd-a660-4c35257f2b35", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " merelbeke_melle") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/ed40469e-3b6f-4f38-99ba-18912ee352b0", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160210-add-missing-governing-bodies-merged-ocmw-nazareth_de_pinte.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160210-add-missing-governing-bodies-merged-ocmw-nazareth_de_pinte.sparql new file mode 100644 index 0000000..bd4b829 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160210-add-missing-governing-bodies-merged-ocmw-nazareth_de_pinte.sparql @@ -0,0 +1,113 @@ +PREFIX mu: +PREFIX org: +PREFIX besluit: +PREFIX mandaat: +PREFIX generiek: + +# Algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " nazareth_de_pinte") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/39854196-f214-4688-87a1-d6ad12baa2fa", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " nazareth_de_pinte") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/11f0af9e-016c-4e0b-983a-d8bc73804abc", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " nazareth_de_pinte") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/62644b9c-4514-41dd-a660-4c35257f2b35", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " nazareth_de_pinte") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/ed40469e-3b6f-4f38-99ba-18912ee352b0", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160211-add-missing-governing-bodies-merged-ocmw-pajottegem.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160211-add-missing-governing-bodies-merged-ocmw-pajottegem.sparql new file mode 100644 index 0000000..0672642 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829160211-add-missing-governing-bodies-merged-ocmw-pajottegem.sparql @@ -0,0 +1,113 @@ +PREFIX mu: +PREFIX org: +PREFIX besluit: +PREFIX mandaat: +PREFIX generiek: + +# Algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " pajottegem") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/39854196-f214-4688-87a1-d6ad12baa2fa", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-algemeen directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " pajottegem") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/11f0af9e-016c-4e0b-983a-d8bc73804abc", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " pajottegem") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/62644b9c-4514-41dd-a660-4c35257f2b35", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} +; +# Adjunct-financieel directeur +INSERT { + GRAPH { + # Abstract governing body + ?governingBody a besluit:Bestuursorgaan ; + mu:uuid ?governingBodyUuid ; + skos:prefLabel ?governingBodyLabel ; + besluit:bestuurt ; + org:classification . + + # Timed specialisation for governing body + ?timedGoverningBody a besluit:Bestuursorgaan ; + mu:uuid ?timedGoverningBodyUuid ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } +} WHERE { + skos:prefLabel ?classificationLabel . + BIND(CONCAT(?classificationLabel, " pajottegem") AS ?governingBodyLabel) + + BIND(SHA256(CONCAT("http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/ed40469e-3b6f-4f38-99ba-18912ee352b0", " 2025 ", STR())) AS ?governingBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?governingBodyUuid))) AS ?governingBody) + + BIND(SHA256(CONCAT(STR(?governingBodyClassification), " 2025 ", STR(?governingBody), STR(?organizationUuid))) AS ?timedGoverningBodyUuid) + BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", STR(?timedGoverningBodyUuid))) AS ?timedGoverningBody) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171504-mandates-burgemeester.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171504-mandates-burgemeester.sparql new file mode 100644 index 0000000..a67f63d --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171504-mandates-burgemeester.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Burgemeester + } + + VALUES ?mandateRole { + # Burgemeester + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171505-mandates-gemeenteraad.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171505-mandates-gemeenteraad.sparql new file mode 100644 index 0000000..4be1626 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171505-mandates-gemeenteraad.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Gemeenteraad + } + + VALUES ?mandateRole { + # Voorzitter van de gemeenteraad + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171506-mandates-college_van_burgemeester_en_schepenen.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171506-mandates-college_van_burgemeester_en_schepenen.sparql new file mode 100644 index 0000000..cd5cc55 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171506-mandates-college_van_burgemeester_en_schepenen.sparql @@ -0,0 +1,67 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # College van Burgemeester en Schepenen + } + + VALUES ?mandateRole { + # Schepen + # 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 { + ?governingBodyInTime org:hasPost ?mandate . + } +} WHERE { + GRAPH { + + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # 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 . # Burgemeester + ?governingBodyInTimeOther a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBodyOther ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } + VALUES ?mandateRole { + # Burgemeester + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171507-mandates-voorzitter_van_het_bijzonder_comite_voor_de_sociale_dienst.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171507-mandates-voorzitter_van_het_bijzonder_comite_voor_de_sociale_dienst.sparql new file mode 100644 index 0000000..be0e4fe --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171507-mandates-voorzitter_van_het_bijzonder_comite_voor_de_sociale_dienst.sparql @@ -0,0 +1,31 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Voorzitter van het Bijzonder Comité voor de Sociale Dienst + } + + VALUES ?mandateRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171508-mandates-raad_voor_maatschappelijk_welzijn.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171508-mandates-raad_voor_maatschappelijk_welzijn.sparql new file mode 100644 index 0000000..2ef2736 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171508-mandates-raad_voor_maatschappelijk_welzijn.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Raad voor Maatschappelijk Welzijn + } + + VALUES ?mandateRole { + # Voorzitter van de Raad voor Maatschappelijk Welzijn + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171509-mandates-vast_bureau.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171509-mandates-vast_bureau.sparql new file mode 100644 index 0000000..353bf85 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171509-mandates-vast_bureau.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Vast Bureau + } + + VALUES ?mandateRole { + # Voorzitter van het Vast bureau + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171510-mandates-bijzonder_comite_voor_de_sociale_dienst.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171510-mandates-bijzonder_comite_voor_de_sociale_dienst.sparql new file mode 100644 index 0000000..63b86d4 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171510-mandates-bijzonder_comite_voor_de_sociale_dienst.sparql @@ -0,0 +1,65 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Bijzonder Comité voor de Sociale Dienst + } + + VALUES ?mandateRole { + # 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 { + ?governingBodyInTime org:hasPost ?mandate . + } +} WHERE { + GRAPH { + + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # 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 . # 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 { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171511-mandates-provincieraad.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171511-mandates-provincieraad.sparql new file mode 100644 index 0000000..30b8f39 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171511-mandates-provincieraad.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Provincieraad + } + + VALUES ?mandateRole { + # Voorzitter van de provincieraad + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171512-mandates-gouverneur.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171512-mandates-gouverneur.sparql new file mode 100644 index 0000000..d22bb98 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171512-mandates-gouverneur.sparql @@ -0,0 +1,31 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Gouverneur + } + + VALUES ?mandateRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171513-mandates-deputatie.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171513-mandates-deputatie.sparql new file mode 100644 index 0000000..33a976c --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171513-mandates-deputatie.sparql @@ -0,0 +1,31 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Deputatie + } + + VALUES ?mandateRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171514-mandates-districtsraad.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171514-mandates-districtsraad.sparql new file mode 100644 index 0000000..0e5df48 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171514-mandates-districtsraad.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Districtsraad + } + + VALUES ?mandateRole { + # Voorzitter van de districtsraad + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171515-mandates-districtsburgemeester.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171515-mandates-districtsburgemeester.sparql new file mode 100644 index 0000000..d8ce80c --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171515-mandates-districtsburgemeester.sparql @@ -0,0 +1,31 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Districtsburgemeester + } + + VALUES ?mandateRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171516-mandates-districtscollege.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171516-mandates-districtscollege.sparql new file mode 100644 index 0000000..32a2bd6 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171516-mandates-districtscollege.sparql @@ -0,0 +1,65 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: + +INSERT { + GRAPH { + ?governingBodyInTime org:hasPost ?mandate . + + ?mandate a mandaat:Mandaat , org:Post ; + mu:uuid ?mandateUuid ; + org:role ?mandateRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Districtscollege + } + + VALUES ?mandateRole { + # 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 { + ?governingBodyInTime org:hasPost ?mandate . + } +} WHERE { + GRAPH { + + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # 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 . # Districtsburgemeester + ?governingBodyInTimeOther a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBodyOther ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + } + VALUES ?mandateRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171539-functions-algemeen_directeur.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171539-functions-algemeen_directeur.sparql new file mode 100644 index 0000000..e740637 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171539-functions-algemeen_directeur.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: +PREFIX lblodlg: + +INSERT { + GRAPH { + ?governingBodyInTime lblodlg:heeftBestuursfunctie ?function . + + ?function a lblodlg:Bestuursfunctie , org:Post ; + mu:uuid ?functionUuid ; + org:role ?functionRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Algemeen directeur + } + + VALUES ?functionRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171540-functions-adjunct-algemeen_directeur.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171540-functions-adjunct-algemeen_directeur.sparql new file mode 100644 index 0000000..65ec5e6 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171540-functions-adjunct-algemeen_directeur.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: +PREFIX lblodlg: + +INSERT { + GRAPH { + ?governingBodyInTime lblodlg:heeftBestuursfunctie ?function . + + ?function a lblodlg:Bestuursfunctie , org:Post ; + mu:uuid ?functionUuid ; + org:role ?functionRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Adjunct-algemeen directeur + } + + VALUES ?functionRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171541-functions-financieel_directeur.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171541-functions-financieel_directeur.sparql new file mode 100644 index 0000000..2f02af9 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171541-functions-financieel_directeur.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: +PREFIX lblodlg: + +INSERT { + GRAPH { + ?governingBodyInTime lblodlg:heeftBestuursfunctie ?function . + + ?function a lblodlg:Bestuursfunctie , org:Post ; + mu:uuid ?functionUuid ; + org:role ?functionRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Financieel directeur + } + + VALUES ?functionRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171542-functions-adjunct-financieel_directeur.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171542-functions-adjunct-financieel_directeur.sparql new file mode 100644 index 0000000..febd76a --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171542-functions-adjunct-financieel_directeur.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: +PREFIX lblodlg: + +INSERT { + GRAPH { + ?governingBodyInTime lblodlg:heeftBestuursfunctie ?function . + + ?function a lblodlg:Bestuursfunctie , org:Post ; + mu:uuid ?functionUuid ; + org:role ?functionRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Adjunct-financieel directeur + } + + VALUES ?functionRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171543-functions-griffier.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171543-functions-griffier.sparql new file mode 100644 index 0000000..ee75eb1 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171543-functions-griffier.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: +PREFIX lblodlg: + +INSERT { + GRAPH { + ?governingBodyInTime lblodlg:heeftBestuursfunctie ?function . + + ?function a lblodlg:Bestuursfunctie , org:Post ; + mu:uuid ?functionUuid ; + org:role ?functionRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Griffier + } + + VALUES ?functionRole { + # 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) +} diff --git a/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171544-functions-financieel_beheerder.sparql b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171544-functions-financieel_beheerder.sparql new file mode 100644 index 0000000..c3b5838 --- /dev/null +++ b/config/migrations/2024/20240828104739-governing-bodies-mandates-2025-legislation/20240829171544-functions-financieel_beheerder.sparql @@ -0,0 +1,32 @@ +PREFIX org: +PREFIX mandaat: +PREFIX mu: +PREFIX besluit: +PREFIX generiek: +PREFIX lblodlg: + +INSERT { + GRAPH { + ?governingBodyInTime lblodlg:heeftBestuursfunctie ?function . + + ?function a lblodlg:Bestuursfunctie , org:Post ; + mu:uuid ?functionUuid ; + org:role ?functionRole . + } +} WHERE { + GRAPH { + ?governingBodyInTime a besluit:Bestuursorgaan ; + generiek:isTijdspecialisatieVan ?governingBody ; + mandaat:bindingStart "2025-01-01T00:00:00"^^xsd:dateTime . + + ?governingBody org:classification . # Financieel beheerder + } + + VALUES ?functionRole { + # 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) +} diff --git a/config/migrations/2024/20240903164444-remove-duplicate-uri-for-ibeg.sparql b/config/migrations/2024/20240903164444-remove-duplicate-uri-for-ibeg.sparql new file mode 100644 index 0000000..7974cec --- /dev/null +++ b/config/migrations/2024/20240903164444-remove-duplicate-uri-for-ibeg.sparql @@ -0,0 +1,91 @@ +# Delete old bestuursorganen + +DELETE { + GRAPH ?g { + ?bestuursorganen ?p ?o . + } +} +WHERE { + VALUES ?bestuursorganen { + + + + + + } + + GRAPH ?g { + ?bestuursorganen ?p ?o . + } +} + +; + +# Remove associated properties for one of the bestuursorganen in tijd + +DELETE { + GRAPH ?g { + ?post ?p ?o . + } +} +WHERE { + VALUES ?bestuursorgaanInTijd { + + } + + GRAPH ?g { + ?bestuursorgaanInTijd ?post . + ?post ?p ?o . + } +} + +; + +# Delete old bestuursorganen in tijd + +DELETE { + GRAPH ?g { + ?bestuursorgaanInTijd ?p ?o . + } +} +WHERE { + VALUES ?bestuursorgaanInTijd { + + + + + + } + + GRAPH ?g { + ?bestuursorgaanInTijd ?p ?o . + } +} + +; + +# Remove wrong URI + reverse properties + +DELETE { + GRAPH ?g { + ?p ?o . + } +} +WHERE { + GRAPH ?g { + ?p ?o . + } +} + +; + +DELETE { + GRAPH ?g { + ?s ?p . + } +} +WHERE { + GRAPH ?g { + ?s ?p . + } +}