Compare commits

..

1 Commits

Author SHA1 Message Date
Claire Lovisa
a796c83826 Merge pull request #244 from lblod/feature/extend-public-producer
Feature/extend public producer
2023-03-21 16:52:31 +01:00
165 changed files with 1305 additions and 92771 deletions

4
.gitignore vendored
View File

@@ -1,7 +1,6 @@
# Virtuoso files /data/db
/data/db.bck/**
/data/db/*
/data/db/virtuoso.ini
!/data/db/virtuoso.ini
!/data/db/toLoad
!/data/db/toLoad/*
/data/files/*
@@ -11,7 +10,6 @@ docker-compose.override.yml
*.iml
/data/elasticsearch/**
/data/ldes-feed/*
/tmp
.DS_STORE
.env

View File

@@ -8,86 +8,70 @@ alias Acl.GroupSpec.GraphCleanup, as: GraphCleanup
defmodule Acl.UserGroups.Config do
@error_type [
"https://docs.oasis-open-projects.org/oslc-op/core/v3.0/os/core-vocab.html#Error"
]
@error_type [
"https://docs.oasis-open-projects.org/oslc-op/core/v3.0/os/core-vocab.html#Error"
]
@worship_type [
"http://data.lblod.info/vocabularies/erediensten/EredienstMandataris",
@protected_resource_type [
"http://www.w3.org/ns/org#Organization",
"http://data.vlaanderen.be/ns/besluit#Besluit",
"https://data.vlaanderen.be/ns/besluitvorming#Beslissingsactiviteit",
"http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst",
"http://data.lblod.info/vocabularies/erediensten/EredienstBestuurseenheid",
"http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
"http://data.lblod.info/vocabularies/erediensten/VoorwaardenBedienaar",
"https://data.vlaanderen.be/ns/persoon#Geboorte",
"http://mu.semte.ch/vocabularies/ext/GeslachtCode",
"http://data.lblod.info/vocabularies/erediensten/PositieBedienaar",
"http://www.w3.org/ns/adms#Identifier",
"https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator",
"http://www.w3.org/ns/org#ChangeEvent",
"http://data.lblod.info/vocabularies/erediensten/BetrokkenLokaleBesturen",
"http://data.lblod.info/vocabularies/erediensten/VerbondenJuridischeStructuren",
"http://www.w3.org/ns/prov#Location",
"http://www.w3.org/ns/org#Site",
"http://www.w3.org/ns/locn#Address",
"http://www.w3.org/ns/person#Person",
"http://data.vlaanderen.be/ns/mandaat#Mandaat",
"http://data.vlaanderen.be/ns/mandaat#Mandataris",
"http://data.lblod.info/vocabularies/leidinggevenden/FunctionarisStatusCode",
"http://data.lblod.info/vocabularies/leidinggevenden/Functionaris",
"http://data.lblod.info/vocabularies/erediensten/EredienstMandataris",
"http://schema.org/ContactPoint",
"http://data.lblod.info/vocabularies/leidinggevenden/Bestuursfunctie",
"http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst",
"http://data.lblod.info/vocabularies/erediensten/RepresentatiefOrgaan",
]
@public_type [
"http://www.w3.org/ns/org#Role",
"http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"http://xmlns.com/foaf/0.1/Person",
"http://xmlns.com/foaf/0.1/OnlineAccount",
"http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject",
"http://www.w3.org/ns/dcat#Dataset",
"http://www.w3.org/ns/dcat#Distribution",
"http://www.w3.org/ns/dcat#Catalog",
"http://mu.semte.ch/vocabularies/ext/GeslachtCode",
"http://data.lblod.info/vocabularies/leidinggevenden/FunctionarisStatusCode",
"http://www.w3.org/ns/org#Post",
"http://data.lblod.info/vocabularies/contacthub/AgentInPositie",
"http://lblod.data.gift/vocabularies/organisatie/OrganisatieStatusCode",
"http://lblod.data.gift/vocabularies/organisatie/BestuursfunctieCode",
"http://lblod.data.gift/vocabularies/organisatie/BestuursorgaanClassificatieCode",
"http://lblod.data.gift/vocabularies/organisatie/MandatarisStatusCode",
"http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode",
"http://lblod.data.gift/vocabularies/organisatie/TypeEredienst",
"http://www.w3.org/2004/02/skos/core#ConceptScheme",
"http://lblod.data.gift/vocabularies/organisatie/BedienaarFinanceringCode",
"http://www.w3.org/2004/02/skos/core#Concept",
"http://publications.europa.eu/ontology/euvoc#Country",
"http://lblod.data.gift/vocabularies/organisatie/TypeVestiging",
"http://lblod.data.gift/vocabularies/organisatie/HelftVerkiezing",
"http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis",
"http://lblod.data.gift/vocabularies/organisatie/VeranderingsgebeurtenisResultaat",
"http://lblod.data.gift/vocabularies/organisatie/MandatarisStatusCode",
"http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode",
"http://lblod.data.gift/vocabularies/organisatie/TypeBetrokkenheid",
"http://lblod.data.gift/vocabularies/organisatie/VoorwaardenBedienaarCriterium",
"http://lblod.data.gift/vocabularies/organisatie/BedienaarCriteriumBewijsstuk",
"http://lblod.data.gift/vocabularies/organisatie/EredienstBeroepen",
"http://lblod.data.gift/vocabularies/organisatie/Rechtsvormtype"
]
@org_type [
"http://www.w3.org/ns/org#Organization",
"http://data.vlaanderen.be/ns/besluit#Besluit",
"https://data.vlaanderen.be/ns/besluitvorming#Beslissingsactiviteit",
"http://www.w3.org/ns/org#Site",
"http://www.w3.org/ns/locn#Address",
"http://www.w3.org/ns/person#Person",
"http://schema.org/ContactPoint",
"http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"http://www.w3.org/ns/adms#Identifier",
"https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator",
"http://data.vlaanderen.be/ns/mandaat#Mandaat",
"http://data.vlaanderen.be/ns/mandaat#Mandataris",
"http://data.lblod.info/vocabularies/leidinggevenden/Functionaris",
"http://data.lblod.info/vocabularies/leidinggevenden/Bestuursfunctie",
"http://lblod.data.gift/vocabularies/organisatie/VeranderingsgebeurtenisResultaat",
"http://www.w3.org/ns/org#Post",
"http://www.w3.org/ns/org#ChangeEvent",
"http://data.lblod.info/vocabularies/contacthub/AgentInPositie"
]
@shared_protected_type [
"http://www.w3.org/ns/prov#Location",
"http://lblod.data.gift/vocabularies/organisatie/BedienaarFinanceringCode",
"http://lblod.data.gift/vocabularies/organisatie/TypeVestiging",
"http://lblod.data.gift/vocabularies/organisatie/Rechtsvormtype",
"http://www.w3.org/2004/02/skos/core#ConceptScheme",
"http://www.w3.org/2004/02/skos/core#Concept",
"http://xmlns.com/foaf/0.1/Image",
"http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject"
]
"http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject",
"http://publications.europa.eu/ontology/euvoc#Country"
]
defp access_by_role( group_string ) do
%AccessByQuery{
# vars: ["session_group","session_role"], todo we might have to create multiple graph depending on role
vars: [],
vars: [],
query: sparql_query_for_access_role( group_string ) }
end
@@ -96,88 +80,48 @@ defmodule Acl.UserGroups.Config do
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
SELECT distinct ?session_group ?session_role WHERE {
<SESSION_ID> ext:sessionGroup/mu:uuid ?session_group;
ext:activeSessionRole ?session_role.
ext:sessionRole ?session_role.
FILTER( ?session_role = \"#{group_string}\" )
}"
end
def user_groups do
[
%GroupSpec{
%GroupSpec{
name: "acmidm-lezer",
useage: [:read],
access: access_by_role( "ABBOrganisatiePortaalGebruiker-lezer" ),
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/administrative-unit",
graph: "http://mu.semte.ch/graphs/organisatieportaal",
constraint: %ResourceConstraint{
resource_types: @org_type
resource_types: @protected_resource_type
}
}
]
},
%GroupSpec{
%GroupSpec{
name: "acmidm-editeerder",
useage: [:read, :write, :read_for_write],
access: access_by_role( "ABBOrganisatiePortaalGebruiker-editeerder" ),
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/administrative-unit",
graph: "http://mu.semte.ch/graphs/organisatieportaal",
constraint: %ResourceConstraint{
resource_types: @org_type ++ @error_type
resource_types: @protected_resource_type ++ @error_type
}
}
]
},
%GroupSpec{
%GroupSpec{
name: "acmidm-beheerder",
useage: [:read, :write, :read_for_write],
access: access_by_role( "ABBOrganisatiePortaalGebruiker-beheerder" ),
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/administrative-unit",
graph: "http://mu.semte.ch/graphs/organisatieportaal",
constraint: %ResourceConstraint{
resource_types: @org_type ++ @error_type
}
}
]
},
%GroupSpec{
name: "acmidm-worship-lezer",
useage: [:read],
access: access_by_role( "ABBOrganisatiePortaalErediensten-lezer" ),
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/worship-service",
constraint: %ResourceConstraint{
resource_types: @org_type ++ @worship_type
}
}
]
},
%GroupSpec{
name: "acmidm-worship-editeerder",
useage: [:read, :write, :read_for_write],
access: access_by_role( "ABBOrganisatiePortaalErediensten-editeerder" ),
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/worship-service",
constraint: %ResourceConstraint{
resource_types: @org_type ++ @error_type ++ @worship_type
}
}
]
},
%GroupSpec{
name: "acmidm-worship-beheerder",
useage: [:read, :write, :read_for_write],
access: access_by_role( "ABBOrganisatiePortaalErediensten-beheerder" ),
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/worship-service",
constraint: %ResourceConstraint{
resource_types: @org_type ++ @error_type ++ @worship_type
resource_types: @protected_resource_type ++ @error_type
}
}
]
@@ -186,21 +130,19 @@ defmodule Acl.UserGroups.Config do
name: "public",
useage: [:read],
access: %AlwaysAccessible{},
graphs: [
%GraphSpec{
graph: "http://mu.semte.ch/graphs/public",
graphs: [ %GraphSpec{
graph: "http://mu.semte.ch/graphs/public", # mock login only
constraint: %ResourceConstraint{
resource_types: @public_type
}
},
%GraphSpec{
graph: "http://mu.semte.ch/graphs/shared",
constraint: %ResourceConstraint{
resource_types: @shared_protected_type ++ @org_type
}
}
]},
resource_types: [
"http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"http://xmlns.com/foaf/0.1/Person",
"http://xmlns.com/foaf/0.1/OnlineAccount",
"http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject",
"http://www.w3.org/ns/dcat#Dataset",
"http://www.w3.org/ns/dcat#Distribution",
"http://www.w3.org/ns/dcat#Catalog"
]
} }]},
# // CLEANUP
#

View File

@@ -0,0 +1,54 @@
{
"export": [
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#scopeNote"
]
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#altLabel",
"http://data.vlaanderen.be/ns/besluit#werkingsgebied",
"http://www.w3.org/ns/org#classification"
]
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://data.vlaanderen.be/ns/besluit#bestuurt",
"http://www.w3.org/ns/org#classification",
"http://data.vlaanderen.be/ns/mandaat#bindingEinde",
"http://data.vlaanderen.be/ns/mandaat#bindingStart",
"https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuursorgaanClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#scopeNote"
]
}
]
}

View File

@@ -1,4 +1,20 @@
{
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/administrative-units": {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/AdministrativeUnitsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/administrative-units",
"fileBaseName": "dump-administrative-units",
"targetDcatGraph": "http://mu.semte.ch/graphs/public",
"targetFilesGraph": "http://mu.semte.ch/graphs/public",
"cleanupOldDumps": true
},
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units": {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/AdministrativeUnitsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/administrative-units",
"fileBaseName": "dump-administrative-units",
"targetDcatGraph": "http://mu.semte.ch/graphs/public",
"targetFilesGraph": "http://mu.semte.ch/graphs/public",
"cleanupOldDumps": true
},
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/organizations": {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/OrganizationsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/organizations",
@@ -31,7 +47,7 @@
"targetFilesGraph": "http://mu.semte.ch/graphs/public",
"cleanupOldDumps": true
},
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts": {
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts" : {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/WorshipPostsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/worship-posts",
"fileBaseName": "dump-worship-posts",
@@ -39,7 +55,7 @@
"targetFilesGraph": "http://mu.semte.ch/graphs/public",
"cleanupOldDumps": true
},
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts": {
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts" : {
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/WorshipPostsCacheGraphDump",
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/worship-posts",
"fileBaseName": "dump-worship-posts",

View File

@@ -3,11 +3,9 @@
{
"type": "http://www.w3.org/ns/person#Person",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"properties": [
"http://xmlns.com/foaf/0.1/givenName",
"http://xmlns.com/foaf/0.1/familyName",
"https://data.vlaanderen.be/ns/persoon#gebruikteVoornaam",
@@ -18,7 +16,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/MandatarisStatusCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -28,8 +26,7 @@
"type": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://data.lblod.info/vocabularies/contacthub/startdatum",
@@ -49,7 +46,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/HelftVerkiezing",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -58,8 +55,7 @@
{
"type": "http://schema.org/ContactPoint",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://schema.org/email",
@@ -71,9 +67,7 @@
{
"type": "http://data.vlaanderen.be/ns/mandaat#Mandaat",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/ns/org#role",
@@ -84,7 +78,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuursfunctieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -93,7 +87,7 @@
{
"type": "http://www.w3.org/ns/org#Role",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -102,7 +96,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -111,7 +105,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeEredienst",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -121,8 +115,7 @@
"type": "http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel",
@@ -149,8 +142,7 @@
"type": "http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel",
@@ -174,8 +166,7 @@
"type": "http://data.lblod.info/vocabularies/erediensten/RepresentatiefOrgaan",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel",
@@ -196,9 +187,7 @@
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://data.vlaanderen.be/ns/mandaat#bindingEinde",
@@ -212,7 +201,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuursorgaanClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -221,8 +210,7 @@
{
"type": "http://data.lblod.info/vocabularies/erediensten/BetrokkenLokaleBesturen",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://data.lblod.info/vocabularies/erediensten/financieringspercentage",
@@ -233,9 +221,7 @@
{
"type": "http://www.w3.org/ns/adms#Identifier",
"graphsFilter": [
"http://mu.semte.ch/graphs/administrative-unit",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#notation",
@@ -245,9 +231,7 @@
{
"type": "https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator",
"graphsFilter": [
"http://mu.semte.ch/graphs/administrative-unit",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"https://data.vlaanderen.be/ns/generiek#lokaleIdentificator"
@@ -256,9 +240,7 @@
{
"type": "http://www.w3.org/ns/locn#Address",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"https://data.vlaanderen.be/ns/adres#Adresvoorstelling.huisnummer",
@@ -276,8 +258,7 @@
{
"type": "http://www.w3.org/ns/org#Site",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/ns/org#siteAddress",
@@ -288,8 +269,7 @@
{
"type": "http://www.w3.org/ns/org#ChangeEvent",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://purl.org/dc/terms/date",
@@ -302,7 +282,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -311,7 +291,7 @@
{
"type": "http://www.w3.org/2004/02/skos/core#Concept",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -320,7 +300,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/OrganisatieStatusCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -329,17 +309,16 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeBetrokkenheid",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
"type": "http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://data.lblod.info/vocabularies/contacthub/startdatum",
@@ -354,30 +333,26 @@
{
"type": "http://data.lblod.info/vocabularies/erediensten/VoorwaardenBedienaar",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://data.lblod.info/vocabularies/erediensten/voldaan",
"http://data.lblod.info/vocabularies/erediensten/criterium",
"http://data.lblod.info/vocabularies/erediensten/criteriumbewijsstuktype"
]
},
{
},{
"type": "http://publications.europa.eu/ontology/euvoc#Country",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2000/01/rdf-schema#label"
]
},
{
},{
"type": "http://data.lblod.info/vocabularies/erediensten/PositieBedienaar",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/ns/org#role",
@@ -389,7 +364,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/EredienstBeroepen",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -398,7 +373,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BedienaarFinanceringCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -407,7 +382,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/VoorwaardenBedienaarCriterium",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -416,7 +391,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BedienaarCriteriumBewijsstuk",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"
@@ -425,7 +400,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeVestiging",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://www.w3.org/2004/02/skos/core#prefLabel"

View File

@@ -5,8 +5,7 @@
"type": "http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/ns/org#classification",
@@ -36,8 +35,7 @@
"type": "http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/ns/org#classification",
@@ -64,9 +62,7 @@
"type": "http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/ns/org#classification",
@@ -99,8 +95,7 @@
{
"type": "http://data.lblod.info/vocabularies/erediensten/RepresentatiefOrgaan",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
@@ -113,8 +108,7 @@
{
"type": "http://data.lblod.info/vocabularies/erediensten/BetrokkenLokaleBesturen",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
@@ -126,8 +120,7 @@
{
"type": "http://data.lblod.info/vocabularies/erediensten/PositieBedienaar",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
@@ -138,14 +131,13 @@
{
"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"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^http://www.w3.org/ns/org#hasPrimarySite",
"http://www.w3.org/ns/org#classification",
"http://www.w3.org/2004/02/skos/core#inScheme"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
@@ -157,15 +149,14 @@
{
"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"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^https://data.vlaanderen.be/ns/organisatie#bestaatUit",
"^http://www.w3.org/ns/org#hasPrimarySite",
"http://www.w3.org/ns/org#classification",
"http://www.w3.org/2004/02/skos/core#inScheme"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
@@ -184,9 +175,7 @@
{
"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"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^http://www.w3.org/ns/org#siteAddress",
@@ -203,14 +192,13 @@
"http://xmlns.com/foaf/0.1/page",
"http://schema.org/email",
"http://schema.org/telephone"
]
},
{
"type": "http://www.w3.org/ns/adms#Identifier",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^http://www.w3.org/ns/adms#identifier",
@@ -223,24 +211,10 @@
"https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator"
]
},
{
"type": "http://www.w3.org/ns/adms#Identifier",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#notation",
"https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator"
],
"additionalFilter": "?ro <http://www.w3.org/ns/adms#identifier> ?subject ; a <http://data.lblod.info/vocabularies/erediensten/RepresentatiefOrgaan> ."
},
{
"type": "https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator",
@@ -253,21 +227,10 @@
"https://data.vlaanderen.be/ns/generiek#lokaleIdentificator"
]
},
{
"type": "https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"https://data.vlaanderen.be/ns/generiek#lokaleIdentificator"
],
"additionalFilter": "?ro <http://www.w3.org/ns/adms#identifier>/<https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?subject ; a <http://data.lblod.info/vocabularies/erediensten/RepresentatiefOrgaan> ."
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
@@ -279,26 +242,49 @@
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"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://data.vlaanderen.be/ns/besluit#bestuurt",
"http://www.w3.org/ns/org#classification",
"http://data.vlaanderen.be/ns/mandaat#bindingEinde",
"http://data.vlaanderen.be/ns/mandaat#bindingStart",
"http://data.vlaanderen.be/ns/besluit#bestuurt",
"http://www.w3.org/ns/org#classification",
"https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan",
"http://www.w3.org/ns/org#hasPost"
]
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/organisatieportaal"
],
"additionalFilter": "?subject (<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://www.w3.org/ns/org#classification>/<http://www.w3.org/2004/02/skos/core#inScheme>)|(<http://www.w3.org/ns/org#classification>/<http://www.w3.org/2004/02/skos/core#inScheme>) <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> ."
"pathToConceptScheme": [
"https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan",
"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://data.vlaanderen.be/ns/mandaat#bindingEinde",
"http://data.vlaanderen.be/ns/mandaat#bindingStart",
"http://data.vlaanderen.be/ns/besluit#bestuurt",
"http://www.w3.org/ns/org#classification",
"https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan",
"http://www.w3.org/ns/org#hasPost"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeEredienst",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
@@ -311,7 +297,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuursorgaanClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
@@ -324,9 +310,7 @@
{
"type": "http://www.w3.org/ns/org#ChangeEvent",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://data.lblod.info/vocabularies/contacthub/typeWijziging",
@@ -348,7 +332,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
@@ -361,7 +345,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/OrganisatieStatusCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
@@ -374,7 +358,7 @@
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeVestiging",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"http://www.w3.org/2004/02/skos/core#inScheme"
@@ -387,9 +371,7 @@
{
"type": "http://data.vlaanderen.be/ns/mandaat#Mandaat",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^http://www.w3.org/ns/org#hasPost",
@@ -405,9 +387,7 @@
{
"type": "http://data.lblod.info/vocabularies/leidinggevenden/Bestuursfunctie",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/administrative-unit"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"pathToConceptScheme": [
"^http://data.lblod.info/vocabularies/leidinggevenden/heeftBestuursfunctie",

View File

@@ -3,8 +3,7 @@
{
"type": "http://data.vlaanderen.be/ns/mandaat#Mandaat",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
@@ -12,283 +11,37 @@
],
"additionalFilter": "?orgaan <http://www.w3.org/ns/org#hasPost> ?subject ; <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid . ?bestuurseenheid a ?type. FILTER (?type IN (<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>, <http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>))"
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#altLabel",
"http://www.w3.org/ns/regorg#orgStatus",
"http://data.lblod.info/vocabularies/erediensten/typeEredienst",
"http://www.w3.org/ns/org#classification",
"http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor",
"http://www.w3.org/ns/org#hasPrimarySite",
"http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/adms#identifier",
"http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur"
],
"additionalFilter": "?subject <http://www.w3.org/ns/org#classification> ?bestuurClassification . FILTER (?bestuurClassification IN (<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>, <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>, <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/f9cac08a-13c1-49da-9bcb-f650b0604054>, <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86>))"
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#altLabel",
"http://www.w3.org/ns/regorg#orgStatus",
"http://data.lblod.info/vocabularies/erediensten/typeEredienst",
"http://www.w3.org/ns/org#classification",
"http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor",
"http://www.w3.org/ns/org#hasPrimarySite",
"http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/adms#identifier"
]
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#altLabel",
"http://www.w3.org/ns/regorg#orgStatus",
"http://data.lblod.info/vocabularies/erediensten/typeEredienst",
"http://www.w3.org/ns/org#classification",
"http://www.w3.org/ns/org#hasPrimarySite",
"http://www.w3.org/ns/org#hasSite",
"http://www.w3.org/ns/adms#identifier"
"http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor"
]
},
{
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
"strictTypeExport": "true",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://data.vlaanderen.be/ns/besluit#bestuurt",
"http://www.w3.org/ns/org#classification",
"http://data.vlaanderen.be/ns/mandaat#bindingEinde",
"http://data.vlaanderen.be/ns/mandaat#bindingStart",
"https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan",
"http://www.w3.org/ns/org#hasPost"
],
"additionalFilter": "?subject (<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt>/<http://www.w3.org/ns/org#classification>)|(<http://data.vlaanderen.be/ns/besluit#bestuurt>/<http://www.w3.org/ns/org#classification>) ?bestuurClassification . FILTER (?bestuurClassification IN (<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>, <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>, <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/f9cac08a-13c1-49da-9bcb-f650b0604054>, <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86>))"
"additionalFilter": "?subject <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid . ?bestuurseenheid a ?type. FILTER (?type IN (<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>, <http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>))"
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/PositieBedienaar",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
"http://mu.semte.ch/graphs/organisatieportaal"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/ns/org#role",
"http://data.lblod.info/vocabularies/erediensten/functie"
]
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/BetrokkenLokaleBesturen",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://data.lblod.info/vocabularies/erediensten/typebetrokkenheid",
"http://www.w3.org/ns/org#organization"
]
},
{
"type": "http://data.lblod.info/vocabularies/erediensten/RepresentatiefOrgaan",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"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/adms#identifier"
]
},
{
"type": "http://www.w3.org/ns/adms#Identifier",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#notation",
"https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator"
],
"additionalFilter": "?subject <http://www.w3.org/2004/02/skos/core#notation> \"KBO nummer\" ."
},
{
"type": "https://data.vlaanderen.be/ns/generiek#GestructureerdeIdentificator",
"graphsFilter": [
"http://mu.semte.ch/graphs/worship-service",
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/administrative-unit"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"https://data.vlaanderen.be/ns/generiek#lokaleIdentificator"
],
"additionalFilter": "?subject ^<https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator>/<http://www.w3.org/2004/02/skos/core#notation> \"KBO nummer\" ."
},
{
"type": "http://www.w3.org/ns/org#Site",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"https://data.vlaanderen.be/ns/organisatie#bestaatUit",
"http://data.lblod.info/vocabularies/erediensten/vestigingstype"
]
},
{
"type": "http://www.w3.org/ns/locn#Address",
"graphsFilter": [
"http://mu.semte.ch/graphs/shared",
"http://mu.semte.ch/graphs/worship-service"
],
"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",
"http://www.w3.org/ns/locn#fullAddress"
],
"additionalFilter": "?subject ^<https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?site. ?site a <http://www.w3.org/ns/org#Site>."
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#scopeNote"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuursorgaanClassificatieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel",
"http://www.w3.org/2004/02/skos/core#scopeNote"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeVestiging",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/OrganisatieStatusCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeBetrokkenheid",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/TypeEredienst",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/BestuursfunctieCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://lblod.data.gift/vocabularies/organisatie/EredienstBeroepen",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://mu.semte.ch/vocabularies/ext/GeslachtCode",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
},
{
"type": "http://publications.europa.eu/ontology/euvoc#Country",
"graphsFilter": [
"http://mu.semte.ch/graphs/public"
],
"properties": [
"http://mu.semte.ch/vocabularies/core/uuid",
"http://www.w3.org/2000/01/rdf-schema#label",
"http://www.w3.org/2004/02/skos/core#prefLabel"
]
}
]
}

View File

@@ -3,7 +3,7 @@ export default [
match: {
graph: {
type: "uri",
value: "http://mu.semte.ch/graphs/administrative-unit"
value: "http://mu.semte.ch/graphs/organisatieportaal"
}
},
callback: {
@@ -20,25 +20,7 @@ export default [
match: {
graph: {
type: "uri",
value: "http://mu.semte.ch/graphs/worship-service"
}
},
callback: {
url: 'http://search/update',
method: 'POST'
},
options: {
resourceFormat: "v0.0.1",
gracePeriod: 10000,
ignoreFromSelf: true
}
},
{
match: {
graph: {
type: "uri",
value: "http://mu.semte.ch/graphs/administrative-unit"
value: "http://mu.semte.ch/graphs/organisatieportaal"
}
},
callback: {
@@ -51,25 +33,6 @@ export default [
ignoreFromSelf: true
}
},
{
match: {
graph: {
type: "uri",
value: "http://mu.semte.ch/graphs/worship-service"
}
},
callback: {
url: 'http://resource/.mu/delta',
method: 'POST'
},
options: {
resourceFormat: "v0.0.1",
gracePeriod: 250,
ignoreFromSelf: true
}
},
{
match: {
predicate: {
@@ -85,7 +48,42 @@ export default [
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: ["http://redpencil.data.gift/id/concept/muScope/deltas/initialSync"]
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
match: {
},
callback: {
url: 'http://delta-producer-pub-graph-maintainer-administrative-units/delta',
method: 'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
}
},
{
match: {
graph: {
type: 'uri',
value: 'http://redpencil.data.gift/id/deltas/producer/administrative-units'
}
},
callback: {
url: 'http://delta-producer-json-diff-publisher-administrative-units/delta',
method: 'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
@@ -100,9 +98,27 @@ export default [
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
}
},
{
match: {
graph: {
type: 'uri',
value: 'http://redpencil.data.gift/id/deltas/producer/organizations'
}
},
callback: {
url: 'http://delta-producer-json-diff-publisher-organizations/delta',
method: 'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
@@ -117,9 +133,27 @@ export default [
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
}
},
{
match: {
graph: {
type: 'uri',
value: 'http://redpencil.data.gift/id/deltas/producer/public'
}
},
callback: {
url: 'http://delta-producer-json-diff-publisher-public/delta',
method: 'POST'
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
},
{
@@ -135,9 +169,9 @@ export default [
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: [
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
"http://redpencil.data.gift/id/concept/muScope/deltas/initialSync",
"http://redpencil.data.gift/id/concept/muScope/deltas/publicationGraphMaintenance"
]
}
},
{
@@ -159,58 +193,7 @@ export default [
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
ignoreFromSelf: true,
optOutMuScopeIds: ["http://redpencil.data.gift/id/concept/muScope/deltas/initialSync"]
}
},
/*
Commenting ldes rules until ready to go to qa/prod. In the meantime, we override the configuration on dev.
{
match: {
graph: {
type: 'uri',
value: 'http://mu.semte.ch/graphs/shared',
}
},
callback: {
url: 'http://ldes-delta-pusher/publish',
method: 'POST',
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
}
},
{
match: {
graph: {
type: 'uri',
value: 'http://mu.semte.ch/graphs/worship-service',
}
},
callback: {
url: 'http://ldes-delta-pusher/publish',
method: 'POST',
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
}
},
{
match: {
graph: {
type: 'uri',
value: 'http://mu.semte.ch/graphs/administrative-unit',
}
},
callback: {
url: 'http://ldes-delta-pusher/publish',
method: 'POST',
},
options: {
resourceFormat: 'v0.0.1',
gracePeriod: 1000,
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
}
}
*/
]

View File

@@ -1,4 +0,0 @@
{$SITE_ADDRESS}:443 {
reverse_proxy identifier:80
tls internal
}

View File

@@ -77,7 +77,7 @@ defmodule Dispatcher do
end
match "/administrative-units/*path", %{ accept: [:json], layer: :api} do
Proxy.forward conn, path, "http://resource/administrative-units/"
Proxy.forward conn, path, "http://cache/administrative-units/"
end
match "/administrative-unit-classification-codes/*path", %{ accept: [:json], layer: :api} do
@@ -85,7 +85,7 @@ defmodule Dispatcher do
end
match "/worship-administrative-units/*path", %{ accept: [:json], layer: :api} do
Proxy.forward conn, path, "http://resource/worship-administrative-units/"
Proxy.forward conn, path, "http://cache/worship-administrative-units/"
end
match "/worship-services/*path", %{ accept: [:json], layer: :api} do
@@ -220,14 +220,11 @@ defmodule Dispatcher do
###############
match "/accounts", %{ accept: [:json], layer: :api} do
Proxy.forward conn, [], "http://resource/accounts/"
Proxy.forward conn, [], "http://resource/accounts/"
end
match "/accounts/*path", %{ accept: [:json], layer: :api} do
Proxy.forward conn, path, "http://accountdetail/accounts/"
end
match "/active-role/*path", %{ accept: [:json], layer: :api} do
Proxy.forward conn, path, "http://roles/"
end
match "/groups/*path", %{ accept: [:json], layer: :api} do
Proxy.forward conn, path, "http://resource/groups/"
end
@@ -245,7 +242,7 @@ defmodule Dispatcher do
###############################################################
match "/search/*path", %{ accept: %{ json: true }, layer: :api_services} do
IO.puts("hey")
IO.puts("hey")
Proxy.forward conn, path, "http://search/"
end
@@ -265,36 +262,20 @@ defmodule Dispatcher do
forward conn, path, "http://adressenregister/"
end
match "/worship/person-information-updates/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-worship/person-information-updates"
end
match "/worship/person-information-requests/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-worship/person-information-requests"
end
match "/worship/person-information-ask/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-worship/person-information-ask/"
end
match "/worship/person-information-validate-ssn/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-worship/person-information-validate-ssn/"
end
match "/person-information-updates/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-unit/person-information-updates"
forward conn, path, "http://privacy/person-information-updates"
end
match "/person-information-requests/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-unit/person-information-requests"
forward conn, path, "http://privacy/person-information-requests"
end
match "/person-information-ask/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-unit/person-information-ask/"
forward conn, path, "http://privacy/person-information-ask/"
end
match "/person-information-validate-ssn/*path", %{ layer: :api_services, accept: %{ json: true } } do
forward conn, path, "http://privacy-unit/person-information-validate-ssn/"
forward conn, path, "http://privacy/person-information-validate-ssn/"
end
get "/uri-info/*path", %{ layer: :api_services, accept: %{ json: true } } do
@@ -305,10 +286,6 @@ defmodule Dispatcher do
forward conn, path, "http://construct-administrative-unit-relationships/create-relationships/"
end
get "/ldes/*path", %{ layer: :api_services } do
forward conn, path, "http://ldes-backend/"
end
#################################################################
# ERROR REPORT
#################################################################
@@ -326,7 +303,7 @@ defmodule Dispatcher do
end
get "/files/*path" , %{ layer: :api_services, accept: %{ json: true } } do
Proxy.forward conn, path, "http://resource/files/"
Proxy.forward conn, path, "http://cache/files/"
end
#################################################################
@@ -334,11 +311,20 @@ defmodule Dispatcher do
#################################################################
get "/datasets/*path", %{ layer: :api_services, accept: %{ json: true } } do
Proxy.forward conn, path, "http://resource/datasets/"
Proxy.forward conn, path, "http://cache/datasets/"
end
get "/distributions/*path", %{ layer: :api_services, accept: %{ json: true } } do
Proxy.forward conn, path, "http://resource/distributions/"
Proxy.forward conn, path, "http://cache/distributions/"
end
#################################################################
# DELTA: administrative-units
#################################################################
get "/sync/administrative-units/files/*path" do
Proxy.forward conn, path, "http://delta-producer-json-diff-file-publisher-administrative-units/files/"
end
#################################################################
@@ -346,7 +332,7 @@ defmodule Dispatcher do
#################################################################
get "/sync/organizations/files/*path" do
Proxy.forward conn, path, "http://delta-producer-pub-graph-maintainer-organizations/files/"
Proxy.forward conn, path, "http://delta-producer-json-diff-file-publisher-organizations/files/"
end
#################################################################
@@ -354,7 +340,7 @@ defmodule Dispatcher do
#################################################################
get "/sync/public/files/*path" do
Proxy.forward conn, path, "http://delta-producer-pub-graph-maintainer-public/files/"
Proxy.forward conn, path, "http://delta-producer-json-diff-publisher-public/files/"
end
#################################################################
@@ -369,6 +355,10 @@ defmodule Dispatcher do
# frontend layer
###############################################################
match "/authorization/callback/*_path", %{ accept: [:html], layer: :api } do
Proxy.forward conn, [], "http://frontend/torii/redirect.html"
end
match "/assets/*path", %{ layer: :api } do
Proxy.forward conn, path, "http://frontend/assets/"
end

View File

@@ -1,73 +0,0 @@
import { moveTriples } from "../support";
import { Changeset } from "../types";
import { query, sparqlEscapeUri } from 'mu';
export default async function dispatch(changesets: Changeset[]) {
for (const changeset of changesets) {
const subjects = new Set(changeset.inserts.map((insert) => insert.subject.value));
for (const subject of subjects) {
const { results: { bindings } } = await query(`
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX code: <http://telegraphis.net/ontology/measurement/code#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
CONSTRUCT {
?organization a org:Organization;
skos:prefLabel ?prefLabel;
adms:identifier ?identifier;
org:hasPrimarySite ?site.
?identifier skos:notation ?identifierLabel;
generiek:gestructureerdeIdentificator ?gestructureerdeIdentificator.
?gestructureerdeIdentificator generiek:lokaleIdentificator ?lokaleIdentificator.
?site org:siteAddress ?siteAddress.
?siteAddress ?p ?o.
} WHERE {
{
VALUES ?organization { ${sparqlEscapeUri(subject)} }
?organization a org:Organization;
skos:prefLabel ?prefLabel;
adms:identifier ?identifier;
org:hasPrimarySite ?site.
?identifier skos:notation ?identifierLabel;
generiek:gestructureerdeIdentificator ?gestructureerdeIdentificator.
?gestructureerdeIdentificator generiek:lokaleIdentificator ?lokaleIdentificator.
?site org:siteAddress ?siteAddress.
?siteAddress ?p ?o.
} UNION {
VALUES ?site { ${sparqlEscapeUri(subject)} }
?organization a org:Organization;
skos:prefLabel ?prefLabel;
adms:identifier ?identifier;
org:hasPrimarySite ?site.
?identifier skos:notation ?identifierLabel;
generiek:gestructureerdeIdentificator ?gestructureerdeIdentificator.
?gestructureerdeIdentificator generiek:lokaleIdentificator ?lokaleIdentificator.
?site org:siteAddress ?siteAddress.
?siteAddress ?p ?o.
} UNION {
VALUES ?siteAddress { ${sparqlEscapeUri(subject)} }
?organization a org:Organization;
skos:prefLabel ?prefLabel;
adms:identifier ?identifier;
org:hasPrimarySite ?site.
?identifier skos:notation ?identifierLabel;
generiek:gestructureerdeIdentificator ?gestructureerdeIdentificator.
?gestructureerdeIdentificator generiek:lokaleIdentificator ?lokaleIdentificator.
?site org:siteAddress ?siteAddress.
?siteAddress ?p ?o.
}
}
`);
if(bindings.length){
console.log('SUCCESS')
await moveTriples([
{
inserts: bindings.map(({ s, p, o}) => { return { subject: s, predicate: p, object: o} }),
}
])
}
}
}
}

View File

@@ -1,20 +1,18 @@
const BATCH_SIZE = parseInt(process.env.BATCH_SIZE) || 100;
const MU_CALL_SCOPE_ID_INITIAL_SYNC = process.env.MU_CALL_SCOPE_ID_INITIAL_SYNC || 'http://redpencil.data.gift/id/concept/muScope/deltas/consumer/initialSync';
const BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES = process.env.BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES == 'true' ? true : false;
const DIRECT_DATABASE_ENDPOINT = process.env.DIRECT_DATABASE_ENDPOINT || 'http://triplestore:8890/sparql';
const DIRECT_DATABASE_ENDPOINT = process.env.DIRECT_DATABASE_ENDPOINT || 'http://virtuoso:8890/sparql';
const MAX_DB_RETRY_ATTEMPTS = parseInt(process.env.MAX_DB_RETRY_ATTEMPTS || 5);
const MAX_REASONING_RETRY_ATTEMPTS = parseInt(process.env.MAX_REASONING_RETRY_ATTEMPTS || 5);
const SLEEP_BETWEEN_BATCHES = parseInt(process.env.SLEEP_BETWEEN_BATCHES || 1000);
const SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION = parseInt(process.env.SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION || 10000);
const SLEEP_TIME_AFTER_FAILED_DB_OPERATION = parseInt(process.env.SLEEP_TIME_AFTER_FAILED_DB_OPERATION || 60000);
const INGEST_GRAPH = process.env.INGEST_GRAPH || `http://mu.semte.ch/graphs/organisatieportaal`;
// Graphs
const TARGET_GRAPH = process.env.TARGET_GRAPH || `http://mu.semte.ch/graphs/administrative-unit`;
const LANDING_ZONE_GRAPH = process.env.DCR_LANDING_ZONE_GRAPH || `http://mu.semte.ch/graphs/landing-zone/leidinggevenden`;
// ENDPOINTS
const LANDING_ZONE_DATABASE = process.env.DCR_LANDING_ZONE_DATABASE || 'db';
const LANDING_ZONE_DATABASE_ENDPOINT = process.env.DCR_LANDING_ZONE_DATABASE_ENDPOINT || `http://${LANDING_ZONE_DATABASE}:8890/sparql`;
if (!process.env.FILE_SYNC_GRAPH)
throw `Expected 'FILE_SYNC_GRAPH' to be provided.`;
const FILE_SYNC_GRAPH = process.env.FILE_SYNC_GRAPH;
module.exports = {
BATCH_SIZE,
@@ -26,7 +24,6 @@ module.exports = {
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
LANDING_ZONE_GRAPH,
TARGET_GRAPH,
LANDING_ZONE_DATABASE_ENDPOINT
};
INGEST_GRAPH,
FILE_SYNC_GRAPH
};

View File

@@ -1,72 +0,0 @@
const PREFIXES = `
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>`
const contextConfig = {
addTypes: {
scope: 'all', // 'inserts, 'deletes', 'all' or none. To add rdf:type to subjects of inserts, deletes or both
exhausitive: false, // true or false: find all types for a subject, even if one is already present in delta
},
contextQueries: [
// Case Leidnggevenden
// They can be triggered when being inserted or when their link to a bestuursfunctie is added
{
trigger: { // subjectType or predicateValue
subjectType: "lblodlg:Functionaris"
},
queryTemplate: (subject) => `
${PREFIXES}
CONSTRUCT {
?functionaris org:holds ?bestuursfunctie ;
?p ?o .
?orgaanInTime lblodlg:heeftBestuursfunctie ?bestuursfunctie ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
} WHERE {
GRAPH <http://mu.semte.ch/graphs/landing-zone/leidinggevenden> {
VALUES ?functionaris { ${subject} }
?functionaris org:holds ?bestuursfunctie ;
?p ?o .
?orgaanInTime lblodlg:heeftBestuursfunctie ?bestuursfunctie ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
}
}`
},
{
trigger: {
predicateValue: "org:holds"
},
queryTemplate: (subject) => `
${PREFIXES}
CONSTRUCT {
?functionaris org:holds ?bestuursfunctie ;
?p ?o .
?orgaanInTime lblodlg:heeftBestuursfunctie ?bestuursfunctie ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
} WHERE {
GRAPH <http://mu.semte.ch/graphs/landing-zone/leidinggevenden> {
VALUES ?functionaris { ${subject} }
?functionaris org:holds ?bestuursfunctie ;
?p ?o .
?orgaanInTime lblodlg:heeftBestuursfunctie ?bestuursfunctie ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
}
}`
}
]
}
module.exports = {
contextConfig,
PREFIXES
};

View File

@@ -1,8 +1,14 @@
const {
transformStatements,
deleteFromTargetGraph,
insertIntoTargetGraph,
} = require('./util');
const { transformStatements, batchedDbUpdate, partition, deleteFromAllGraphs } = require('./util');
const { BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
INGEST_GRAPH,
FILE_SYNC_GRAPH
} = require('./config');
/**
* Dispatch the fetched information to a target graph.
@@ -20,66 +26,51 @@ const {
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, fetch } = lib;
let { termObjectChangeSets, termObjectChangeSetsWithContext } = data;
const { mu, muAuthSudo, fetch } = lib;
const { termObjectChangeSets } = data;
// Both arrays are the same length, so we can zip them together for easier processing
zippedChangeSets = termObjectChangeSets.map((o, i) => ({
original: o,
withContext: termObjectChangeSetsWithContext[i]
}));
for (let { deletes, inserts } of termObjectChangeSets) {
const deleteStatements = deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
const insertStatements = inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
console.log(`Received ${zippedChangeSets.length} change sets`)
for (let { original, withContext } of zippedChangeSets) {
let originalDeletes, originalInserts, insertsWithContext, deletesWithContext;
try {
originalInserts = original.inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
originalDeletes = original.deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
} catch (e) {
console.log(`Error while processing change set: ${e}`);
console.log(`Original change set: ${JSON.stringify(original)}`);
throw e;
if (deleteStatements.length) {
await transformStatements(fetch, deleteStatements).then(
transformedStatements => {
deleteFromAllGraphs(
muAuthSudo.updateSudo,
transformedStatements,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
);
}
)
}
// Extra context needed for mapping from DL to OP model and filtering based on type.
try {
insertsWithContext = withContext.inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
deletesWithContext = withContext.deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
} catch (e) {
console.log(`Error while processing change set with context: ${e}`);
console.log(`Change set with context: ${JSON.stringify(withContext)}`);
throw e;
}
if (originalDeletes.length) {
// Map deletes from DL to OP model
const transformedDeletes = await transformStatements(fetch, deletesWithContext);
if (!transformedDeletes.length) {
console.log(`Warn: Delete statements mapped to empty result.`);
console.log(`Input: ${deletesWithContext}`);
console.log(`Output: ${transformedDeletes}`);
} else {
await deleteFromTargetGraph(lib, transformedDeletes);
}
}
if (originalInserts.length) {
// Map inserts from DL to OP model
const transformedInserts = await transformStatements(fetch, insertsWithContext);
if (!transformedInserts.length) {
console.log(`Warn: Insert statements mapped to empty result.`);
console.log(`Input: ${insertsWithContext}`);
console.log(`Output: ${transformedInserts}`);
} else {
await insertIntoTargetGraph(lib, transformedInserts);
}
if (insertStatements.length) {
await transformStatements(fetch, insertStatements).then(
transformedStatements => {
batchedDbUpdate(
muAuthSudo.updateSudo,
INGEST_GRAPH,
transformedStatements,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
"INSERT"
);
}
)
}
}
}
module.exports = {
dispatch
};
};

View File

@@ -1,17 +1,14 @@
const { batchedDbUpdate, transformLandingZoneGraph } = require('./util');
const {
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
const { transformStatements, batchedDbUpdate, partition } = require('./util');
const { BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
TARGET_GRAPH,
LANDING_ZONE_GRAPH,
LANDING_ZONE_DATABASE_ENDPOINT
INGEST_GRAPH,
FILE_SYNC_GRAPH
} = require('./config');
const endpoint = BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES ? DIRECT_DATABASE_ENDPOINT : process.env.MU_SPARQL_ENDPOINT;
/**
@@ -28,58 +25,35 @@ const endpoint = BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES ? DIRECT_DATABASE_ENDPOINT
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo } = lib;
const { mu, muAuthSudo, fetch } = lib;
const { termObjects } = data;
// Steps:
// 1. Write the triples to the landing zone graph - withouth any mapping or filtering
// 2. One-time reasoning run with the full landing zone graph and write the results to the target graph (on-finish)
if (BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES) {
console.warn(`Service configured to skip MU_AUTH!`);
}
console.log(`Using ${endpoint} to insert triples`);
if (termObjects.length) {
const originalInsertTriples = termObjects.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
originalInsertTriples = termObjects.map(o => `${o.subject} ${o.predicate} ${o.object}.`)
await batchedDbUpdate(
muAuthSudo.updateSudo,
LANDING_ZONE_GRAPH,
originalInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
LANDING_ZONE_DATABASE_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
await transformStatements(fetch, originalInsertTriples).then(
transformedInsertTriples => {
batchedDbUpdate(
muAuthSudo.updateSudo,
INGEST_GRAPH,
transformedInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
)
}
)
}
}
async function onFinishInitialIngest(lib) {
const { muAuthSudo, fetch } = lib;
console.log(`!! On-finish triggered !!`);
const transformedInsertTriples = await transformLandingZoneGraph(fetch, endpoint);
console.log(`Transformed ${transformedInsertTriples.length} triples`);
await batchedDbUpdate(
muAuthSudo.updateSudo,
TARGET_GRAPH,
transformedInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
module.exports = {
dispatch,
onFinishInitialIngest
};
dispatch
};

View File

@@ -1,16 +1,9 @@
const {
MAX_REASONING_RETRY_ATTEMPTS,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
TARGET_GRAPH,
LANDING_ZONE_GRAPH,
BATCH_SIZE,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION
} = require('./config');
async function batchedDbUpdate(
muUpdate,
async function batchedDbUpdate(muUpdate,
graph,
triples,
extraHeaders,
@@ -44,6 +37,39 @@ ${batch}
}
}
async function deleteFromAllGraphs(muUpdate,
triples,
extraHeaders,
endpoint,
maxAttempts,
sleepBetweenBatches = 1000,
sleepTimeOnFail = 1000,
) {
for (const triple of triples) {
console.log(`Deleting a triple from all graphs in triplestore`);
const deleteCall = async () => {
await muUpdate(`
DELETE {
GRAPH ?g {
${triple}
}
} WHERE {
GRAPH ?g {
${triple}
}
}
`, extraHeaders, endpoint);
};
await operationWithRetry(deleteCall, 0, maxAttempts, sleepTimeOnFail);
console.log(`Sleeping before next query execution: ${sleepBetweenBatches}`);
await new Promise(r => setTimeout(r, sleepBetweenBatches));
}
}
async function operationWithRetry(callback,
attempt,
maxAttempts,
@@ -84,16 +110,18 @@ function partition(arr, fn) {
return { passes, fails };
}
/**
* Send triples to reasoning service for conversion
*
*/
async function transformTriples(fetch, triples, mapping) {
return await operationWithRetry(mainConversion(fetch, triples, mapping), 0,
function transformTriples(fetch, triples) {
return operationWithRetry(mainConversion(fetch, triples), 0,
MAX_REASONING_RETRY_ATTEMPTS, SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION);
}
async function mainConversion(fetch, triples, mapping) {
function mainConversion(fetch, triples) {
let formdata = new URLSearchParams();
formdata.append("data", triples);
@@ -103,66 +131,23 @@ async function mainConversion(fetch, triples, mapping) {
redirect: 'follow'
};
const response = await fetch(`http://reasoner/reason/dl2op/${mapping}`, requestOptions)
return await response.text();
return fetch("http://reasoner/reason/dl2op/main", requestOptions)
.then(response => response.text());
}
async function transformStatements(fetch, triples, mapping = 'main') {
console.log(`Received ${JSON.stringify(triples)} to transform`);
const transformedTriples = await transformTriples(fetch, triples.join('\n'), mapping);
statements = transformedTriples ? transformedTriples.replace(/\n{2,}/g, '').split('\n') : [];
console.log(`CONVERSION: FROM ${triples.length} triples to ${statements.length}`);
return statements;
}
async function deleteFromTargetGraph(lib, statements) {
console.log(`Deleting ${statements.length} statements from target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
TARGET_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'DELETE');
}
async function insertIntoTargetGraph(lib, statements) {
console.log(`Inserting ${statements.length} statements into target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
TARGET_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'INSERT');
}
async function transformLandingZoneGraph(fetch, endpoint, mapping = 'main') {
console.log(`Transforming landing zone graph: ${LANDING_ZONE_GRAPH}`);
const response = await fetch(`http://reasoner/reason/dl2op/${mapping}?data=${encodeURIComponent(`${endpoint}?default-graph-uri=&query=CONSTRUCT+%7B%0D%0A%3Fs+%3Fp+%3Fo%0D%0A%7D+WHERE+%7B%0D%0A+GRAPH+<${LANDING_ZONE_GRAPH}>+%7B%0D%0A%3Fs+%3Fp+%3Fo%0D%0A%7D%0D%0A%7D&should-sponge=&format=text%2Fplain&timeout=0&run=+Run+Query`)}`);
const text = await response.text();
const statements = text.replace(/\n{2,}/g, '').split('\n');
return statements;
function transformStatements(fetch, triples) {
return transformTriples(fetch, triples.join('\n')).then(
graph => {
statements = graph.replace(/\n{2,}/g, '').split('\n')
console.log(`CONVERSION: FROM ${triples.length} triples to ${statements.length}`)
return statements
}
)
}
module.exports = {
batchedDbUpdate,
deleteFromAllGraphs,
partition,
transformStatements,
transformLandingZoneGraph,
deleteFromTargetGraph,
insertIntoTargetGraph
};
transformStatements
};

View File

@@ -1,72 +0,0 @@
const PREFIXES = `
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>`
const contextConfig = {
addTypes: {
scope: 'all', // 'inserts, 'deletes', 'all' or none. To add rdf:type to subjects of inserts, deletes or both
exhausitive: false, // true or false: find all types for a subject, even if one is already present in delta
},
contextQueries: [
// Case Mandatarissen
// They can be triggered when being inserted or when their link to a mandate is added
{
trigger: { // subjectType or predicateValue
subjectType: "mandaat:Mandataris"
},
queryTemplate: (subject) => `
${PREFIXES}
CONSTRUCT {
?mandataris org:holds ?mandate ;
?p ?o .
?orgaanInTime org:hasPost ?mandate ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
} WHERE {
GRAPH <http://mu.semte.ch/graphs/landing-zone/mandatarissen> {
VALUES ?mandataris { ${subject} }
?mandataris org:holds ?mandate ;
?p ?o .
?orgaanInTime org:hasPost ?mandate ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
}
}`
},
{
trigger: {
predicateValue: "org:holds"
},
queryTemplate: (subject) => `
${PREFIXES}
CONSTRUCT {
?mandataris org:holds ?mandate ;
?p ?o .
?orgaanInTime org:hasPost ?mandate ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
} WHERE {
GRAPH <http://mu.semte.ch/graphs/landing-zone/mandatarissen> {
VALUES ?mandataris { ${subject} }
?mandataris org:holds ?mandate ;
?p ?o .
?orgaanInTime org:hasPost ?mandate ;
mandaat:isTijdspecialisatieVan ?orgaan .
?orgaan besluit:bestuurt ?eenheid .
?eenheid besluit:classificatie ?classification .
}
}`
}
]
}
module.exports = {
contextConfig,
PREFIXES
};

View File

@@ -1,85 +0,0 @@
const {
transformStatements,
deleteFromTargetGraph,
insertIntoTargetGraph,
} = require('./util');
/**
* Dispatch the fetched information to a target graph.
* Note: <share://file/data> will be ADDED to it's own graph.
* We take only care of adding them, not updating triples, this is a TODO
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjectChangeSets: { deletes, inserts } } data - The fetched changes sets, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, fetch } = lib;
let { termObjectChangeSets, termObjectChangeSetsWithContext } = data;
// Both arrays are the same length, so we can zip them together for easier processing
zippedChangeSets = termObjectChangeSets.map((o, i) => ({
original: o,
withContext: termObjectChangeSetsWithContext[i]
}));
console.log(`Received ${zippedChangeSets.length} change sets`)
for (let { original, withContext } of zippedChangeSets) {
let originalDeletes, originalInserts, insertsWithContext, deletesWithContext;
try {
originalInserts = original.inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
originalDeletes = original.deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
} catch (e) {
console.log(`Error while processing change set: ${e}`);
console.log(`Original change set: ${JSON.stringify(original)}`);
throw e;
}
// Extra context needed for mapping from DL to OP model and filtering based on type.
try {
insertsWithContext = withContext.inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
deletesWithContext = withContext.deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
} catch (e) {
console.log(`Error while processing change set with context: ${e}`);
console.log(`Change set with context: ${JSON.stringify(withContext)}`);
throw e;
}
if (originalDeletes.length) {
// Map deletes from DL to OP model
const transformedDeletes = await transformStatements(fetch, deletesWithContext);
if (!transformedDeletes.length) {
console.log(`Warn: Delete statements mapped to empty result.`);
console.log(`Input: ${deletesWithContext}`);
console.log(`Output: ${transformedDeletes}`);
} else {
await deleteFromTargetGraph(lib, transformedDeletes);
}
}
if (originalInserts.length) {
// Map inserts from DL to OP model
const transformedInserts = await transformStatements(fetch, insertsWithContext);
if (!transformedInserts.length) {
console.log(`Warn: Insert statements mapped to empty result.`);
console.log(`Input: ${insertsWithContext}`);
console.log(`Output: ${transformedInserts}`);
} else {
await insertIntoTargetGraph(lib, transformedInserts);
}
}
}
}
module.exports = {
dispatch
};

View File

@@ -1,85 +0,0 @@
const { batchedDbUpdate, transformLandingZoneGraph } = require('./util');
const {
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
TARGET_GRAPH,
LANDING_ZONE_GRAPH,
LANDING_ZONE_DATABASE_ENDPOINT
} = require('./config');
const endpoint = BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES ? DIRECT_DATABASE_ENDPOINT : process.env.MU_SPARQL_ENDPOINT;
/**
* Dispatch the fetched information to a target graph.
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjects } data - The fetched quad information, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo } = lib;
const { termObjects } = data;
// Steps:
// 1. Write the triples to the landing zone graph - withouth any mapping or filtering
// 2. One-time reasoning run with the full landing zone graph and write the results to the target graph (on-finish)
if (BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES) {
console.warn(`Service configured to skip MU_AUTH!`);
}
console.log(`Using ${endpoint} to insert triples`);
if (termObjects.length) {
const originalInsertTriples = termObjects.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
await batchedDbUpdate(
muAuthSudo.updateSudo,
LANDING_ZONE_GRAPH,
originalInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
LANDING_ZONE_DATABASE_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
}
async function onFinishInitialIngest(lib) {
const { muAuthSudo, fetch } = lib;
console.log(`!! On-finish triggered !!`);
const transformedInsertTriples = await transformLandingZoneGraph(fetch, endpoint);
console.log(`Transformed ${transformedInsertTriples.length} triples`);
await batchedDbUpdate(
muAuthSudo.updateSudo,
TARGET_GRAPH,
transformedInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
module.exports = {
dispatch,
onFinishInitialIngest
};

View File

@@ -1,20 +1,18 @@
const BATCH_SIZE = parseInt(process.env.BATCH_SIZE) || 100;
const MU_CALL_SCOPE_ID_INITIAL_SYNC = process.env.MU_CALL_SCOPE_ID_INITIAL_SYNC || 'http://redpencil.data.gift/id/concept/muScope/deltas/consumer/initialSync';
const BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES = process.env.BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES == 'true' ? true : false;
const DIRECT_DATABASE_ENDPOINT = process.env.DIRECT_DATABASE_ENDPOINT || 'http://triplestore:8890/sparql';
const DIRECT_DATABASE_ENDPOINT = process.env.DIRECT_DATABASE_ENDPOINT || 'http://virtuoso:8890/sparql';
const MAX_DB_RETRY_ATTEMPTS = parseInt(process.env.MAX_DB_RETRY_ATTEMPTS || 5);
const MAX_REASONING_RETRY_ATTEMPTS = parseInt(process.env.MAX_REASONING_RETRY_ATTEMPTS || 5);
const SLEEP_BETWEEN_BATCHES = parseInt(process.env.SLEEP_BETWEEN_BATCHES || 1000);
const SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION = parseInt(process.env.SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION || 10000);
const SLEEP_TIME_AFTER_FAILED_DB_OPERATION = parseInt(process.env.SLEEP_TIME_AFTER_FAILED_DB_OPERATION || 60000);
const INGEST_GRAPH = process.env.INGEST_GRAPH || `http://mu.semte.ch/graphs/organisatieportaal`;
// Graphs
const TARGET_GRAPH = process.env.TARGET_GRAPH || `http://mu.semte.ch/graphs/administrative-unit`;
const LANDING_ZONE_GRAPH = process.env.DCR_LANDING_ZONE_GRAPH || `http://mu.semte.ch/graphs/landing-zone/leidinggevenden`;
// ENDPOINTS
const LANDING_ZONE_DATABASE = process.env.DCR_LANDING_ZONE_DATABASE || 'db';
const LANDING_ZONE_DATABASE_ENDPOINT = process.env.DCR_LANDING_ZONE_DATABASE_ENDPOINT || `http://${LANDING_ZONE_DATABASE}:8890/sparql`;
if (!process.env.FILE_SYNC_GRAPH)
throw `Expected 'FILE_SYNC_GRAPH' to be provided.`;
const FILE_SYNC_GRAPH = process.env.FILE_SYNC_GRAPH;
module.exports = {
BATCH_SIZE,
@@ -26,8 +24,6 @@ module.exports = {
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
LANDING_ZONE_GRAPH,
LANDING_ZONE_DATABASE_ENDPOINT,
TARGET_GRAPH
};
INGEST_GRAPH,
FILE_SYNC_GRAPH
};

View File

@@ -0,0 +1,76 @@
const { transformStatements, batchedDbUpdate, partition, deleteFromAllGraphs } = require('./util');
const { BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
INGEST_GRAPH,
FILE_SYNC_GRAPH
} = require('./config');
/**
* Dispatch the fetched information to a target graph.
* Note: <share://file/data> will be ADDED to it's own graph.
* We take only care of adding them, not updating triples, this is a TODO
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjectChangeSets: { deletes, inserts } } data - The fetched changes sets, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo, fetch } = lib;
const { termObjectChangeSets } = data;
for (let { deletes, inserts } of termObjectChangeSets) {
const deleteStatements = deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
const insertStatements = inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
if (deleteStatements.length) {
await transformStatements(fetch, deleteStatements).then(
transformedStatements => {
deleteFromAllGraphs(
muAuthSudo.updateSudo,
transformedStatements,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
);
}
)
}
if (insertStatements.length) {
await transformStatements(fetch, insertStatements).then(
transformedStatements => {
batchedDbUpdate(
muAuthSudo.updateSudo,
INGEST_GRAPH,
transformedStatements,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
"INSERT"
);
}
)
}
}
}
module.exports = {
dispatch
};

View File

@@ -0,0 +1,59 @@
const { transformStatements, batchedDbUpdate, partition } = require('./util');
const { BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
INGEST_GRAPH,
FILE_SYNC_GRAPH
} = require('./config');
const endpoint = BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES ? DIRECT_DATABASE_ENDPOINT : process.env.MU_SPARQL_ENDPOINT;
/**
* Dispatch the fetched information to a target graph.
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjects } data - The fetched quad information, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo, fetch } = lib;
const { termObjects } = data;
if (BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES) {
console.warn(`Service configured to skip MU_AUTH!`);
}
console.log(`Using ${endpoint} to insert triples`);
if (termObjects.length) {
originalInsertTriples = termObjects.map(o => `${o.subject} ${o.predicate} ${o.object}.`)
await transformStatements(fetch, originalInsertTriples).then(
transformedInsertTriples => {
batchedDbUpdate(
muAuthSudo.updateSudo,
INGEST_GRAPH,
transformedInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
)
}
)
}
}
module.exports = {
dispatch
};

View File

@@ -1,16 +1,9 @@
const {
MAX_REASONING_RETRY_ATTEMPTS,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
TARGET_GRAPH,
LANDING_ZONE_GRAPH,
BATCH_SIZE
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION
} = require('./config');
async function batchedDbUpdate(
muUpdate,
async function batchedDbUpdate(muUpdate,
graph,
triples,
extraHeaders,
@@ -44,6 +37,39 @@ ${batch}
}
}
async function deleteFromAllGraphs(muUpdate,
triples,
extraHeaders,
endpoint,
maxAttempts,
sleepBetweenBatches = 1000,
sleepTimeOnFail = 1000,
) {
for (const triple of triples) {
console.log(`Deleting a triple from all graphs in triplestore`);
const deleteCall = async () => {
await muUpdate(`
DELETE {
GRAPH ?g {
${triple}
}
} WHERE {
GRAPH ?g {
${triple}
}
}
`, extraHeaders, endpoint);
};
await operationWithRetry(deleteCall, 0, maxAttempts, sleepTimeOnFail);
console.log(`Sleeping before next query execution: ${sleepBetweenBatches}`);
await new Promise(r => setTimeout(r, sleepBetweenBatches));
}
}
async function operationWithRetry(callback,
attempt,
maxAttempts,
@@ -84,16 +110,18 @@ function partition(arr, fn) {
return { passes, fails };
}
/**
* Send triples to reasoning service for conversion
*
*/
async function transformTriples(fetch, triples, mapping) {
return await operationWithRetry(mainConversion(fetch, triples, mapping), 0,
function transformTriples(fetch, triples) {
return operationWithRetry(mainConversion(fetch, triples), 0,
MAX_REASONING_RETRY_ATTEMPTS, SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION);
}
async function mainConversion(fetch, triples, mapping) {
function mainConversion(fetch, triples) {
let formdata = new URLSearchParams();
formdata.append("data", triples);
@@ -103,66 +131,23 @@ async function mainConversion(fetch, triples, mapping) {
redirect: 'follow'
};
const response = await fetch(`http://reasoner/reason/dl2op/${mapping}`, requestOptions)
return await response.text();
return fetch("http://reasoner/reason/dl2op/main", requestOptions)
.then(response => response.text());
}
async function transformStatements(fetch, triples, mapping = 'main') {
console.log(`Received ${JSON.stringify(triples)} to transform`);
const transformedTriples = await transformTriples(fetch, triples.join('\n'), mapping);
statements = transformedTriples ? transformedTriples.replace(/\n{2,}/g, '').split('\n') : [];
console.log(`CONVERSION: FROM ${triples.length} triples to ${statements.length}`);
return statements;
}
async function deleteFromTargetGraph(lib, statements) {
console.log(`Deleting ${statements.length} statements from target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
TARGET_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'DELETE');
}
async function insertIntoTargetGraph(lib, statements) {
console.log(`Inserting ${statements.length} statements into target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
TARGET_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'INSERT');
}
async function transformLandingZoneGraph(fetch, endpoint, mapping = 'main') {
console.log(`Transforming landing zone graph: ${LANDING_ZONE_GRAPH}`);
const response = await fetch(`http://reasoner/reason/dl2op/${mapping}?data=${encodeURIComponent(`${endpoint}?default-graph-uri=&query=CONSTRUCT+%7B%0D%0A%3Fs+%3Fp+%3Fo%0D%0A%7D+WHERE+%7B%0D%0A+GRAPH+<${LANDING_ZONE_GRAPH}>+%7B%0D%0A%3Fs+%3Fp+%3Fo%0D%0A%7D%0D%0A%7D&should-sponge=&format=text%2Fplain&timeout=0&run=+Run+Query`)}`);
const text = await response.text();
const statements = text.replace(/\n{2,}/g, '').split('\n');
return statements;
function transformStatements(fetch, triples) {
return transformTriples(fetch, triples.join('\n')).then(
graph => {
statements = graph.replace(/\n{2,}/g, '').split('\n')
console.log(`CONVERSION: FROM ${triples.length} triples to ${statements.length}`)
return statements
}
)
}
module.exports = {
batchedDbUpdate,
deleteFromAllGraphs,
partition,
transformStatements,
transformLandingZoneGraph,
deleteFromTargetGraph,
insertIntoTargetGraph
};
transformStatements
};

View File

@@ -1,25 +1,22 @@
const BATCH_SIZE = parseInt(process.env.BATCH_SIZE) || 100;
const MU_CALL_SCOPE_ID_INITIAL_SYNC = process.env.MU_CALL_SCOPE_ID_INITIAL_SYNC || 'http://redpencil.data.gift/id/concept/muScope/deltas/consumer/initialSync';
const BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES = process.env.BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES == 'true' ? true : false;
const DIRECT_DATABASE_ENDPOINT = process.env.DIRECT_DATABASE_ENDPOINT || 'http://triplestore:8890/sparql';
const DIRECT_DATABASE_ENDPOINT = process.env.DIRECT_DATABASE_ENDPOINT || 'http://virtuoso:8890/sparql';
const MAX_DB_RETRY_ATTEMPTS = parseInt(process.env.MAX_DB_RETRY_ATTEMPTS || 5);
const MAX_REASONING_RETRY_ATTEMPTS = parseInt(process.env.MAX_REASONING_RETRY_ATTEMPTS || 5);
const SLEEP_BETWEEN_BATCHES = parseInt(process.env.SLEEP_BETWEEN_BATCHES || 1000);
const SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION = parseInt(process.env.SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION || 10000);
const SLEEP_TIME_AFTER_FAILED_DB_OPERATION = parseInt(process.env.SLEEP_TIME_AFTER_FAILED_DB_OPERATION || 60000);
const INGEST_GRAPH = process.env.INGEST_GRAPH || `http://mu.semte.ch/graphs/organisatieportaal`;
const PRIVACY_SENSITIVE_GRAPH = process.env.PRIVACY_SENSITIVE_GRAPH || `http://mu.semte.ch/graphs/privacy-centric-graph`;
const UNFILTERED_MAPPING = 'main';
const MAIN_INFO_MAPPING = 'main-info';
const PRIVATE_INFO_MAPPING = 'private-info';
// Graphs
const TARGET_GRAPH = process.env.TARGET_GRAPH || `http://mu.semte.ch/graphs/worship-service`;
const PRIVACY_SENSITIVE_GRAPH = process.env.PRIVACY_SENSITIVE_GRAPH || `http://mu.semte.ch/graphs/worship-privacy-centric-graph`;
const LANDING_ZONE_GRAPH = process.env.DCR_LANDING_ZONE_GRAPH || `http://mu.semte.ch/graphs/landing-zone/leidinggevenden`;
// Mappings
const MAIN_INFO_MAPPING = "main-info";
const PRIVATE_INFO_MAPPING = "private-info";
// ENDPOINTS
const LANDING_ZONE_DATABASE = process.env.DCR_LANDING_ZONE_DATABASE || 'db';
const LANDING_ZONE_DATABASE_ENDPOINT = process.env.DCR_LANDING_ZONE_DATABASE_ENDPOINT || `http://${LANDING_ZONE_DATABASE}:8890/sparql`;
if (!process.env.FILE_SYNC_GRAPH)
throw `Expected 'FILE_SYNC_GRAPH' to be provided.`;
const FILE_SYNC_GRAPH = process.env.FILE_SYNC_GRAPH;
module.exports = {
BATCH_SIZE,
@@ -31,10 +28,9 @@ module.exports = {
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
LANDING_ZONE_GRAPH,
LANDING_ZONE_DATABASE_ENDPOINT,
TARGET_GRAPH,
INGEST_GRAPH,
PRIVACY_SENSITIVE_GRAPH,
UNFILTERED_MAPPING,
MAIN_INFO_MAPPING,
PRIVATE_INFO_MAPPING
};
PRIVATE_INFO_MAPPING,
};

View File

@@ -0,0 +1,88 @@
const { transformStatements, batchedDbUpdate, partition, deleteFromAllGraphs } = require('./util');
const {
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
INGEST_GRAPH,
PRIVACY_SENSITIVE_GRAPH,
UNFILTERED_MAPPING,
MAIN_INFO_MAPPING,
PRIVATE_INFO_MAPPING,
} = require('./config');
/**
* Dispatch the fetched information to a target graph.
* Note: <share://file/data> will be ADDED to it's own graph.
* We take only care of adding them, not updating triples, this is a TODO
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjectChangeSets: { deletes, inserts } } data - The fetched changes sets, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo, fetch } = lib;
const { termObjectChangeSets } = data;
for (let { deletes, inserts } of termObjectChangeSets) {
const deleteStatements = deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
const insertStatements = inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
if (deleteStatements.length) {
const transformedStatementsToDelete = await transformStatements(fetch, deleteStatements, UNFILTERED_MAPPING);
if (transformedStatementsToDelete.length) {
await deleteFromAllGraphs(
muAuthSudo.updateSudo,
transformedStatementsToDelete,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
);
}
}
if (insertStatements.length) {
const transformedStatementsToInsert = await transformStatements(fetch, insertStatements, MAIN_INFO_MAPPING);
if (transformedStatementsToInsert.length) {
await batchedDbUpdate(
muAuthSudo.updateSudo,
INGEST_GRAPH,
transformedStatementsToInsert,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
const transformedStatementsToInsertPrivate = await transformStatements(fetch, insertStatements, PRIVATE_INFO_MAPPING);
if (transformedStatementsToInsertPrivate.length) {
await batchedDbUpdate(
muAuthSudo.updateSudo,
PRIVACY_SENSITIVE_GRAPH,
transformedStatementsToInsertPrivate,
{ 'mu-call-scope-id': 'http://redpencil.data.gift/id/concept/muScope/deltas/write-for-dispatch' },
process.env.MU_SPARQL_ENDPOINT, //Note: this is the default endpoint through auth
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
}
}
}
module.exports = {
dispatch
};

View File

@@ -0,0 +1,80 @@
const { transformStatements, batchedDbUpdate, } = require('./util');
const { BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
INGEST_GRAPH,
PRIVACY_SENSITIVE_GRAPH,
MAIN_INFO_MAPPING,
PRIVATE_INFO_MAPPING
} = require('./config');
const endpoint = BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES ? DIRECT_DATABASE_ENDPOINT : process.env.MU_SPARQL_ENDPOINT;
/**
* Dispatch the fetched information to a target graph.
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjects } data - The fetched quad information, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo, fetch } = lib;
const { termObjects } = data;
if (BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES) {
console.warn(`Service configured to skip MU_AUTH!`);
}
console.log(`Using ${endpoint} to insert triples`);
if (termObjects.length) {
originalInsertTriples = termObjects.map(o => `${o.subject} ${o.predicate} ${o.object}.`)
await transformStatements(fetch, originalInsertTriples, MAIN_INFO_MAPPING).then(
transformedInsertTriples => {
if (transformedInsertTriples.length) {
batchedDbUpdate(
muAuthSudo.updateSudo,
INGEST_GRAPH,
transformedInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
)
}
}
);
await transformStatements(fetch, originalInsertTriples, PRIVATE_INFO_MAPPING).then(
transformedInsertTriples => {
if (transformedInsertTriples.length) {
batchedDbUpdate(
muAuthSudo.updateSudo,
PRIVACY_SENSITIVE_GRAPH,
transformedInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
)
}
}
);
}
}
module.exports = {
dispatch
};

View File

@@ -0,0 +1,154 @@
const {
MAX_REASONING_RETRY_ATTEMPTS,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION
} = require('./config');
async function batchedDbUpdate(muUpdate,
graph,
triples,
extraHeaders,
endpoint,
batchSize,
maxAttempts,
sleepBetweenBatches = 1000,
sleepTimeOnFail = 1000,
operation = 'INSERT'
) {
for (let i = 0; i < triples.length; i += batchSize) {
console.log(`Inserting triples in batch: ${i}-${i + batchSize}`);
const batch = triples.slice(i, i + batchSize).join('\n');
const insertCall = async () => {
await muUpdate(`
${operation} DATA {
GRAPH <${graph}> {
${batch}
}
}
`, extraHeaders, endpoint);
};
await operationWithRetry(insertCall, 0, maxAttempts, sleepTimeOnFail);
console.log(`Sleeping before next query execution: ${sleepBetweenBatches}`);
await new Promise(r => setTimeout(r, sleepBetweenBatches));
}
}
async function deleteFromAllGraphs(muUpdate,
triples,
extraHeaders,
endpoint,
maxAttempts,
sleepBetweenBatches = 1000,
sleepTimeOnFail = 1000,
) {
for (const triple of triples) {
console.log(`Deleting a triple from all graphs in triplestore`);
const deleteCall = async () => {
await muUpdate(`
DELETE {
GRAPH ?g {
${triple}
}
} WHERE {
GRAPH ?g {
${triple}
}
}
`, extraHeaders, endpoint);
};
await operationWithRetry(deleteCall, 0, maxAttempts, sleepTimeOnFail);
console.log(`Sleeping before next query execution: ${sleepBetweenBatches}`);
await new Promise(r => setTimeout(r, sleepBetweenBatches));
}
}
async function operationWithRetry(callback,
attempt,
maxAttempts,
sleepTimeOnFail) {
try {
if (typeof callback === "function")
return await callback();
else // Catch error from promise - not how I would do it normally, but allows re use of existing code.
return await callback;
}
catch (e) {
console.log(`Operation failed for ${callback.toString()}, attempt: ${attempt} of ${maxAttempts}`);
console.log(`Error: ${e}`);
console.log(`Sleeping ${sleepTimeOnFail} ms`);
if (attempt >= maxAttempts) {
console.log(`Max attempts reached for ${callback.toString()}, giving up`);
throw e;
}
await new Promise(r => setTimeout(r, sleepTimeOnFail));
return operationWithRetry(callback, ++attempt, maxAttempts, sleepTimeOnFail);
}
}
/**
* Splits an array into two parts, a part that passes and a part that fails a predicate function.
* Credits: https://github.com/benjay10
* @public
* @function partition
* @param {Array} arr - Array to be partitioned
* @param {Function} fn - Function that accepts single argument: an element of the array, and should return a truthy or falsy value.
* @returns {Object} Object that contains keys passes and fails, each representing an array with elemets that pass or fail the predicate respectively
*/
function partition(arr, fn) {
let passes = [], fails = [];
arr.forEach((item) => (fn(item) ? passes : fails).push(item));
return { passes, fails };
}
/**
* Send triples to reasoning service for conversion
*
*/
function transformTriples(fetch, triples, mapping) {
return operationWithRetry(mainConversion(fetch, triples, mapping), 0,
MAX_REASONING_RETRY_ATTEMPTS, SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION);
}
function mainConversion(fetch, triples, mapping) {
let formdata = new URLSearchParams();
formdata.append("data", triples);
let requestOptions = {
method: 'POST',
body: formdata,
redirect: 'follow'
};
return fetch(`http://reasoner/reason/dl2op/${mapping}`, requestOptions)
.then(response => response.text());
}
function transformStatements(fetch, triples, mapping) {
return transformTriples(fetch, triples.join('\n'), mapping).then(
graph => {
statements = graph ? graph.split('\n') : [];
console.log(`CONVERSION ${mapping}: FROM ${triples.length} triples to ${statements.length}`)
return statements
}
)
}
module.exports = {
batchedDbUpdate,
deleteFromAllGraphs,
partition,
transformStatements
};

View File

@@ -1,11 +0,0 @@
const contextConfig = {
addTypes: {
scope: 'all', // 'inserts, 'deletes', 'all' or none. To add rdf:type to subjects of inserts, deletes or both
exhausitive: false, // true or false: find all types for a subject, even if one is already present in delta
},
contextQueries: []
}
module.exports = {
contextConfig
};

View File

@@ -1,114 +0,0 @@
const {
transformStatements,
deleteFromTargetGraph,
insertIntoTargetGraph,
deleteFromPrivateGraph,
insertIntoPrivateGraph
} = require('./util');
const {
MAIN_INFO_MAPPING,
PRIVATE_INFO_MAPPING
} = require('./config');
/**
* Dispatch the fetched information to a target graph.
* Note: <share://file/data> will be ADDED to it's own graph.
* We take only care of adding them, not updating triples, this is a TODO
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjectChangeSets: { deletes, inserts } } data - The fetched changes sets, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, fetch } = lib;
let { termObjectChangeSets, termObjectChangeSetsWithContext } = data;
// Both arrays are the same length, so we can zip them together for easier processing
zippedChangeSets = termObjectChangeSets.map((o, i) => ({
original: o,
withContext: termObjectChangeSetsWithContext[i]
}));
console.log(`Received ${zippedChangeSets.length} change sets`)
for (let { original, withContext } of zippedChangeSets) {
let originalDeletes, originalInserts, insertsWithContext, deletesWithContext;
try {
originalInserts = original.inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
originalDeletes = original.deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
} catch (e) {
console.log(`Error while processing change set: ${e}`);
console.log(`Original change set: ${JSON.stringify(original)}`);
throw e;
}
// Extra context needed for mapping from DL to OP model and filtering based on type.
try {
insertsWithContext = withContext.inserts.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
deletesWithContext = withContext.deletes.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
} catch (e) {
console.log(`Error while processing change set with context: ${e}`);
console.log(`Change set with context: ${JSON.stringify(withContext)}`);
throw e;
}
if (originalDeletes.length) {
// Map main deletes from DL to OP model
const transformedMainDeletes = await transformStatements(fetch, deletesWithContext, MAIN_INFO_MAPPING);
if (!transformedMainDeletes.length) {
console.log(`Warn: Delete main statements mapped to empty result.`);
console.log(`Input: ${deletesWithContext}`);
console.log(`Output: ${transformedMainDeletes}`);
} else {
await deleteFromTargetGraph(lib, transformedMainDeletes);
}
// Map private deletes from DL to OP model
const transformedPrivateDeletes = await transformStatements(fetch, deletesWithContext, PRIVATE_INFO_MAPPING);
if (!transformedPrivateDeletes.length) {
console.log(`Warn: Delete private statements mapped to empty result.`);
console.log(`Input: ${deletesWithContext}`);
console.log(`Output: ${transformedPrivateDeletes}`);
} else {
await deleteFromPrivateGraph(lib, transformedPrivateDeletes);
}
}
if (originalInserts.length) {
// Map main inserts from DL to OP model
const transformedMainInserts = await transformStatements(fetch, insertsWithContext, MAIN_INFO_MAPPING);
if (!transformedMainInserts.length) {
console.log(`Warn: Insert statements mapped to empty result.`);
console.log(`Input: ${insertsWithContext}`);
console.log(`Output: ${transformedMainInserts}`);
} else {
await insertIntoTargetGraph(lib, transformedMainInserts);
}
// Map private inserts from DL to OP model
const transformedPrivateInserts = await transformStatements(fetch, insertsWithContext, PRIVATE_INFO_MAPPING);
if (!transformedPrivateInserts.length) {
console.log(`Warn: Insert statements mapped to empty result.`);
console.log(`Input: ${insertsWithContext}`);
console.log(`Output: ${transformedPrivateInserts}`);
} else {
await insertIntoPrivateGraph(lib, transformedPrivateInserts);
}
}
}
}
module.exports = {
dispatch
};

View File

@@ -1,106 +0,0 @@
const { batchedDbUpdate, transformLandingZoneGraph } = require('./util');
const {
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
DIRECT_DATABASE_ENDPOINT,
MU_CALL_SCOPE_ID_INITIAL_SYNC,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
TARGET_GRAPH,
PRIVACY_SENSITIVE_GRAPH,
LANDING_ZONE_GRAPH,
LANDING_ZONE_DATABASE_ENDPOINT,
MAIN_INFO_MAPPING,
PRIVATE_INFO_MAPPING
} = require('./config');
const endpoint = BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES ? DIRECT_DATABASE_ENDPOINT : process.env.MU_SPARQL_ENDPOINT;
/**
* Dispatch the fetched information to a target graph.
* @param { mu, muAuthSudo } lib - The provided libraries from the host service.
* @param { termObjects } data - The fetched quad information, which objects of serialized Terms
* [ {
* graph: "<http://foo>",
* subject: "<http://bar>",
* predicate: "<http://baz>",
* object: "<http://boom>^^<http://datatype>"
* }
* ]
* @return {void} Nothing
*/
async function dispatch(lib, data) {
const { mu, muAuthSudo } = lib;
const { termObjects } = data;
// Steps:
// 1. Write the triples to the landing zone graph - withouth any mapping or filtering
// 2. One-time reasoning run with the full landing zone graph and write the results to the target graph (on-finish)
if (BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES) {
console.warn(`Service configured to skip MU_AUTH!`);
}
console.log(`Using ${endpoint} to insert triples`);
if (termObjects.length) {
const originalInsertTriples = termObjects.map(o => `${o.subject} ${o.predicate} ${o.object}.`);
await batchedDbUpdate(
muAuthSudo.updateSudo,
LANDING_ZONE_GRAPH,
originalInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
LANDING_ZONE_DATABASE_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
}
async function onFinishInitialIngest(lib) {
const { muAuthSudo, fetch } = lib;
console.log(`!! On-finish triggered !!`);
const transformedMainInsertTriples = await transformLandingZoneGraph(fetch, endpoint, MAIN_INFO_MAPPING);
console.log(`Transformed ${transformedMainInsertTriples.length} main triples`);
if (transformedMainInsertTriples.length) {
await batchedDbUpdate(
muAuthSudo.updateSudo,
TARGET_GRAPH,
transformedMainInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
const transformedPrivateInsertTriples = await transformLandingZoneGraph(fetch, endpoint, PRIVATE_INFO_MAPPING);
console.log(`Transformed ${transformedPrivateInsertTriples.length} private triples`);
if (transformedPrivateInsertTriples.length) {
await batchedDbUpdate(
muAuthSudo.updateSudo,
PRIVACY_SENSITIVE_GRAPH,
transformedPrivateInsertTriples,
{ 'mu-call-scope-id': MU_CALL_SCOPE_ID_INITIAL_SYNC },
endpoint,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION
);
}
}
module.exports = {
dispatch,
onFinishInitialIngest
};

View File

@@ -1,204 +0,0 @@
const {
MAX_REASONING_RETRY_ATTEMPTS,
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
TARGET_GRAPH,
PRIVACY_SENSITIVE_GRAPH,
LANDING_ZONE_GRAPH,
BATCH_SIZE
} = require('./config');
async function batchedDbUpdate(
muUpdate,
graph,
triples,
extraHeaders,
endpoint,
batchSize,
maxAttempts,
sleepBetweenBatches = 1000,
sleepTimeOnFail = 1000,
operation = 'INSERT'
) {
for (let i = 0; i < triples.length; i += batchSize) {
console.log(`Inserting triples in batch: ${i}-${i + batchSize}`);
const batch = triples.slice(i, i + batchSize).join('\n');
const insertCall = async () => {
await muUpdate(`
${operation} DATA {
GRAPH <${graph}> {
${batch}
}
}
`, extraHeaders, endpoint);
};
await operationWithRetry(insertCall, 0, maxAttempts, sleepTimeOnFail);
console.log(`Sleeping before next query execution: ${sleepBetweenBatches}`);
await new Promise(r => setTimeout(r, sleepBetweenBatches));
}
}
async function operationWithRetry(callback,
attempt,
maxAttempts,
sleepTimeOnFail) {
try {
if (typeof callback === "function")
return await callback();
else // Catch error from promise - not how I would do it normally, but allows re use of existing code.
return await callback;
}
catch (e) {
console.log(`Operation failed for ${callback.toString()}, attempt: ${attempt} of ${maxAttempts}`);
console.log(`Error: ${e}`);
console.log(`Sleeping ${sleepTimeOnFail} ms`);
if (attempt >= maxAttempts) {
console.log(`Max attempts reached for ${callback.toString()}, giving up`);
throw e;
}
await new Promise(r => setTimeout(r, sleepTimeOnFail));
return operationWithRetry(callback, ++attempt, maxAttempts, sleepTimeOnFail);
}
}
/**
* Splits an array into two parts, a part that passes and a part that fails a predicate function.
* Credits: https://github.com/benjay10
* @public
* @function partition
* @param {Array} arr - Array to be partitioned
* @param {Function} fn - Function that accepts single argument: an element of the array, and should return a truthy or falsy value.
* @returns {Object} Object that contains keys passes and fails, each representing an array with elemets that pass or fail the predicate respectively
*/
function partition(arr, fn) {
let passes = [], fails = [];
arr.forEach((item) => (fn(item) ? passes : fails).push(item));
return { passes, fails };
}
/**
* Send triples to reasoning service for conversion
*
*/
async function transformTriples(fetch, triples, mapping) {
return await operationWithRetry(mainConversion(fetch, triples, mapping), 0,
MAX_REASONING_RETRY_ATTEMPTS, SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION);
}
async function mainConversion(fetch, triples, mapping) {
let formdata = new URLSearchParams();
formdata.append("data", triples);
let requestOptions = {
method: 'POST',
body: formdata,
redirect: 'follow'
};
const response = await fetch(`http://reasoner/reason/dl2op/${mapping}`, requestOptions)
return await response.text();
}
async function transformStatements(fetch, triples, mapping = 'main') {
console.log(`Received ${JSON.stringify(triples)} to transform`);
const transformedTriples = await transformTriples(fetch, triples.join('\n'), mapping);
statements = transformedTriples ? transformedTriples.replace(/\n{2,}/g, '').split('\n') : [];
console.log(`CONVERSION: FROM ${triples.length} triples to ${statements.length}`);
return statements;
}
async function deleteFromTargetGraph(lib, statements) {
console.log(`Deleting ${statements.length} statements from target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
TARGET_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'DELETE');
}
async function deleteFromPrivateGraph(lib, statements) {
console.log(`Deleting ${statements.length} statements from target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
PRIVACY_SENSITIVE_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'DELETE');
}
async function insertIntoTargetGraph(lib, statements) {
console.log(`Inserting ${statements.length} statements into target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
TARGET_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'INSERT');
}
async function insertIntoPrivateGraph(lib, statements) {
console.log(`Inserting ${statements.length} statements into target graph`);
console.log(`Statements: ${JSON.stringify(statements)}`)
await batchedDbUpdate(
lib.muAuthSudo.updateSudo,
PRIVACY_SENSITIVE_GRAPH,
statements,
{},
process.env.MU_SPARQL_ENDPOINT,
BATCH_SIZE,
MAX_DB_RETRY_ATTEMPTS,
SLEEP_BETWEEN_BATCHES,
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
'INSERT');
}
async function transformLandingZoneGraph(fetch, endpoint, mapping = 'main') {
console.log(`Transforming landing zone graph: ${LANDING_ZONE_GRAPH}`);
const response = await fetch(`http://reasoner/reason/dl2op/${mapping}?data=${encodeURIComponent(`${endpoint}?default-graph-uri=&query=CONSTRUCT+%7B%0D%0A%3Fs+%3Fp+%3Fo%0D%0A%7D+WHERE+%7B%0D%0A+GRAPH+<${LANDING_ZONE_GRAPH}>+%7B%0D%0A%3Fs+%3Fp+%3Fo%0D%0A%7D%0D%0A%7D&should-sponge=&format=text%2Fplain&timeout=0&run=+Run+Query`)}`);
const text = await response.text();
const statements = text.replace(/\n{2,}/g, '').split('\n');
return statements;
}
module.exports = {
batchedDbUpdate,
partition,
transformStatements,
transformLandingZoneGraph,
deleteFromTargetGraph,
insertIntoTargetGraph,
deleteFromPrivateGraph,
insertIntoPrivateGraph
};

View File

@@ -1,46 +0,0 @@
DELETE DATA {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/besturenVanDeEredienst/d640003a744edbe1a0597ab57243ab5e>
<http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> .
}
}
;
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/besturenVanDeEredienst/d640003a744edbe1a0597ab57243ab5e>
<http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> .
<http://data.lblod.info/id/eredienstbestuursorganen/18d843d47e223409b9bb6e7af8a4d8a8>
a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> "18d843d47e223409b9bb6e7af8a4d8a8" ;
<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> <http://data.lblod.info/id/eredienstbestuursorganen/520e20dd93d0eb546ee2402f124b499e> ;
<http://data.vlaanderen.be/ns/mandaat#bindingStart> "2020-04-01T00:00:00"^^xsd:dateTime ;
<http://data.vlaanderen.be/ns/mandaat#bindingEinde> "2023-03-31T00:00:00"^^xsd:dateTime ;
<http://www.w3.org/ns/org#hasPost> <http://data.lblod.info/id/mandaten/c6d754b17be9634e629f7d751753bb27> ;
<http://www.w3.org/ns/org#hasPost> <http://data.lblod.info/id/mandaten/37fc68e584d93a8c165a2b9b5b0f183a> ;
<http://www.w3.org/ns/org#hasPost> <http://data.lblod.info/id/mandaten/daac7f53-b020-443d-92a7-9d47be6cb186> ;
<http://www.w3.org/ns/org#hasPost> <http://data.lblod.info/id/mandaten/3618fc2a-83f7-45dd-969f-06afd0c3277b> ;
<http://www.w3.org/ns/org#hasPost> <http://data.lblod.info/id/mandaten/e4b05858-c66d-4098-9c43-59af0359e603> ;
<http://www.w3.org/ns/org#hasPost> <http://data.lblod.info/id/mandaten/5147f880-b0a5-4145-ac01-db8323a5410d> .
<http://data.lblod.info/id/mandaten/daac7f53-b020-443d-92a7-9d47be6cb186>
a <http://data.vlaanderen.be/ns/mandaat#Mandaat> ;
<http://mu.semte.ch/vocabularies/core/uuid> "daac7f53-b020-443d-92a7-9d47be6cb186" ;
<http://www.w3.org/ns/org#role> <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/2962f0bd-2836-4758-9866-8ce8ea2c536f> .
<http://data.lblod.info/id/mandaten/3618fc2a-83f7-45dd-969f-06afd0c3277b>
a <http://data.vlaanderen.be/ns/mandaat#Mandaat> ;
<http://mu.semte.ch/vocabularies/core/uuid> "3618fc2a-83f7-45dd-969f-06afd0c3277b" ;
<http://www.w3.org/ns/org#role> <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/67e6e585166cd97575b3e17ffc430a43> .
<http://data.lblod.info/id/mandaten/e4b05858-c66d-4098-9c43-59af0359e603>
a <http://data.vlaanderen.be/ns/mandaat#Mandaat> ;
<http://mu.semte.ch/vocabularies/core/uuid> "e4b05858-c66d-4098-9c43-59af0359e603" ;
<http://www.w3.org/ns/org#role> <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ac134b9800b81da3c450d6b9605cef2> .
<http://data.lblod.info/id/mandaten/5147f880-b0a5-4145-ac01-db8323a5410d>
a <http://data.vlaanderen.be/ns/mandaat#Mandaat> ;
<http://mu.semte.ch/vocabularies/core/uuid> "5147f880-b0a5-4145-ac01-db8323a5410d" ;
<http://www.w3.org/ns/org#role> <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/180d13930d6f1a3938e0aa7fa9990002> .
}
}

View File

@@ -1,18 +0,0 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
INSERT DATA {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
<http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> a <http://lblod.data.gift/vocabularies/organisatie/EredienstBeroepen>;
mu:uuid "7d8e0c15-7726-4196-9416-6dc40ed858bb";
skos:prefLabel "Waarnemende Imam";
<http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/0637cccd657df25049af6c4580c6b2be>;
<http://www.w3.org/2004/02/skos/core#topConceptOf> <http://lblod.data.gift/concept-schemes/0637cccd657df25049af6c4580c6b2be>.
}
}

View File

@@ -1,61 +0,0 @@
DELETE {
GRAPH ?g {
?s ?p ?o .
}
} WHERE {
GRAPH ?g {
?s a <http://www.w3.org/ns/dcat#Dataset> ;
<http://purl.org/dc/terms/subject> <http://data.lblod.info/datasets/delta-producer/dumps/AdministrativeUnitsCacheGraphDump> ;
?p ?o .
}
}
;
DELETE {
GRAPH ?g {
?s ?p ?o .
}
} WHERE {
GRAPH ?g {
?s a <http://vocab.deri.ie/cogs#Job> ;
<http://redpencil.data.gift/vocabularies/tasks/operation> <http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/administrative-units> ;
?p ?o .
}
}
;
DELETE {
GRAPH ?g {
?s ?p ?o .
}
} WHERE {
GRAPH ?g {
?s a <http://vocab.deri.ie/cogs#Job> ;
<http://redpencil.data.gift/vocabularies/tasks/operation> <http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units> ;
?p ?o .
}
}
;
DELETE {
GRAPH ?g {
?s ?p ?o .
}
} WHERE {
GRAPH ?g {
?s a <http://vocab.deri.ie/cogs#Job> ;
<http://redpencil.data.gift/vocabularies/tasks/operation> <http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units> ;
?p ?o .
}
}
;
DELETE {
GRAPH ?g {
?s ?p ?o .
}
} WHERE {
GRAPH ?g {
?s a <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject> ;
<http://purl.org/dc/terms/publisher> <http://data.lblod.info/services/delta-production-json-diff-file-manager/administrative-units> ;
?p ?o .
}
}
;
CLEAR GRAPH <http://redpencil.data.gift/id/deltas/producer/administrative-units>

View File

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

View File

@@ -1,613 +0,0 @@
@prefix ns0: <http://data.lblod.info/vocabularies/erediensten/> .
@prefix ns1: <http://data.lblod.info/id/positiesBedienaar/> .
@prefix ns2: <http://data.lblod.info/id/besturenVanDeEredienst/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ns4: <http://www.w3.org/ns/org#> .
@prefix ns5: <http://mu.semte.ch/vocabularies/core/> .
<http://data.lblod.info/id/besturenVanDeEredienst/634801148DE5818A7C9F40E7>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/72c14871c7a0f28cd52ebeb73d6d0fee> .
<http://data.lblod.info/id/besturenVanDeEredienst/635153998DE5818A7C9F4191>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/203b6f9c7e6eec3f62860b378e8371b0> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374B7984B5FEAF28DEDE6D1>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/79a1d65018cd0f86fa5757f9594ed52b> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374C18E4B5FEAF28DEDE708>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/6436abc14a9615cfaa26f4dc7609bef8> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374E23A4B5FEAF28DEDE752>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/116c6e00577975a5f41d4789166549d4> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374FF364B5FEAF28DEDE7AD>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/4a0c024fae6dcfb732006eeacf926c1c> .
<http://data.lblod.info/id/besturenVanDeEredienst/637503DA4B5FEAF28DEDE7C3>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/0cde683248e90e543936deea015ec7f8> .
<http://data.lblod.info/id/besturenVanDeEredienst/63761DB14B5FEAF28DEDE877>
ns0:wordtBediendDoor ns1:e06b3e3d005d25e4a23459dd5773c00e .
<http://data.lblod.info/id/besturenVanDeEredienst/63761F764B5FEAF28DEDE899>
ns0:wordtBediendDoor ns1:a3d7cda7f4acad34682b8086d13ea397 .
<http://data.lblod.info/id/besturenVanDeEredienst/63232FE42F583C7A1CD0DC12>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/16c09cdc3608605b3ee88bf9ab9c7dac> .
<http://data.lblod.info/id/besturenVanDeEredienst/6363D12E8DE5818A7C9F43E2>
ns0:wordtBediendDoor ns1:a6735a9f75e9f30f8d31198e18e39192 .
<http://data.lblod.info/id/besturenVanDeEredienst/6363D3668DE5818A7C9F43FA>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/0351db31503375a8fb31b7089c65ec83> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374B61D4B5FEAF28DEDE6BB>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/85d28128b4cc9476fef4eeeffa2530a2> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374BD644B5FEAF28DEDE6FD>
ns0:wordtBediendDoor ns1:e39958a6e2d38e23b5669a3b9ae1e719 .
<http://data.lblod.info/id/besturenVanDeEredienst/6374C2514B5FEAF28DEDE713>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/594841e8ec952d28ee1f09bbe1d3890a> .
<http://data.lblod.info/id/besturenVanDeEredienst/6375F5414B5FEAF28DEDE80B>
ns0:wordtBediendDoor ns1:c1efedae090d2c4be97d529c73b5ae87 .
<http://data.lblod.info/id/besturenVanDeEredienst/6375FA014B5FEAF28DEDE82C>
ns0:wordtBediendDoor ns1:ef9ebb3d9429b24c87a6576bfe302d85 .
<http://data.lblod.info/id/besturenVanDeEredienst/63761E9B4B5FEAF28DEDE888>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/569b7a4720c5d44269ab96663f3f5021> .
ns2:ef77bb3094fdc4a7ed7e09551500acfe
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/453521f31bee624be96caa2f1a2e7048> .
ns2:a8faa182c59167da7551f40979dc5022
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/87db8210da3911674adf40d01076fd81> .
<http://data.lblod.info/id/besturenVanDeEredienst/934cb872a84a86ceb9a9e10abb1d08fa>
ns0:wordtBediendDoor ns1:c924a44f9163ec6c946505f5f687708d .
ns2:ca0daee18a29e187017bf236e26f1ec2
ns0:wordtBediendDoor ns1:cb4bf613bd82f99785df7aedb65b3367 .
ns2:f95b761af55091b491fd62bd6bed11dc
ns0:wordtBediendDoor ns1:d1dd10ca84303e547546f7e7a502dc6c .
<http://data.lblod.info/id/besturenVanDeEredienst/7e3fb673922f9495c48251f316c5c4ff>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/95222f20d3ff233e0623dc8c811375e4> .
ns2:c1c334a2cc56ac501badce5e879aec65
ns0:wordtBediendDoor ns1:b74b9e77b49bbe8f5be5766be677c9bb .
<http://data.lblod.info/id/besturenVanDeEredienst/6232329df9377210c3576b17e116de8b>
ns0:wordtBediendDoor ns1:bfe1868d6a41e073f114dd2efdcf51a5 .
<http://data.lblod.info/id/besturenVanDeEredienst/24ff08070bc1e47b498ab8139b9d3792>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/59b02bc348ce9c8b26fd2eb6b6a9bd86> .
ns2:a6e0531c6c4b5885552604163cfabfbc
ns0:wordtBediendDoor ns1:cdb151adeceb026fc5e81ea80d729391 .
<http://data.lblod.info/id/besturenVanDeEredienst/619a5721094b28807dca8d04de69e3e0>
ns0:wordtBediendDoor ns1:c94d252366917f598a19df33680bbb29 .
ns2:cd7d4208e8e6291d75b33d89e3a0a439
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/5a87bfd76cc6d2f582ef1272116c863a> .
ns2:a8d9f1a45c11c6761306bdf680349593
ns0:wordtBediendDoor ns1:fad9626cd2ab433ce884ef75d06e840b .
<http://data.lblod.info/id/besturenVanDeEredienst/4fd6da5f1e1ea6e60f611abc4df28456>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/9cea42c28a90ce1ac0cdf3bdb01199b8> .
<http://data.lblod.info/id/besturenVanDeEredienst/2732db1f6bf8eec96c093105fc4e199d>
ns0:wordtBediendDoor ns1:d5ef4ca7efebfdafc4d28d2d8ab019b1 .
<http://data.lblod.info/id/besturenVanDeEredienst/8f37ce5f576a898f5b281fa118a7d9a4>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/8ef8c30c7e682a8c56af185c91c898ad> .
<http://data.lblod.info/id/besturenVanDeEredienst/08fe04ba8cb033d7d1d59f85c31f9ee0>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/1903dde5ac84bece6238f20175ba583e> .
<http://data.lblod.info/id/besturenVanDeEredienst/8c46fc84fb7a11cca44bde007a0c081c>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/1bb5f658bd511ed2752ae4ad57ef8528> .
<http://data.lblod.info/id/besturenVanDeEredienst/104a6b6eabd0192afdeb70d3b517aef1>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/57bce94d3031b52f361a3c043b1678d9> .
ns2:a8880f3d8b482788c5f3adbf58f01b4f
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/776bc597d74bba0ad0c60c81b4c22529> .
ns2:adeaab8a02815bf2c5816165a45ad4c5
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/259b382ef9f0a8eaaf84954bc09e3f38> .
<http://data.lblod.info/id/besturenVanDeEredienst/7b0d877894765abf5052e12c7bed553e>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/09ee3daf174b1069b4ae66e31f5b8728> .
ns2:c7d6827eb88cd977146e72583461071b
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/77e3e5bcb167367015c391dfa91cb01f> .
<http://data.lblod.info/id/besturenVanDeEredienst/88cc9ab83a5a94caeb2f4b04615b20f2>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/8b98c482cb67f55c2fb7174a00cdf09d> .
<http://data.lblod.info/id/besturenVanDeEredienst/0f2a4604a962926d67518bb3846af1c9>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/5963146dc30cba248bb24e29b5002b78> .
ns2:b81199eddd02f291bd4c1a0e29e5b9c8
ns0:wordtBediendDoor ns1:cf320c8fb2e9db3a488b0ac016440f33 .
ns2:db46915e77fbf8f083e9861c802b2b13
ns0:wordtBediendDoor ns1:b6c9aeea4bf9daa1520156b9fe5a49e5 .
ns2:fd4ae252fffca29852354b12ef37b086
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/8eab113defa6ac21fd87c0828292e926> .
<http://data.lblod.info/id/besturenVanDeEredienst/7343155a8b9a107bdbd4b65cc6318d50>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/0aaf20e1103fec92356373dd7de19887> .
<http://data.lblod.info/id/besturenVanDeEredienst/58d6bea16bd86c7df65caa9625af97aa>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/46cac4be99a8036f729ddd2df0cbc3c4> .
<http://data.lblod.info/id/besturenVanDeEredienst/928335b5a7b1cb7850c7cc98574e9ec9>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/8c2ab509b1e9cfa3dba90f9a4cb3037d> .
ns2:b540096ac8be2c9c72dafd59e61080c5
ns0:wordtBediendDoor ns1:f9a134e17b7ac4a42a66b7b66d86d00b .
<http://data.lblod.info/id/besturenVanDeEredienst/6324158D2F583C7A1CD0DC1D>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/0a46fb4249e6a218b943a8f6fe1ac090> .
<http://data.lblod.info/id/besturenVanDeEredienst/6375EA424B5FEAF28DEDE7DE>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/19838c3b991ad9f816ef491d96a721d3> .
<http://data.lblod.info/id/besturenVanDeEredienst/6363B53D8DE5818A7C9F43BC>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/76419a6001ca12e313e13bde8840e405> .
<http://data.lblod.info/id/besturenVanDeEredienst/6363CCA78DE5818A7C9F43D2>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/60ae1e4b56e80af0b81a20b96d4187b1> .
<http://data.lblod.info/id/besturenVanDeEredienst/6364F1728DE5818A7C9F4413>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/1c1d1fd0c40ffe62076203d7ea2060a6> .
<http://data.lblod.info/id/besturenVanDeEredienst/636B7EE88DE5818A7C9F4485>
ns0:wordtBediendDoor ns1:d4505963c15a4dd1cc77b34977b727c0 .
<http://data.lblod.info/id/besturenVanDeEredienst/637227668DE5818A7C9F44B5>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/0a69b193cce1416d4d6366fff46add3f> .
<http://data.lblod.info/id/besturenVanDeEredienst/62C5879BD7779543F77795D5>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/41ae97e88af106e5c9ee3588adc9e2ba> .
<http://data.lblod.info/id/besturenVanDeEredienst/63515BEE8DE5818A7C9F41AB>
ns0:wordtBediendDoor ns1:f90bc6678d032b1203c3e003b05a903e .
<http://data.lblod.info/id/besturenVanDeEredienst/636391B88DE5818A7C9F437A>
ns0:wordtBediendDoor ns1:a1a4364ce6767907e600d8025c2f8cb9 .
<http://data.lblod.info/id/besturenVanDeEredienst/636393FC8DE5818A7C9F438A>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/5687522854e85ab6f4c324b273467ce4> .
<http://data.lblod.info/id/besturenVanDeEredienst/63761BDD4B5FEAF28DEDE86C>
ns0:wordtBediendDoor ns1:baa288870012628b450bd134175cb91a .
<http://data.lblod.info/id/besturenVanDeEredienst/6368FEE98DE5818A7C9F443C>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/031e9b8845e50e0f2484ed7eac94324e> .
<http://data.lblod.info/id/besturenVanDeEredienst/636917658DE5818A7C9F444C>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/233a795834c4f862342250b0c8647d15> .
<http://data.lblod.info/id/besturenVanDeEredienst/627D20211D2B7BB5B2CB04DB>
ns0:wordtBediendDoor ns1:f1ac3ad7a3cf88917b6ff453bcdae693 .
<http://data.lblod.info/id/besturenVanDeEredienst/62C43248D7779543F77795B4>
ns0:wordtBediendDoor ns1:e3c51e910902a9b4087f9d2dfe8629a2 .
<http://data.lblod.info/id/besturenVanDeEredienst/63563B398DE5818A7C9F423E>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/02c677db7c013653e475984bebf59b58> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374B6774B5FEAF28DEDE6C6>
ns0:wordtBediendDoor ns1:ad8e06f595ccd82c799c81e7838db45e .
<http://data.lblod.info/id/besturenVanDeEredienst/6374E2344B5FEAF28DEDE747>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/57fdb71d4feb243e727005e16d31d98a> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374E3B44B5FEAF28DEDE75E>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/2a425d7fa4022573cb4824e91e2f5264> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374E3B94B5FEAF28DEDE769>
ns0:wordtBediendDoor ns1:e32bf54030b9a31d84249386a289287a .
<http://data.lblod.info/id/besturenVanDeEredienst/6374F3664B5FEAF28DEDE786>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/0315bd04919b2884af8f3c0a8b820ba0> .
<http://data.lblod.info/id/besturenVanDeEredienst/637618584B5FEAF28DEDE85B>
ns0:wordtBediendDoor ns1:cf701aabf06d091083135506f7d8b785 .
<http://data.lblod.info/id/besturenVanDeEredienst/63639DA88DE5818A7C9F439E>
ns0:wordtBediendDoor ns1:f484ae309f3f981489724334f7a9e90b .
<http://data.lblod.info/id/besturenVanDeEredienst/6363A3E88DE5818A7C9F43B1>
ns0:wordtBediendDoor ns1:ebfd92d4fa2fb375fb407070e5275bc1 .
<http://data.lblod.info/id/besturenVanDeEredienst/6363C5998DE5818A7C9F43C7>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/638c32d8700a7c8891e7ae2ed1f86dfc> .
<http://data.lblod.info/id/besturenVanDeEredienst/6368FBF28DE5818A7C9F442C>
ns0:wordtBediendDoor ns1:d82546b18b55081cc9c8e46aff579c75 .
<http://data.lblod.info/id/besturenVanDeEredienst/636A5AAE8DE5818A7C9F446D>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/87e2496b12c3a58672970e4db4a013ed> .
<http://data.lblod.info/id/besturenVanDeEredienst/636A57CB8DE5818A7C9F445B>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/6c177d4df98c1ae795146245e1b8ded3> .
<http://data.lblod.info/id/besturenVanDeEredienst/62C427EBD7779543F777959E>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/41ee849be721d50f1012987ec14cf4d5> .
<http://data.lblod.info/id/besturenVanDeEredienst/62C42D98D7779543F77795A9>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/36357858aff9e011120ce12a4c9a735d> .
<http://data.lblod.info/id/positiesBedienaar/72c14871c7a0f28cd52ebeb73d6d0fee>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "72c14871c7a0f28cd52ebeb73d6d0fee" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/203b6f9c7e6eec3f62860b378e8371b0>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "203b6f9c7e6eec3f62860b378e8371b0" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/79a1d65018cd0f86fa5757f9594ed52b>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "79a1d65018cd0f86fa5757f9594ed52b" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/6436abc14a9615cfaa26f4dc7609bef8>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "6436abc14a9615cfaa26f4dc7609bef8" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/116c6e00577975a5f41d4789166549d4>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "116c6e00577975a5f41d4789166549d4" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/4a0c024fae6dcfb732006eeacf926c1c>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "4a0c024fae6dcfb732006eeacf926c1c" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/0cde683248e90e543936deea015ec7f8>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "0cde683248e90e543936deea015ec7f8" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:e06b3e3d005d25e4a23459dd5773c00e
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "e06b3e3d005d25e4a23459dd5773c00e" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:a3d7cda7f4acad34682b8086d13ea397
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "a3d7cda7f4acad34682b8086d13ea397" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/16c09cdc3608605b3ee88bf9ab9c7dac>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "16c09cdc3608605b3ee88bf9ab9c7dac" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:a6735a9f75e9f30f8d31198e18e39192
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "a6735a9f75e9f30f8d31198e18e39192" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/0351db31503375a8fb31b7089c65ec83>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "0351db31503375a8fb31b7089c65ec83" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/85d28128b4cc9476fef4eeeffa2530a2>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "85d28128b4cc9476fef4eeeffa2530a2" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:e39958a6e2d38e23b5669a3b9ae1e719
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "e39958a6e2d38e23b5669a3b9ae1e719" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/594841e8ec952d28ee1f09bbe1d3890a>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "594841e8ec952d28ee1f09bbe1d3890a" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:c1efedae090d2c4be97d529c73b5ae87
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "c1efedae090d2c4be97d529c73b5ae87" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:ef9ebb3d9429b24c87a6576bfe302d85
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "ef9ebb3d9429b24c87a6576bfe302d85" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/569b7a4720c5d44269ab96663f3f5021>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "569b7a4720c5d44269ab96663f3f5021" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/453521f31bee624be96caa2f1a2e7048>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "453521f31bee624be96caa2f1a2e7048" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/87db8210da3911674adf40d01076fd81>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "87db8210da3911674adf40d01076fd81" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:c924a44f9163ec6c946505f5f687708d
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "c924a44f9163ec6c946505f5f687708d" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:cb4bf613bd82f99785df7aedb65b3367
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "cb4bf613bd82f99785df7aedb65b3367" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:d1dd10ca84303e547546f7e7a502dc6c
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "d1dd10ca84303e547546f7e7a502dc6c" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/95222f20d3ff233e0623dc8c811375e4>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "95222f20d3ff233e0623dc8c811375e4" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:b74b9e77b49bbe8f5be5766be677c9bb
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "b74b9e77b49bbe8f5be5766be677c9bb" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:bfe1868d6a41e073f114dd2efdcf51a5
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "bfe1868d6a41e073f114dd2efdcf51a5" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/59b02bc348ce9c8b26fd2eb6b6a9bd86>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "59b02bc348ce9c8b26fd2eb6b6a9bd86" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:cdb151adeceb026fc5e81ea80d729391
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "cdb151adeceb026fc5e81ea80d729391" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:c94d252366917f598a19df33680bbb29
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "c94d252366917f598a19df33680bbb29" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/5a87bfd76cc6d2f582ef1272116c863a>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "5a87bfd76cc6d2f582ef1272116c863a" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:fad9626cd2ab433ce884ef75d06e840b
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "fad9626cd2ab433ce884ef75d06e840b" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/9cea42c28a90ce1ac0cdf3bdb01199b8>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "9cea42c28a90ce1ac0cdf3bdb01199b8" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:d5ef4ca7efebfdafc4d28d2d8ab019b1
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "d5ef4ca7efebfdafc4d28d2d8ab019b1" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/8ef8c30c7e682a8c56af185c91c898ad>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "8ef8c30c7e682a8c56af185c91c898ad" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/1903dde5ac84bece6238f20175ba583e>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "1903dde5ac84bece6238f20175ba583e" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/1bb5f658bd511ed2752ae4ad57ef8528>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "1bb5f658bd511ed2752ae4ad57ef8528" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/57bce94d3031b52f361a3c043b1678d9>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "57bce94d3031b52f361a3c043b1678d9" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/776bc597d74bba0ad0c60c81b4c22529>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "776bc597d74bba0ad0c60c81b4c22529" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/259b382ef9f0a8eaaf84954bc09e3f38>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "259b382ef9f0a8eaaf84954bc09e3f38" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/09ee3daf174b1069b4ae66e31f5b8728>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "09ee3daf174b1069b4ae66e31f5b8728" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/77e3e5bcb167367015c391dfa91cb01f>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "77e3e5bcb167367015c391dfa91cb01f" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/8b98c482cb67f55c2fb7174a00cdf09d>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "8b98c482cb67f55c2fb7174a00cdf09d" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/5963146dc30cba248bb24e29b5002b78>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "5963146dc30cba248bb24e29b5002b78" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:cf320c8fb2e9db3a488b0ac016440f33
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "cf320c8fb2e9db3a488b0ac016440f33" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:b6c9aeea4bf9daa1520156b9fe5a49e5
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "b6c9aeea4bf9daa1520156b9fe5a49e5" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/8eab113defa6ac21fd87c0828292e926>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "8eab113defa6ac21fd87c0828292e926" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/0aaf20e1103fec92356373dd7de19887>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "0aaf20e1103fec92356373dd7de19887" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/46cac4be99a8036f729ddd2df0cbc3c4>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "46cac4be99a8036f729ddd2df0cbc3c4" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/8c2ab509b1e9cfa3dba90f9a4cb3037d>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "8c2ab509b1e9cfa3dba90f9a4cb3037d" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:f9a134e17b7ac4a42a66b7b66d86d00b
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "f9a134e17b7ac4a42a66b7b66d86d00b" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/0a46fb4249e6a218b943a8f6fe1ac090>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "0a46fb4249e6a218b943a8f6fe1ac090" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/19838c3b991ad9f816ef491d96a721d3>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "19838c3b991ad9f816ef491d96a721d3" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/76419a6001ca12e313e13bde8840e405>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "76419a6001ca12e313e13bde8840e405" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/60ae1e4b56e80af0b81a20b96d4187b1>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "60ae1e4b56e80af0b81a20b96d4187b1" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/1c1d1fd0c40ffe62076203d7ea2060a6>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "1c1d1fd0c40ffe62076203d7ea2060a6" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:d4505963c15a4dd1cc77b34977b727c0
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "d4505963c15a4dd1cc77b34977b727c0" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/0a69b193cce1416d4d6366fff46add3f>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "0a69b193cce1416d4d6366fff46add3f" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/41ae97e88af106e5c9ee3588adc9e2ba>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "41ae97e88af106e5c9ee3588adc9e2ba" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:f90bc6678d032b1203c3e003b05a903e
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "f90bc6678d032b1203c3e003b05a903e" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:a1a4364ce6767907e600d8025c2f8cb9
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "a1a4364ce6767907e600d8025c2f8cb9" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/5687522854e85ab6f4c324b273467ce4>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "5687522854e85ab6f4c324b273467ce4" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:baa288870012628b450bd134175cb91a
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "baa288870012628b450bd134175cb91a" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/031e9b8845e50e0f2484ed7eac94324e>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "031e9b8845e50e0f2484ed7eac94324e" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/233a795834c4f862342250b0c8647d15>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "233a795834c4f862342250b0c8647d15" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:f1ac3ad7a3cf88917b6ff453bcdae693
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "f1ac3ad7a3cf88917b6ff453bcdae693" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:e3c51e910902a9b4087f9d2dfe8629a2
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "e3c51e910902a9b4087f9d2dfe8629a2" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/02c677db7c013653e475984bebf59b58>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "02c677db7c013653e475984bebf59b58" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:ad8e06f595ccd82c799c81e7838db45e
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "ad8e06f595ccd82c799c81e7838db45e" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/57fdb71d4feb243e727005e16d31d98a>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "57fdb71d4feb243e727005e16d31d98a" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/2a425d7fa4022573cb4824e91e2f5264>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "2a425d7fa4022573cb4824e91e2f5264" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:e32bf54030b9a31d84249386a289287a
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "e32bf54030b9a31d84249386a289287a" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/0315bd04919b2884af8f3c0a8b820ba0>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "0315bd04919b2884af8f3c0a8b820ba0" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:cf701aabf06d091083135506f7d8b785
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "cf701aabf06d091083135506f7d8b785" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:f484ae309f3f981489724334f7a9e90b
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "f484ae309f3f981489724334f7a9e90b" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:ebfd92d4fa2fb375fb407070e5275bc1
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "ebfd92d4fa2fb375fb407070e5275bc1" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/638c32d8700a7c8891e7ae2ed1f86dfc>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "638c32d8700a7c8891e7ae2ed1f86dfc" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:d82546b18b55081cc9c8e46aff579c75
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "d82546b18b55081cc9c8e46aff579c75" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/87e2496b12c3a58672970e4db4a013ed>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "87e2496b12c3a58672970e4db4a013ed" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/6c177d4df98c1ae795146245e1b8ded3>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "6c177d4df98c1ae795146245e1b8ded3" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/41ee849be721d50f1012987ec14cf4d5>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "41ee849be721d50f1012987ec14cf4d5" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/36357858aff9e011120ce12a4c9a735d>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "36357858aff9e011120ce12a4c9a735d" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:c654c9e1b47c7acd6c994f9213c02671
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "c654c9e1b47c7acd6c994f9213c02671" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:face7445fb50e36d72b142e862381b05
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "face7445fb50e36d72b142e862381b05" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:f24f1b4a152c70b2dbe51ad0c3171de3
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "f24f1b4a152c70b2dbe51ad0c3171de3" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/09bbb9454457c17975696ac680349a0a>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "09bbb9454457c17975696ac680349a0a" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/809e08adf06dad4286658ba80dcb3ec0>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "809e08adf06dad4286658ba80dcb3ec0" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/014c834f16b6e3780d6e0613e1b469e1>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "014c834f16b6e3780d6e0613e1b469e1" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/2715eda6c886e5931ae16e7bc877db6c>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "2715eda6c886e5931ae16e7bc877db6c" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/06c83ff34ec4231674e90095e24fbb12>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "06c83ff34ec4231674e90095e24fbb12" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/9e59891d2fff60c9a325c0760263ac53>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "9e59891d2fff60c9a325c0760263ac53" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/8eccf8c0577135ac23cfc2514d4e41ce>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "8eccf8c0577135ac23cfc2514d4e41ce" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:dd14c36fdcb4c93c80d8b8b6a9d7c400
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "dd14c36fdcb4c93c80d8b8b6a9d7c400" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/7708bcfebdd905bd82c3dddd7861e7a1>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "7708bcfebdd905bd82c3dddd7861e7a1" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/49641427d736deffcdcbe2d086a6238f>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "49641427d736deffcdcbe2d086a6238f" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/5f0961a539d8dc48fcfef822f71d735c>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "5f0961a539d8dc48fcfef822f71d735c" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/5b18d66f489d69900a22782a1fd9f273>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "5b18d66f489d69900a22782a1fd9f273" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/6f10f26c5cfbe3398b24a5d0cb360ee2>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "6f10f26c5cfbe3398b24a5d0cb360ee2" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/87fb9d24420b7def7d58e9eb5d014145>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "87fb9d24420b7def7d58e9eb5d014145" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:d45e2fdff3725615b024f7b71fadef7e
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "d45e2fdff3725615b024f7b71fadef7e" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
ns1:c275c2b71b28e21ccaf2e16582f59e0d
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "c275c2b71b28e21ccaf2e16582f59e0d" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/positiesBedienaar/25a8dd65997f9ba30e7416bbf774594f>
rdf:type ns4:Post , ns0:PositieBedienaar ;
ns5:uuid "25a8dd65997f9ba30e7416bbf774594f" ;
ns0:functie <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb> .
<http://data.lblod.info/id/besturenVanDeEredienst/635155C38DE5818A7C9F41A0>
ns0:wordtBediendDoor ns1:c654c9e1b47c7acd6c994f9213c02671 .
<http://data.lblod.info/id/besturenVanDeEredienst/63515FD38DE5818A7C9F41CA>
ns0:wordtBediendDoor ns1:face7445fb50e36d72b142e862381b05 .
<http://data.lblod.info/id/besturenVanDeEredienst/63523E848DE5818A7C9F41EE>
ns0:wordtBediendDoor ns1:f24f1b4a152c70b2dbe51ad0c3171de3 .
<http://data.lblod.info/id/besturenVanDeEredienst/6374B8B54B5FEAF28DEDE6DC>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/09bbb9454457c17975696ac680349a0a> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374BABB4B5FEAF28DEDE6E7>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/809e08adf06dad4286658ba80dcb3ec0> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374BBF34B5FEAF28DEDE6F2>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/014c834f16b6e3780d6e0613e1b469e1> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374DCB44B5FEAF28DEDE720>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/2715eda6c886e5931ae16e7bc877db6c> .
<http://data.lblod.info/id/besturenVanDeEredienst/6375F1864B5FEAF28DEDE7F5>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/06c83ff34ec4231674e90095e24fbb12> .
<http://data.lblod.info/id/besturenVanDeEredienst/6375F3EE4B5FEAF28DEDE800>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/9e59891d2fff60c9a325c0760263ac53> .
<http://data.lblod.info/id/besturenVanDeEredienst/6375F8724B5FEAF28DEDE821>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/8eccf8c0577135ac23cfc2514d4e41ce> .
<http://data.lblod.info/id/besturenVanDeEredienst/62B968EDD7779543F777954A>
ns0:wordtBediendDoor ns1:dd14c36fdcb4c93c80d8b8b6a9d7c400 .
<http://data.lblod.info/id/besturenVanDeEredienst/635152648DE5818A7C9F4182>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/7708bcfebdd905bd82c3dddd7861e7a1> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374F42C4B5FEAF28DEDE791>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/49641427d736deffcdcbe2d086a6238f> .
<http://data.lblod.info/id/besturenVanDeEredienst/6374F9B54B5FEAF28DEDE79C>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/5f0961a539d8dc48fcfef822f71d735c> .
<http://data.lblod.info/id/besturenVanDeEredienst/637501AF4B5FEAF28DEDE7B8>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/5b18d66f489d69900a22782a1fd9f273> .
<http://data.lblod.info/id/besturenVanDeEredienst/6375F6894B5FEAF28DEDE816>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/6f10f26c5cfbe3398b24a5d0cb360ee2> .
<http://data.lblod.info/id/besturenVanDeEredienst/62B9BBA5D7779543F7779555>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/87fb9d24420b7def7d58e9eb5d014145> .
<http://data.lblod.info/id/besturenVanDeEredienst/62C7DAFED7779543F77795E5>
ns0:wordtBediendDoor ns1:d45e2fdff3725615b024f7b71fadef7e .
<http://data.lblod.info/id/besturenVanDeEredienst/63496D8E8DE5818A7C9F4103>
ns0:wordtBediendDoor ns1:c275c2b71b28e21ccaf2e16582f59e0d .
<http://data.lblod.info/id/besturenVanDeEredienst/6316F9752F583C7A1CD0DBD9>
ns0:wordtBediendDoor <http://data.lblod.info/id/positiesBedienaar/25a8dd65997f9ba30e7416bbf774594f> .

View File

@@ -1,50 +0,0 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?bestuur ?pbestuur ?obestuur .
?primarySite ?pprimarySite ?oprimarySite .
?address ?paddress ?oaddress .
?contactPoint ?pcontactPoint ?ocontactPoint .
?identifier ?pidentifier ?oidentifier .
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
BIND(<http://data.lblod.info/id/besturenVanDeEredienst/d6961c4e96350fd77b0706df54986272> as ?bestuur)
?bestuur ?pbestuur ?obestuur .
OPTIONAL {
?bestuur org:hasPrimarySite ?primarySite .
OPTIONAL {
?primarySite organisatie:bestaatUit ?address .
?address ?paddress ?oaddress .
}
OPTIONAL {
?primarySite org:siteAddress ?contactPoint .
?contactPoint ?pcontactPoint ?ocontactPoint .
}
?primarySite ?pprimarySite ?oprimarySite .
}
OPTIONAL {
?bestuur adms:identifier ?identifier .
OPTIONAL {
?identifier generiek:gestructureerdeIdentificator ?structuredIdentifier .
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
}
?identifier ?pidentifier ?oidentifier .
}
}
}

View File

@@ -1,37 +0,0 @@
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX concepts: <http://lblod.data.gift/concepts/>
PREFIX bestuur: <http://data.lblod.info/id/besturenVanDeEredienst/>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX contacthub: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX ce: <http://data.lblod.info/id/veranderingsgebeurtenissen/>
PREFIX cer: <http://data.lblod.info/id/veranderingsgebeurtenis-resultaten/>
PREFIX m8g: <http://data.europa.eu/m8g/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX eli: <http://data.europa.eu/eli/ontology#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
DELETE WHERE {
graph ?g {
?changeEvent a <http://www.w3.org/ns/org#ChangeEvent>;
<http://lblod.data.gift/vocabularies/organisatie/veranderingsgebeurtenisResultaat> ?changeEventResult;
mu:uuid ?uuidChangeEvent;
?p ?o.
?changeEventResult a <http://lblod.data.gift/vocabularies/organisatie/VeranderingsgebeurtenisResultaat>;
mu:uuid ?uuidChangeEventResult;
?cP ?cO.
filter(?uuidChangeEvent ="63E4B56D1C2DE4F40F38C089")
}
}

View File

@@ -1,21 +0,0 @@
DELETE {
GRAPH ?g {
?s ?p ?o .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/jobs> {
?s ?p ?o .
}
} WHERE {
GRAPH ?g {
VALUES ?type {
<http://vocab.deri.ie/cogs#Job>
<http://redpencil.data.gift/vocabularies/tasks/Task>
<http://open-services.net/ns/core#Error>
<http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#DataContainer>
}
?s a ?type ;
?p ?o .
}
}

View File

@@ -1 +0,0 @@
delete where { graph ?g{ ?s a <http://mu.semte.ch/vocabularies/authorization/ElasticsearchIndex>; ?p ?o } }

View File

@@ -1,44 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s ?p ?o
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?o
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a ?type; ?p ?o.
filter (?type in (
ere:EredienstMandataris,
ere:BestuurVanDeEredienst,
ere:PositieBedienaar,
ere:BetrokkenLokaleBesturen,
ere:VerbondenJuridischeStructuren,
ere:RolBedienaar,
ere:EredienstBestuurseenheid,
ere:VoorwaardenBedienaar,
ere:CentraalBestuurVanDeEredienst,
ere:RepresentatiefOrgaan
))
}
}

View File

@@ -1,90 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?governingBody ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?governingBody ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?governingBody <http://www.w3.org/ns/org#hasPost> ?post; ?p ?o.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://www.w3.org/ns/org#holds> ?post.
}
}
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?specialization ?specializationP ?specializationO.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?specialization ?specializationP ?specializationO.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?specialization ?specializationP ?specializationO.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?governingBody generiek:isTijdspecialisatieVan ?specialization.
}
}
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?bestuur ?bestuurP ?bestuurO.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?bestuur ?bestuurP ?bestuurO.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?bestuur ?bestuurP ?bestuurO.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?specialization besluit:bestuurt ?bestuur.
}
}
}
}

View File

@@ -1,73 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?governingBody ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?governingBody ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?governingBody <http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor>
?post; ?p ?o.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://www.w3.org/ns/org#holds> ?post.
}
}
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?post a ?type;
mu:uuid ?uuid;
<http://www.w3.org/ns/org#role> ?role.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?post a ?type; mu:uuid ?uuid;
<http://www.w3.org/ns/org#role> ?role.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?post a ?type;
mu:uuid ?uuid;
<http://www.w3.org/ns/org#role> ?role.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://www.w3.org/ns/org#holds> ?post.
}
}
}
}

View File

@@ -1,93 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?governingBody ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?governingBody ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?governingBody <http://data.lblod.info/vocabularies/leidinggevenden/heeftBestuursfunctie> ?post; ?p ?o.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://www.w3.org/ns/org#holds> ?post.
}
}
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?specialization ?specializationP ?specializationO.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?specialization ?specializationP ?specializationO.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?specialization ?specializationP ?specializationO.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?governingBody generiek:isTijdspecialisatieVan ?specialization.
}
}
}
}
;
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?bestuur ?bestuurP ?bestuurO.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?bestuur ?bestuurP ?bestuurO.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?bestuur besluit:bestuurt ?s;?bestuurP ?bestuurO.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?o.
}
}
}
}

View File

@@ -1,36 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> ?bestrokke.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> ?bestrokke.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s <http://data.lblod.info/vocabularies/erediensten/betrokkenBestuur> ?bestrokke.
}
}

View File

@@ -1,87 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?resultingOrganization a ?type.
}
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s ext:resultingOrganization ?resultingOrganization.
?s ?p ?o.
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?resultingOrganization a ?type.
}
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s <http://www.w3.org/ns/org#originalOrganization> ?resultingOrganization.
?s ?p ?o.
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?resultingOrganization a ?type.
}
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s org:resultingOrganization ?resultingOrganization.
?s ?p ?o.
}
}

View File

@@ -1,76 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek>
INSERT {
graph <http://mu.semte.ch/graphs/worship-service> {
?person a person:Person;
mu:uuid ?uuid;
foaf:givenName ?givenName;
foaf:familyName ?familyName;
<http://data.vlaanderen.be/ns/mandaat#isAangesteldAls> ?isAangesteldAls;
persoon:gebruikteVoornaam ?firstNameUsed.
}
}
WHERE {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?person a person:Person;
mu:uuid ?uuid;
foaf:givenName ?givenName;
foaf:familyName ?familyName.
optional {?person persoon:gebruikteVoornaam ?firstNameUsed. }
optional {?person <http://data.vlaanderen.be/ns/mandaat#isAangesteldAls> ?isAangesteldAls.}
filter (exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
# delete orphans
DELETE {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?person a person:Person;
foaf:givenName ?givenName;
foaf:familyName ?familyName;
<http://data.vlaanderen.be/ns/mandaat#isAangesteldAls> ?isAangesteldAls;
persoon:gebruikteVoornaam ?firstNameUsed.
}
}
WHERE {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?person a person:Person;
foaf:givenName ?givenName;
foaf:familyName ?familyName.
optional{?person persoon:gebruikteVoornaam ?firstNameUsed.}
optional {?person <http://data.vlaanderen.be/ns/mandaat#isAangesteldAls> ?isAangesteldAls.}
FILTER((NOT EXISTS { ?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person. })
&& (NOT EXISTS { ?ministers <http://www.w3.org/ns/org#heldBy> ?person. }))
}
}

View File

@@ -1,290 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX schema: <http://schema.org/>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
PREFIX locn: <ttp://www.w3.org/ns/locn#>
# move geboorte to private graph
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s ?p ?o
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s ?p ?o
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a <https://data.vlaanderen.be/ns/persoon#Geboorte>; ?p ?o.
}
}
;
DELETE {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?contactPoint ?p ?o.
?addr ?x ?y.
}
}
insert {
graph <http://mu.semte.ch/graphs/worship-service> {
?contactPoint ?p ?o.
?addr ?x ?y.
}
}
where {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?contactPoint ?p ?o.
optional {
?contactPoint <http://www.w3.org/ns/locn#address> ?addr.
?addr ?x ?y.
}
filter (exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?s <http://schema.org/contactPoint> ?contactPoint.
}
})
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?primarySite <http://www.w3.org/ns/org#siteAddress> ?siteAddr; ?p ?o.
?siteAddr ?x ?y.
?addr ?addrP ?addrO.
?locAddr ?locP ?locO
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?primarySite <http://www.w3.org/ns/org#siteAddress> ?siteAddr; ?p ?o.
?siteAddr ?x ?y.
?addr ?addrP ?addrO.
?locAddr ?locP ?locO
}
}
Where {
Graph <http://mu.semte.ch/graphs/organisatieportaal> {
?primarySite <http://www.w3.org/ns/org#siteAddress> ?siteAddr;
?p ?o.
?siteAddr ?x ?y.
optional {
?siteAddr locn:address ?locAddr .
?locAddr ?locP ?locO.
}
optional {
?primarySite organisatie:bestaatUit ?addr.
?addr ?addrP ?addrO.
}
filter (exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?s <http://www.w3.org/ns/org#hasPrimarySite> ?primarySite.
}
}
)
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a ?type; ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s a ?type; ?p ?o.
}
}
Where {
Graph <http://mu.semte.ch/graphs/organisatieportaal> {
?s a ?type; ?p ?o.
filter (?type in(<http://www.w3.org/ns/org#Site>,
<http://www.w3.org/ns/locn#Address>,
<http://schema.org/ContactPoint>
)
&& exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?x ?y ?z.
filter(?z=?s)
}
}
)
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?primarySite <https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?bestaatUit; ?p ?o.
?bestaatUit ?bestaatUitP ?bestaatUitO.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?primarySite <https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?bestaatUit; ?p ?o.
?bestaatUit ?bestaatUitP ?bestaatUitO.
}
}
Where {
Graph <http://mu.semte.ch/graphs/organisatieportaal> {
?primarySite <https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?bestaatUit; ?p ?o.
?bestaatUit ?bestaatUitP ?bestaatUitO.
filter (exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?unit <http://www.w3.org/ns/org#hasPrimarySite> ?primarySite.
}
}
)
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a ?type; ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?s a ?type; ?p ?o.
}
}
Where {
Graph <http://mu.semte.ch/graphs/organisatieportaal> {
?s a ?type; ?p ?o.
filter (?type in(<http://www.w3.org/ns/prov#Location>,
<http://www.w3.org/ns/person#Person>,
<http://xmlns.com/foaf/0.1/Image>,
<http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>
)
)
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>;
mu:uuid ?uuid;
<http://www.w3.org/ns/org#classification> ?classification;
org:hasSubOrganization ?subOrg;
skos:prefLabel ?name.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>;
mu:uuid ?uuid;
<http://www.w3.org/ns/org#classification> ?classification;
org:hasSubOrganization ?subOrg;
skos:prefLabel ?name.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>;
<http://www.w3.org/ns/org#classification> ?classification;
mu:uuid ?uuid;
org:hasSubOrganization ?subOrg;
skos:prefLabel ?name.
filter(?classification in (
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>
))
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>;
mu:uuid ?uuid;
<http://www.w3.org/ns/org#classification> ?classification;
skos:prefLabel ?name.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>;
mu:uuid ?uuid;
<http://www.w3.org/ns/org#classification> ?classification;
skos:prefLabel ?name.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>;
<http://www.w3.org/ns/org#classification> ?classification;
mu:uuid ?uuid;
skos:prefLabel ?name.
filter(?classification in (
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>
)&& exists {
graph <http://mu.semte.ch/graphs/shared> {
?subOrg org:hasSubOrganization ?s .
}
})
}
}

View File

@@ -1,40 +0,0 @@
delete {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?s ?p ?o
}
}
insert {
graph <http://mu.semte.ch/graphs/public> {
?s ?p ?o
}
}
where {
graph <http://mu.semte.ch/graphs/organisatieportaal> {
?s a ?type; ?p ?o.
filter (?type in (
<http://mu.semte.ch/vocabularies/ext/GeslachtCode>,
<http://data.lblod.info/vocabularies/leidinggevenden/FunctionarisStatusCode>,
<http://lblod.data.gift/vocabularies/organisatie/OrganisatieStatusCode>,
<http://lblod.data.gift/vocabularies/organisatie/BestuursfunctieCode>,
<http://lblod.data.gift/vocabularies/organisatie/BestuursorgaanClassificatieCode>,
<http://lblod.data.gift/vocabularies/organisatie/MandatarisStatusCode>,
<http://lblod.data.gift/vocabularies/organisatie/BestuurseenheidClassificatieCode>,
<http://lblod.data.gift/vocabularies/organisatie/TypeEredienst>,
<http://www.w3.org/2004/02/skos/core#ConceptScheme>,
<http://lblod.data.gift/vocabularies/organisatie/BedienaarFinanceringCode>,
<http://www.w3.org/2004/02/skos/core#Concept>,
<http://publications.europa.eu/ontology/euvoc#Country>,
<http://lblod.data.gift/vocabularies/organisatie/TypeVestiging>,
<http://lblod.data.gift/vocabularies/organisatie/HelftVerkiezing>,
<http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis>,
<http://lblod.data.gift/vocabularies/organisatie/TypeBetrokkenheid>,
<http://lblod.data.gift/vocabularies/organisatie/VoorwaardenBedienaarCriterium>,
<http://lblod.data.gift/vocabularies/organisatie/BedienaarCriteriumBewijsstuk>,
<http://lblod.data.gift/vocabularies/organisatie/EredienstBeroepen>,
<http://lblod.data.gift/vocabularies/organisatie/Rechtsvormtype>,
<http://www.w3.org/ns/org#Role>
))
}
}

View File

@@ -1,3 +0,0 @@
# must be the latest to run
MOVE <http://mu.semte.ch/graphs/organisatieportaal> TO <http://mu.semte.ch/graphs/administrative-unit>

View File

@@ -1,44 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
<http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> besluit:Bestuurseenheid .
<http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> mu:uuid "141d9d6b-54af-4d17-b313-8d1c30bc3f5b" .
<http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> skos:prefLabel "Agentschap Binnenlands Bestuur" .
<http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> dcterms:identifier "OVO001835" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> mu:uuid "d39fe09e-d339-4e43-8680-dbbcfb3d3470" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:familyName "Lezer" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:account <http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> mu:uuid "3a91ff60-07c1-4136-ac5e-55cf401e0989" .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> ext:sessionRole "ABBOrganisatiePortaalGebruiker-lezer" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> mu:uuid "d39fe09e-d339-4e43-8680-dbbcfb3d3471" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:familyName "Editeerder" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:account <http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> mu:uuid "3a91ff60-07c1-4136-ac5e-55cf401e0957" .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> ext:sessionRole "ABBOrganisatiePortaalGebruiker-editeerder" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> mu:uuid "d39fe09e-d339-4e43-8680-dbbcfb3d3472" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:familyName "Beheerder" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:account <http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> mu:uuid "3a91ff60-07c1-4136-ac5e-55cf401e0958" .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
}
}

View File

@@ -1,42 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> ext:sessionRole "ABBOrganisatiePortaalGebruiker-beheerder" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> mu:uuid "2fe9885b-d058-4059-b036-69b54444273d" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:familyName "WorshipLezer" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:account <http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> mu:uuid "8d411fea-5bf0-4925-ba97-14b2223f65ea" .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> ext:sessionRole "ABBOrganisatiePortaalErediensten-lezer" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> mu:uuid "4925580c-a1a9-43d4-b3f6-10bd7ff57e25" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:familyName "WorshipEditeerder" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:account <http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> mu:uuid "fe45b266-715c-481e-9a97-a70f6121166c" .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> ext:sessionRole "ABBOrganisatiePortaalErediensten-editeerder" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> mu:uuid "f3610493-f6e1-4490-9723-628fe0213491" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:familyName "WorshipBeheerder" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:account <http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> mu:uuid "2a88a4b4-4672-45eb-b072-c930bf3b40ae" .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> ext:sessionRole "ABBOrganisatiePortaalErediensten-beheerder" .
}
}

View File

@@ -1,30 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/organizations/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> {
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> mu:uuid "d39fe09e-d339-4e43-8680-dbbcfb3d3470" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:familyName "Lezer" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3470> foaf:account <http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> mu:uuid "3a91ff60-07c1-4136-ac5e-55cf401e0989" .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0989> ext:sessionRole "ABBOrganisatiePortaalGebruiker-lezer" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> mu:uuid "d39fe09e-d339-4e43-8680-dbbcfb3d3471" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:familyName "Editeerder" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3471> foaf:account <http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> mu:uuid "3a91ff60-07c1-4136-ac5e-55cf401e0957" .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
}
}

View File

@@ -1,53 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/organizations/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> {
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0957> ext:sessionRole "ABBOrganisatiePortaalGebruiker-editeerder" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> mu:uuid "d39fe09e-d339-4e43-8680-dbbcfb3d3472" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:familyName "Beheerder" .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> foaf:account <http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> mu:uuid "3a91ff60-07c1-4136-ac5e-55cf401e0958" .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> ext:sessionRole "ABBOrganisatiePortaalGebruiker-beheerder" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> mu:uuid "2fe9885b-d058-4059-b036-69b54444273d" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:familyName "WorshipLezer" .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/2fe9885b-d058-4059-b036-69b54444273d> foaf:account <http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> mu:uuid "8d411fea-5bf0-4925-ba97-14b2223f65ea" .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/8d411fea-5bf0-4925-ba97-14b2223f65ea> ext:sessionRole "ABBOrganisatiePortaalErediensten-lezer" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> mu:uuid "4925580c-a1a9-43d4-b3f6-10bd7ff57e25" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:familyName "WorshipEditeerder" .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/4925580c-a1a9-43d4-b3f6-10bd7ff57e25> foaf:account <http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> mu:uuid "fe45b266-715c-481e-9a97-a70f6121166c" .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/fe45b266-715c-481e-9a97-a70f6121166c> ext:sessionRole "ABBOrganisatiePortaalErediensten-editeerder" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> mu:uuid "f3610493-f6e1-4490-9723-628fe0213491" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:familyName "WorshipBeheerder" .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> foaf:account <http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> mu:uuid "2a88a4b4-4672-45eb-b072-c930bf3b40ae" .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> ext:sessionRole "ABBOrganisatiePortaalErediensten-beheerder" .
}
}

View File

@@ -1,23 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/organizations/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> {
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> mu:uuid "6928a160-f3fc-4b46-bae8-fb72a0ae833e" .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:familyName "BothRoles" .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:account <http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> mu:uuid "cd52ed34-7bcd-41df-a7d4-c805c1d1a197" .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> ext:sessionRole "ABBOrganisatiePortaalErediensten-beheerder",
"ABBOrganisatiePortaalGebruiker-beheerder" .
}
}

View File

@@ -1,22 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:Person .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> mu:uuid "6928a160-f3fc-4b46-bae8-fb72a0ae833e" .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:firstName "Josephine" .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:familyName "BothRoles" .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:member <http://data.lblod.info/id/bestuurseenheden/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> .
<http://data.lblod.info/id/persoon/6928a160-f3fc-4b46-bae8-fb72a0ae833e> foaf:account <http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> foaf:OnlineAccount .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> mu:uuid "cd52ed34-7bcd-41df-a7d4-c805c1d1a197" .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> foaf:accountServiceHomepage <https://github.com/lblod/mock-login-service> .
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> ext:sessionRole "ABBOrganisatiePortaalErediensten-beheerder", "ABBOrganisatiePortaalGebruiker-beheerder" .
}
}

View File

@@ -1,58 +0,0 @@
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
DELETE where {
graph <http://mu.semte.ch/graphs/public> {
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> ?p ?o.
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> ?aP ?aO.
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> ?wp ?wo.
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> ?wpap ?wpao.
}
}
;
DELETE where {
graph <http://mu.semte.ch/graphs/organizations/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> {
<http://data.lblod.info/id/persoon/d39fe09e-d339-4e43-8680-dbbcfb3d3472> ?p ?o.
<http://data.lblod.info/id/account/3a91ff60-07c1-4136-ac5e-55cf401e0958> ?aP ?aO.
<http://data.lblod.info/id/persoon/f3610493-f6e1-4490-9723-628fe0213491> ?wp ?wo.
<http://data.lblod.info/id/account/2a88a4b4-4672-45eb-b072-c930bf3b40ae> ?wpap ?wpao.
}
}
;
DELETE WHERE {
graph <http://mu.semte.ch/graphs/public> {
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> ext:sessionRole "ABBOrganisatiePortaalErediensten-beheerder",
"ABBOrganisatiePortaalGebruiker-beheerder" .
}
}
;
;
DELETE WHERE {
graph <http://mu.semte.ch/graphs/organizations/141d9d6b-54af-4d17-b313-8d1c30bc3f5b> {
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> ext:sessionRole "ABBOrganisatiePortaalErediensten-beheerder",
"ABBOrganisatiePortaalGebruiker-beheerder" .
}
}
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/organizations/141d9d6b-54af-4d17-b313-8d1c30bc3f5b>{
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> ext:sessionRole "ABBOrganisatiePortaalErediensten-editeerder",
"ABBOrganisatiePortaalGebruiker-editeerder" .
}
}
;
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/organizations/public>{
<http://data.lblod.info/id/account/cd52ed34-7bcd-41df-a7d4-c805c1d1a197> ext:sessionRole "ABBOrganisatiePortaalErediensten-editeerder",
"ABBOrganisatiePortaalGebruiker-editeerder" .
}
}

View File

@@ -1,5 +1,5 @@
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/f9cac08a-13c1-49da-9bcb-f650b0604054> <http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b>. #Centraal bestuur van de eredienst"
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> <http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b>. #Gemeente"
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> <http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b>. #Provincie"

View File

@@ -1,12 +0,0 @@
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/public> {
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/4393389e99127b68e7fc11936ba92e18> ext:appliesWithin <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/f9cac08a-13c1-49da-9bcb-f650b0604054> . # Centraal bestuur
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/b475fa47e17a8a05ae04a9e1fb9c9258> ext:appliesWithin <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86> . # Comité
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/90a9ec83cb93b9369bba7ff29d9ce5ce> ext:appliesWithin <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86> . # Bestuursraad
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/af811edba97c6ec34874d0830cbb1183> ext:appliesWithin <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86> . # Kerkfabriekraad
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/a0701624aefb115b7eda2ff39139c2dd> ext:appliesWithin <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86> . # Kathedrale kerkraad
}
}

View File

@@ -1,107 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://www.w3.org/ns/org#classification> ?classification;
?p ?o.
filter exists {
graph <http://mu.semte.ch/graphs/public> {
?classification <http://mu.semte.ch/vocabularies/ext/appliesWithin> ?appliesWithin.
?appliesWithin mu:uuid ?classificationUuid.
filter(?classificationUuid in ("66ec74fd-8cfc-4e16-99c6-350b35012e86","f9cac08a-13c1-49da-9bcb-f650b0604054"))
}
}
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?specialization ?specializationP ?specializationO.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?specialization ?specializationP ?specializationO.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?specialization a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan>; generiek:isTijdspecialisatieVan ?specialization2; ?specializationP ?specializationO.
filter exists{
graph <http://mu.semte.ch/graphs/worship-service> {
?specialization2 a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan>.
}
}
}
}
;
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandaat ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?mandaat ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandaat ?p ?o.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaan <http://www.w3.org/ns/org#hasPost> ?mandaat.
}
}
}
}

View File

@@ -1,47 +0,0 @@
# Update status of the bestuurseenheden as well as the resulting status of the change event
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX lblodOrg: <http://lblod.data.gift/vocabularies/organisatie/>
DELETE {
GRAPH ?g {
<http://data.lblod.info/id/besturenVanDeEredienst/e158c6378d3751b88df4a8c0c2b2f99a>
regorg:orgStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
<http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/63FF1584886F92ABFC08D0E8>
lblodOrg:resulterendeStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
<http://data.lblod.info/id/besturenVanDeEredienst/8a90a8de8b1f6bb0a6ab29cf81428754>
regorg:orgStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
<http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/63FF1584886F92ABFC08D0E7>
lblodOrg:resulterendeStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
<http://data.lblod.info/id/veranderingsgebeurtenissen/63FF1583886F92ABFC08D0E6> <http://www.w3.org/ns/org#resultingOrganization> <http://data.lblod.info/id/besturenVanDeEredienst/e158c6378d3751b88df4a8c0c2b2f99a>.
}
} INSERT {
GRAPH ?g {
<http://data.lblod.info/id/besturenVanDeEredienst/e158c6378d3751b88df4a8c0c2b2f99a>
regorg:orgStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
<http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/63FF1584886F92ABFC08D0E8>
lblodOrg:resulterendeStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
<http://data.lblod.info/id/besturenVanDeEredienst/8a90a8de8b1f6bb0a6ab29cf81428754>
regorg:orgStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
<http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/63FF1584886F92ABFC08D0E7>
lblodOrg:resulterendeStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
<http://data.lblod.info/id/veranderingsgebeurtenissen/63FF1583886F92ABFC08D0E6> <http://www.w3.org/ns/org#resultingOrganization> <http://data.lblod.info/id/besturenVanDeEredienst/8a90a8de8b1f6bb0a6ab29cf81428754>.
}
} WHERE {
GRAPH ?g {
<http://data.lblod.info/id/besturenVanDeEredienst/e158c6378d3751b88df4a8c0c2b2f99a>
regorg:orgStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
<http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/63FF1584886F92ABFC08D0E8>
lblodOrg:resulterendeStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
<http://data.lblod.info/id/besturenVanDeEredienst/8a90a8de8b1f6bb0a6ab29cf81428754>
regorg:orgStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
<http://lblod.data.info/id/veranderingsgebeurtenis-resultaten/63FF1584886F92ABFC08D0E7>
lblodOrg:resulterendeStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
<http://data.lblod.info/id/veranderingsgebeurtenissen/63FF1583886F92ABFC08D0E6> <http://www.w3.org/ns/org#resultingOrganization> <http://data.lblod.info/id/besturenVanDeEredienst/e158c6378d3751b88df4a8c0c2b2f99a>.
}
}

View File

@@ -1,37 +0,0 @@
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX lblodOrg: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?identifier generiek:gestructureerdeIdentificator ?structuredIdentifier;
?p ?o.
?structuredIdentifier ?sp ?so.
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?identifier generiek:gestructureerdeIdentificator ?structuredIdentifier;
?p ?o.
?structuredIdentifier ?sp ?so.
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?identifier generiek:gestructureerdeIdentificator ?structuredIdentifier;
?p ?o.
?structuredIdentifier ?sp ?so.
filter exists {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?org adms:identifier ?identifier.
}
}
}
}

View File

@@ -1,293 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftGeboorte ?heeftGeboorte.
?heeftGeboorte ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-privacy-centric-graph> {
?person persoon:heeftGeboorte ?heeftGeboorte.
?heeftGeboorte ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftGeboorte ?heeftGeboorte.
?heeftGeboorte ?p ?o.
filter (exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftGeboorte ?heeftGeboorte.
?heeftGeboorte ?p ?o.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit-privacy-centric-graph> {
?person persoon:heeftGeboorte ?heeftGeboorte.
?heeftGeboorte ?p ?o.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftGeboorte ?heeftGeboorte.
?heeftGeboorte ?p ?o.
filter (exists
{
graph <http://mu.semte.ch/graphs/administrative-unit> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
# geslacht
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:geslacht ?geslacht.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-privacy-centric-graph> {
?person persoon:geslacht ?geslacht.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:geslacht ?geslacht.
filter (exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:geslacht ?geslacht.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit-privacy-centric-graph> {
?person persoon:geslacht ?geslacht.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:geslacht ?geslacht.
filter (exists
{
graph <http://mu.semte.ch/graphs/administrative-unit> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
# nationaliteit
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftNationaliteit ?nationaliteit.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-privacy-centric-graph> {
?person persoon:heeftNationaliteit ?nationaliteit.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftNationaliteit ?nationaliteit.
filter (exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftNationaliteit ?nationaliteit.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit-privacy-centric-graph> {
?person persoon:heeftNationaliteit ?nationaliteit.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:heeftNationaliteit ?nationaliteit.
filter (exists
{
graph <http://mu.semte.ch/graphs/administrative-unit> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
# registration
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:registratie ?registration.
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
?identificator ?x ?y.
?registration ?t ?j.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-privacy-centric-graph> {
?person persoon:registratie ?registration.
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
?identificator ?x ?y.
?registration ?t ?j.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:registratie ?registration.
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
?identificator ?x ?y.
optional { ?registration ?t ?j. }
filter (exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}
;
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:registratie ?registration.
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
?identificator ?x ?y.
?registration ?t ?j.
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit-privacy-centric-graph> {
?person persoon:registratie ?registration.
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
?identificator ?x ?y.
?registration ?t ?j.
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?person persoon:registratie ?registration.
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
?identificator ?x ?y.
optional {?registration ?t ?j.}
filter (exists
{
graph <http://mu.semte.ch/graphs/administrative-unit> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}

View File

@@ -1,40 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s ?p ?o
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-privacy-centric-graph> {
?s ?p ?o
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s a <http://mu.semte.ch/vocabularies/ext/PersonInformationUpdate>; <http://mu.semte.ch/vocabularies/ext/person> ?person; ?p ?o.
filter (
exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}

View File

@@ -1,40 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s ?p ?o
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-privacy-centric-graph> {
?s ?p ?o
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s a <http://mu.semte.ch/vocabularies/ext/PersonInformationRead>; <http://mu.semte.ch/vocabularies/ext/person> ?person; ?p ?o.
filter (
exists
{
graph <http://mu.semte.ch/graphs/worship-service> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/worship-service> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}

View File

@@ -1,43 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX session: <http://mu.semte.ch/vocabularies/session/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s ?p ?o
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit-privacy-centric-graph> {
?s ?p ?o
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
?s a ?type; <http://mu.semte.ch/vocabularies/ext/person> ?person; ?p ?o.
filter (
(?type = <http://mu.semte.ch/vocabularies/ext/PersonInformationUpdate> || ?type = <http://mu.semte.ch/vocabularies/ext/PersonInformationRead>)
&&
exists
{
graph <http://mu.semte.ch/graphs/administrative-unit> {
?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person.
}
}
|| exists {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?ministers <http://www.w3.org/ns/org#heldBy> ?person.
}
})
}
}

View File

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

View File

@@ -1,26 +0,0 @@
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d>
rdf:type <http://mu.semte.ch/vocabularies/ext/BestuurseenheidClassificatieCode> , skos:Concept ;
<http://mu.semte.ch/vocabularies/core/uuid> "80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d" ;
skos:topConceptOf <https://data.vlaanderen.be/id/conceptscheme/BestuurseenheidClassificatieCode> ;
skos:prefLabel "Autonoom provinciebedrijf" ;
skos:inScheme <https://data.vlaanderen.be/id/conceptscheme/BestuurseenheidClassificatieCode> ;
<http://schema.org/publication> <http://lblod.data.gift/concepts/83f7b480-fcaf-4795-b603-7f3bce489325> .
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/36a82ba0-7ff1-4697-a9dd-2e94df73b721>
rdf:type <http://mu.semte.ch/vocabularies/ext/BestuurseenheidClassificatieCode> , skos:Concept ;
<http://mu.semte.ch/vocabularies/core/uuid> "36a82ba0-7ff1-4697-a9dd-2e94df73b721" ;
skos:topConceptOf <https://data.vlaanderen.be/id/conceptscheme/BestuurseenheidClassificatieCode> ;
skos:prefLabel "Autonoom gemeentebedrijf" ;
skos:inScheme <https://data.vlaanderen.be/id/conceptscheme/BestuurseenheidClassificatieCode> ;
<http://schema.org/publication> <http://lblod.data.gift/concepts/83f7b480-fcaf-4795-b603-7f3bce489325> .
<http://lblod.data.gift/concepts/dcc01338-842c-4fbd-ba68-3ca6f3af975c> a <http://lblod.data.gift/vocabularies/organisatie/TypeVestiging>;
<http://mu.semte.ch/vocabularies/core/uuid> "dcc01338-842c-4fbd-ba68-3ca6f3af975c";
<http://www.w3.org/2004/02/skos/core#prefLabel> "Correspondentieadres";
<http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/f8319ccf40fc2a1697edc5cf7e03018f>;
<http://www.w3.org/2004/02/skos/core#inScheme> <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b>;
<http://www.w3.org/2004/02/skos/core#topConceptOf> <http://lblod.data.gift/concept-schemes/f8319ccf40fc2a1697edc5cf7e03018f>.

View File

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

View File

@@ -1,31 +0,0 @@
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
<http://lblod.data.gift/concepts/b85363df-b598-4a21-b8ae-0dea78db73cb>
rdf:type <http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis> ;
<http://mu.semte.ch/vocabularies/core/uuid> "b85363df-b598-4a21-b8ae-0dea78db73cb" ;
skos:prefLabel "In ontbinding" ;
skos:inScheme <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> , <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> ;
skos:topConceptOf <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> .
<http://lblod.data.gift/concepts/e8dc166e-4769-4f28-bcf8-af2fb8cb7d15>
rdf:type <http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis> ;
<http://mu.semte.ch/vocabularies/core/uuid> "e8dc166e-4769-4f28-bcf8-af2fb8cb7d15" ;
skos:prefLabel "In vereffening" ;
skos:inScheme <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> , <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> ;
skos:topConceptOf <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> .
<http://lblod.data.gift/concepts/b5f471a8-eb2e-4ec3-9f84-2c179134e2be>
rdf:type <http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis> ;
<http://mu.semte.ch/vocabularies/core/uuid> "b5f471a8-eb2e-4ec3-9f84-2c179134e2be" ;
skos:prefLabel "Ontbonden en vereffend" ;
skos:inScheme <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> , <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> ;
skos:topConceptOf <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> .
<http://lblod.data.gift/concepts/f0e2706a-3b64-4464-ad9c-4e65dc976288>
rdf:type <http://lblod.data.gift/vocabularies/organisatie/Veranderingsgebeurtenis> ;
<http://mu.semte.ch/vocabularies/core/uuid> "f0e2706a-3b64-4464-ad9c-4e65dc976288" ;
skos:prefLabel "Oprichting" ;
skos:inScheme <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> , <http://lblod.data.gift/concept-schemes/10caf4a4-1ff5-4c05-917e-56489910d68b> ;
skos:topConceptOf <http://lblod.data.gift/concept-schemes/e1ff33ee76b5662ec8486f0e2abec384> .

View File

@@ -1,27 +0,0 @@
# AGB AG2B has been added in Loket in the meantime. I'm adapting to Loket's URI
DELETE {
GRAPH ?g {
<http://data.lblod.info/id/bestuurseenheden/a7aaef2f-6e8f-4351-9303-bdc4288bc6f0> ?p ?o .
}
} INSERT {
GRAPH ?g {
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855> ?p ?o .
}
} WHERE {
GRAPH ?g {
<http://data.lblod.info/id/bestuurseenheden/a7aaef2f-6e8f-4351-9303-bdc4288bc6f0> ?p ?o .
}
}
;
DELETE DATA {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855> <http://mu.semte.ch/vocabularies/core/uuid> "a7aaef2f-6e8f-4351-9303-bdc4288bc6f0" .
}
}
;
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855> <http://mu.semte.ch/vocabularies/core/uuid> "e0920e46-85b9-4736-a906-b254cc7f1855" .
}
}

View File

@@ -1,301 +0,0 @@
# Classification Raad van bestuur
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?orgaanInTime a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaanInTime ;
<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?orgaan ;
<http://data.vlaanderen.be/ns/mandaat#bindingStart> "2019-01-01T00:00:00"^^xsd:dateTime .
?orgaan a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaan ;
<http://www.w3.org/2004/02/skos/core#prefLabel> ?orgaanLabel ;
<http://www.w3.org/ns/org#classification> ?classificationOrgaan ;
<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid .
}
} WHERE {
VALUES ?classificationBestuurseenheid {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/36a82ba0-7ff1-4697-a9dd-2e94df73b721>
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d>
}
VALUES ?classificationOrgaan {
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/013cc838-173a-4657-b1ae-b00c048df943>
}
VALUES ?bestuurseenheid {
<http://data.lblod.info/id/bestuurseenheden/e0d71bad-4684-4796-9f76-c3babb972a0f>
<http://data.lblod.info/id/bestuurseenheden/cec30867-e378-4e86-9568-1efebb6ccd7d>
<http://data.lblod.info/id/bestuurseenheden/b206763c-d8d2-45bd-ba1b-b5462bdd823c>
<http://data.lblod.info/id/bestuurseenheden/70285c2d-2045-414e-bd49-56155a736e56>
<http://data.lblod.info/id/bestuurseenheden/2908c8ed-0f67-44c0-b69e-5a8b07238d15>
<http://data.lblod.info/id/bestuurseenheden/f4228a39-de89-4a50-925f-d5d8d5109e79>
<http://data.lblod.info/id/bestuurseenheden/8d6609b4-1a20-46b8-97ed-150c6d53acd6>
<http://data.lblod.info/id/bestuurseenheden/b25f4408-0b7c-46d0-a234-0936cac4eb7c>
<http://data.lblod.info/id/bestuurseenheden/b81fdc5f-d1ba-49f2-831f-ed549ad94394>
<http://data.lblod.info/id/bestuurseenheden/3deaa042-58f3-474f-abc2-9cb3e15f4221>
<http://data.lblod.info/id/bestuurseenheden/863673c6-7bc9-4bbd-a42a-9ef1d2dc4c05>
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855>
<http://data.lblod.info/id/bestuurseenheden/99509194-025b-4292-9add-aa98b4867350>
<http://data.lblod.info/id/bestuurseenheden/6479BE11E20833AEA681F731>
<http://data.lblod.info/id/bestuurseenheden/648C3D65190444E254CA3901>
<http://data.lblod.info/id/bestuurseenheden/648C4C67190444E254CA390E>
<http://data.lblod.info/id/bestuurseenheden/6479B935E20833AEA681F719>
<http://data.lblod.info/id/bestuurseenheden/5c6ab343-3405-475d-a184-d44bbe7e787a>
<http://data.lblod.info/id/bestuurseenheden/646DCAC8E20833AEA681F608>
<http://data.lblod.info/id/bestuurseenheden/648C3BB7190444E254CA38F4>
<http://data.lblod.info/id/bestuurseenheden/646F2BB5E20833AEA681F62C>
<http://data.lblod.info/id/bestuurseenheden/8e448f7f-5a1d-44b0-a99d-274b2cc66f58>
<http://data.lblod.info/id/bestuurseenheden/5202c9ba-40fb-44e2-8116-6eceadc1e60a>
<http://data.lblod.info/id/bestuurseenheden/6478831EE20833AEA681F690>
<http://data.lblod.info/id/bestuurseenheden/646F25AEE20833AEA681F61A>
<http://data.lblod.info/id/bestuurseenheden/646F2609E20833AEA681F623>
<http://data.lblod.info/id/bestuurseenheden/6488403F190444E254CA3891>
<http://data.lblod.info/id/bestuurseenheden/648C3B22190444E254CA38EB>
<http://data.lblod.info/id/bestuurseenheden/646F2295E20833AEA681F611>
<http://data.lblod.info/id/bestuurseenheden/6479B670E20833AEA681F702>
<http://data.lblod.info/id/bestuurseenheden/6488488C190444E254CA38A5>
<http://data.lblod.info/id/bestuurseenheden/648841E2190444E254CA389A>
}
?bestuurseenheid a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid> ;
skos:prefLabel ?bestuurseenheidLabel .
?classificationOrgaan skos:prefLabel ?classificationOrgaanLabel .
BIND(CONCAT(?bestuurseenheidLabel, " Leidend ambtenaar") as ?functieLabel)
BIND(CONCAT(?classificationOrgaanLabel, " ", ?bestuurseenheidLabel) as ?orgaanLabel)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaanInTime")) as ?uuidOrgaanInTime)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaan")) as ?uuidOrgaan)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaan)) AS ?orgaan)
}
;
# Classification Bevoegd beslissingsorgaan
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?orgaanInTime a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaanInTime ;
<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?orgaan ;
<http://data.vlaanderen.be/ns/mandaat#bindingStart> "2019-01-01T00:00:00"^^xsd:dateTime .
?orgaan a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaan ;
<http://www.w3.org/2004/02/skos/core#prefLabel> ?orgaanLabel ;
<http://www.w3.org/ns/org#classification> ?classificationOrgaan ;
<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid .
}
} WHERE {
VALUES ?classificationBestuurseenheid {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/36a82ba0-7ff1-4697-a9dd-2e94df73b721>
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d>
}
VALUES ?classificationOrgaan {
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/0dbc70ec-6be9-4997-b8e1-11b6c0542382>
}
VALUES ?bestuurseenheid {
<http://data.lblod.info/id/bestuurseenheden/e0d71bad-4684-4796-9f76-c3babb972a0f>
<http://data.lblod.info/id/bestuurseenheden/cec30867-e378-4e86-9568-1efebb6ccd7d>
<http://data.lblod.info/id/bestuurseenheden/b206763c-d8d2-45bd-ba1b-b5462bdd823c>
<http://data.lblod.info/id/bestuurseenheden/70285c2d-2045-414e-bd49-56155a736e56>
<http://data.lblod.info/id/bestuurseenheden/2908c8ed-0f67-44c0-b69e-5a8b07238d15>
<http://data.lblod.info/id/bestuurseenheden/f4228a39-de89-4a50-925f-d5d8d5109e79>
<http://data.lblod.info/id/bestuurseenheden/8d6609b4-1a20-46b8-97ed-150c6d53acd6>
<http://data.lblod.info/id/bestuurseenheden/b25f4408-0b7c-46d0-a234-0936cac4eb7c>
<http://data.lblod.info/id/bestuurseenheden/b81fdc5f-d1ba-49f2-831f-ed549ad94394>
<http://data.lblod.info/id/bestuurseenheden/3deaa042-58f3-474f-abc2-9cb3e15f4221>
<http://data.lblod.info/id/bestuurseenheden/863673c6-7bc9-4bbd-a42a-9ef1d2dc4c05>
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855>
<http://data.lblod.info/id/bestuurseenheden/99509194-025b-4292-9add-aa98b4867350>
<http://data.lblod.info/id/bestuurseenheden/6479BE11E20833AEA681F731>
<http://data.lblod.info/id/bestuurseenheden/648C3D65190444E254CA3901>
<http://data.lblod.info/id/bestuurseenheden/648C4C67190444E254CA390E>
<http://data.lblod.info/id/bestuurseenheden/6479B935E20833AEA681F719>
<http://data.lblod.info/id/bestuurseenheden/5c6ab343-3405-475d-a184-d44bbe7e787a>
<http://data.lblod.info/id/bestuurseenheden/646DCAC8E20833AEA681F608>
<http://data.lblod.info/id/bestuurseenheden/648C3BB7190444E254CA38F4>
<http://data.lblod.info/id/bestuurseenheden/646F2BB5E20833AEA681F62C>
<http://data.lblod.info/id/bestuurseenheden/8e448f7f-5a1d-44b0-a99d-274b2cc66f58>
<http://data.lblod.info/id/bestuurseenheden/5202c9ba-40fb-44e2-8116-6eceadc1e60a>
<http://data.lblod.info/id/bestuurseenheden/6478831EE20833AEA681F690>
<http://data.lblod.info/id/bestuurseenheden/646F25AEE20833AEA681F61A>
<http://data.lblod.info/id/bestuurseenheden/646F2609E20833AEA681F623>
<http://data.lblod.info/id/bestuurseenheden/6488403F190444E254CA3891>
<http://data.lblod.info/id/bestuurseenheden/648C3B22190444E254CA38EB>
<http://data.lblod.info/id/bestuurseenheden/646F2295E20833AEA681F611>
<http://data.lblod.info/id/bestuurseenheden/6479B670E20833AEA681F702>
<http://data.lblod.info/id/bestuurseenheden/6488488C190444E254CA38A5>
<http://data.lblod.info/id/bestuurseenheden/648841E2190444E254CA389A>
}
?bestuurseenheid a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid> ;
skos:prefLabel ?bestuurseenheidLabel .
?classificationOrgaan skos:prefLabel ?classificationOrgaanLabel .
BIND(CONCAT(?bestuurseenheidLabel, " Leidend ambtenaar") as ?functieLabel)
BIND(CONCAT(?classificationOrgaanLabel, " ", ?bestuurseenheidLabel) as ?orgaanLabel)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaanInTime")) as ?uuidOrgaanInTime)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaan")) as ?uuidOrgaan)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaan)) AS ?orgaan)
}
;
# Classification Algemene vergadering
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?orgaanInTime a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaanInTime ;
<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?orgaan ;
<http://data.vlaanderen.be/ns/mandaat#bindingStart> "2019-01-01T00:00:00"^^xsd:dateTime .
?orgaan a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaan ;
<http://www.w3.org/2004/02/skos/core#prefLabel> ?orgaanLabel ;
<http://www.w3.org/ns/org#classification> ?classificationOrgaan ;
<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid .
}
} WHERE {
VALUES ?classificationBestuurseenheid {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/36a82ba0-7ff1-4697-a9dd-2e94df73b721>
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d>
}
VALUES ?classificationOrgaan {
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/b52094ff-21a2-4da8-8dbe-f513365d1528>
}
VALUES ?bestuurseenheid {
<http://data.lblod.info/id/bestuurseenheden/e0d71bad-4684-4796-9f76-c3babb972a0f>
<http://data.lblod.info/id/bestuurseenheden/cec30867-e378-4e86-9568-1efebb6ccd7d>
<http://data.lblod.info/id/bestuurseenheden/b206763c-d8d2-45bd-ba1b-b5462bdd823c>
<http://data.lblod.info/id/bestuurseenheden/70285c2d-2045-414e-bd49-56155a736e56>
<http://data.lblod.info/id/bestuurseenheden/2908c8ed-0f67-44c0-b69e-5a8b07238d15>
<http://data.lblod.info/id/bestuurseenheden/f4228a39-de89-4a50-925f-d5d8d5109e79>
<http://data.lblod.info/id/bestuurseenheden/8d6609b4-1a20-46b8-97ed-150c6d53acd6>
<http://data.lblod.info/id/bestuurseenheden/b25f4408-0b7c-46d0-a234-0936cac4eb7c>
<http://data.lblod.info/id/bestuurseenheden/b81fdc5f-d1ba-49f2-831f-ed549ad94394>
<http://data.lblod.info/id/bestuurseenheden/3deaa042-58f3-474f-abc2-9cb3e15f4221>
<http://data.lblod.info/id/bestuurseenheden/863673c6-7bc9-4bbd-a42a-9ef1d2dc4c05>
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855>
<http://data.lblod.info/id/bestuurseenheden/99509194-025b-4292-9add-aa98b4867350>
<http://data.lblod.info/id/bestuurseenheden/6479BE11E20833AEA681F731>
<http://data.lblod.info/id/bestuurseenheden/648C3D65190444E254CA3901>
<http://data.lblod.info/id/bestuurseenheden/648C4C67190444E254CA390E>
<http://data.lblod.info/id/bestuurseenheden/6479B935E20833AEA681F719>
<http://data.lblod.info/id/bestuurseenheden/5c6ab343-3405-475d-a184-d44bbe7e787a>
<http://data.lblod.info/id/bestuurseenheden/646DCAC8E20833AEA681F608>
<http://data.lblod.info/id/bestuurseenheden/648C3BB7190444E254CA38F4>
<http://data.lblod.info/id/bestuurseenheden/646F2BB5E20833AEA681F62C>
<http://data.lblod.info/id/bestuurseenheden/8e448f7f-5a1d-44b0-a99d-274b2cc66f58>
<http://data.lblod.info/id/bestuurseenheden/5202c9ba-40fb-44e2-8116-6eceadc1e60a>
<http://data.lblod.info/id/bestuurseenheden/6478831EE20833AEA681F690>
<http://data.lblod.info/id/bestuurseenheden/646F25AEE20833AEA681F61A>
<http://data.lblod.info/id/bestuurseenheden/646F2609E20833AEA681F623>
<http://data.lblod.info/id/bestuurseenheden/6488403F190444E254CA3891>
<http://data.lblod.info/id/bestuurseenheden/648C3B22190444E254CA38EB>
<http://data.lblod.info/id/bestuurseenheden/646F2295E20833AEA681F611>
<http://data.lblod.info/id/bestuurseenheden/6479B670E20833AEA681F702>
<http://data.lblod.info/id/bestuurseenheden/6488488C190444E254CA38A5>
<http://data.lblod.info/id/bestuurseenheden/648841E2190444E254CA389A>
}
?bestuurseenheid a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid> ;
skos:prefLabel ?bestuurseenheidLabel .
?classificationOrgaan skos:prefLabel ?classificationOrgaanLabel .
BIND(CONCAT(?bestuurseenheidLabel, " Leidend ambtenaar") as ?functieLabel)
BIND(CONCAT(?classificationOrgaanLabel, " ", ?bestuurseenheidLabel) as ?orgaanLabel)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaanInTime")) as ?uuidOrgaanInTime)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaan")) as ?uuidOrgaan)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaan)) AS ?orgaan)
}
;
# Classification Leidend Ambtenaar
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?orgaanInTime a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaanInTime ;
<https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?orgaan ;
<http://data.vlaanderen.be/ns/mandaat#bindingStart> "2019-01-01T00:00:00"^^xsd:dateTime .
?orgaan a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan> ;
<http://mu.semte.ch/vocabularies/core/uuid> ?uuidOrgaan ;
<http://www.w3.org/2004/02/skos/core#prefLabel> ?orgaanLabel ;
<http://www.w3.org/ns/org#classification> ?classificationOrgaan ;
<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid .
}
} WHERE {
VALUES ?classificationBestuurseenheid {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/36a82ba0-7ff1-4697-a9dd-2e94df73b721>
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d>
}
VALUES ?classificationOrgaan {
<http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/41caf7e6-b040-4720-9cc2-a96cfffed5b4>
}
VALUES ?bestuurseenheid {
<http://data.lblod.info/id/bestuurseenheden/e0d71bad-4684-4796-9f76-c3babb972a0f>
<http://data.lblod.info/id/bestuurseenheden/cec30867-e378-4e86-9568-1efebb6ccd7d>
<http://data.lblod.info/id/bestuurseenheden/b206763c-d8d2-45bd-ba1b-b5462bdd823c>
<http://data.lblod.info/id/bestuurseenheden/70285c2d-2045-414e-bd49-56155a736e56>
<http://data.lblod.info/id/bestuurseenheden/2908c8ed-0f67-44c0-b69e-5a8b07238d15>
<http://data.lblod.info/id/bestuurseenheden/f4228a39-de89-4a50-925f-d5d8d5109e79>
<http://data.lblod.info/id/bestuurseenheden/8d6609b4-1a20-46b8-97ed-150c6d53acd6>
<http://data.lblod.info/id/bestuurseenheden/b25f4408-0b7c-46d0-a234-0936cac4eb7c>
<http://data.lblod.info/id/bestuurseenheden/b81fdc5f-d1ba-49f2-831f-ed549ad94394>
<http://data.lblod.info/id/bestuurseenheden/3deaa042-58f3-474f-abc2-9cb3e15f4221>
<http://data.lblod.info/id/bestuurseenheden/863673c6-7bc9-4bbd-a42a-9ef1d2dc4c05>
<http://data.lblod.info/id/bestuurseenheden/e0920e46-85b9-4736-a906-b254cc7f1855>
<http://data.lblod.info/id/bestuurseenheden/99509194-025b-4292-9add-aa98b4867350>
<http://data.lblod.info/id/bestuurseenheden/6479BE11E20833AEA681F731>
<http://data.lblod.info/id/bestuurseenheden/648C3D65190444E254CA3901>
<http://data.lblod.info/id/bestuurseenheden/648C4C67190444E254CA390E>
<http://data.lblod.info/id/bestuurseenheden/6479B935E20833AEA681F719>
<http://data.lblod.info/id/bestuurseenheden/5c6ab343-3405-475d-a184-d44bbe7e787a>
<http://data.lblod.info/id/bestuurseenheden/646DCAC8E20833AEA681F608>
<http://data.lblod.info/id/bestuurseenheden/648C3BB7190444E254CA38F4>
<http://data.lblod.info/id/bestuurseenheden/646F2BB5E20833AEA681F62C>
<http://data.lblod.info/id/bestuurseenheden/8e448f7f-5a1d-44b0-a99d-274b2cc66f58>
<http://data.lblod.info/id/bestuurseenheden/5202c9ba-40fb-44e2-8116-6eceadc1e60a>
<http://data.lblod.info/id/bestuurseenheden/6478831EE20833AEA681F690>
<http://data.lblod.info/id/bestuurseenheden/646F25AEE20833AEA681F61A>
<http://data.lblod.info/id/bestuurseenheden/646F2609E20833AEA681F623>
<http://data.lblod.info/id/bestuurseenheden/6488403F190444E254CA3891>
<http://data.lblod.info/id/bestuurseenheden/648C3B22190444E254CA38EB>
<http://data.lblod.info/id/bestuurseenheden/646F2295E20833AEA681F611>
<http://data.lblod.info/id/bestuurseenheden/6479B670E20833AEA681F702>
<http://data.lblod.info/id/bestuurseenheden/6488488C190444E254CA38A5>
<http://data.lblod.info/id/bestuurseenheden/648841E2190444E254CA389A>
}
?bestuurseenheid a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid> ;
skos:prefLabel ?bestuurseenheidLabel .
?classificationOrgaan skos:prefLabel ?classificationOrgaanLabel .
BIND(CONCAT(?bestuurseenheidLabel, " Leidend ambtenaar") as ?functieLabel)
BIND(CONCAT(?classificationOrgaanLabel, " ", ?bestuurseenheidLabel) as ?orgaanLabel)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaanInTime")) as ?uuidOrgaanInTime)
BIND(MD5(CONCAT(?bestuurseenheid, ?classificationOrgaan, "orgaan")) as ?uuidOrgaan)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaan)) AS ?orgaan)
}

View File

@@ -1,24 +0,0 @@
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?orgaanInTime <http://data.vlaanderen.be/ns/mandaat#bindingStart> ?start .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?orgaanInTime <http://data.vlaanderen.be/ns/mandaat#bindingStart> ?startDateTime .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
VALUES ?classificationBestuurseenheid {
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/36a82ba0-7ff1-4697-a9dd-2e94df73b721>
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/80310756-ce0a-4a1b-9b8e-7c01b6cc7a2d>
}
?orgaanInTime <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt> ?bestuurseenheid ;
<http://data.vlaanderen.be/ns/mandaat#bindingStart> ?start .
?bestuurseenheid <http://www.w3.org/ns/org#classification> ?classificationBestuurseenheid .
# The hour is arbitrary, but there is a bug in virtuoso when if the time is `T00:00:00` it doesn't apply the type change at all
BIND(IF(strlen(str(?start)) = 10, strdt(concat(str(?start), 'T02:00:00'), xsd:dateTime), ?start) as ?startDateTime)
}
}

View File

@@ -1,42 +0,0 @@
# We have two bestuursorganen of the same classification for 2 bestuurseenheden.
# Then need to be merged, as we should only have one orgaan (not in time) per classification.
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?otherBestuursorgaan ?potherBestuursorgaan ?ootherBestuursorgaan .
?s ?p ?otherBestuursorgaan .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s ?p ?bestuursorgaan .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES ?type {
ere:BestuurVanDeEredienst
ere:CentraalBestuurVanDeEredienst
}
?bestuurseenheid a ?type .
FILTER NOT EXISTS {
?bestuurseenheid <http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> .
}
?bestuursorgaan besluit:bestuurt ?bestuurseenheid ;
<http://www.w3.org/ns/org#classification> ?classif .
?otherBestuursorgaan besluit:bestuurt ?bestuurseenheid ;
<http://www.w3.org/ns/org#classification> ?classif ;
?potherBestuursorgaan ?ootherBestuursorgaan .
?s ?p ?otherBestuursorgaan .
FILTER (str(?bestuursorgaan) > str(?otherBestuursorgaan))
}
}

View File

@@ -1,46 +0,0 @@
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime a besluit:Bestuursorgaan ;
mu:uuid ?uuidOrgaanInTime ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
generiek:isTijdspecialisatieVan ?bestuursorgaan .
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES ?type {
ere:BestuurVanDeEredienst
ere:CentraalBestuurVanDeEredienst
}
?bestuurseenheid a ?type .
FILTER NOT EXISTS {
?bestuurseenheid <http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> .
}
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
FILTER NOT EXISTS {
?missingOrgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
?missingOrgaanInTime mandaat:bindingStart ?start .
FILTER CONTAINS(STR(?start), "2023")
}
FILTER NOT EXISTS {
?missingOrgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
?missingOrgaanInTime mandaat:bindingEinde ?end .
FILTER CONTAINS(STR(?end), "2026")
}
}
BIND(MD5(CONCAT(?bestuurseenheid, ?bestuursorgaan, "2023-2026")) as ?uuidOrgaanInTime)
BIND(IRI(CONCAT("http://data.lblod.info/id/bestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
}

View File

@@ -1,152 +0,0 @@
# Add missing mandates to central worship services
## 2023 - 2026
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?expert .
?expert a mandaat:Mandaat ;
mu:uuid ?uuidExpert ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/8c91c321ad477c4fc372ee36358d3ed4> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:CentraalBestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?expert .
?expert org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/8c91c321ad477c4fc372ee36358d3ed4> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Expert 2023-2026")) as ?uuidExpert)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidExpert)) AS ?expert)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?vertegenwoordiger .
?vertegenwoordiger a mandaat:Mandaat ;
mu:uuid ?uuidVertegenwoordiger ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/6e26e94ea4b127eeb850fb6debe07271> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:CentraalBestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?vertegenwoordiger .
?vertegenwoordiger org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/6e26e94ea4b127eeb850fb6debe07271> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Vertegenwoordiger 2023-2026")) as ?uuidVertegenwoordiger)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVertegenwoordiger)) AS ?vertegenwoordiger)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?secretaris .
?secretaris a mandaat:Mandaat ;
mu:uuid ?uuidSecretaris ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/e2af0ea1a6af96cfb698ac39ad985eea> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:CentraalBestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?secretaris .
?secretaris org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/e2af0ea1a6af96cfb698ac39ad985eea> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Secretaris 2023-2026")) as ?uuidSecretaris)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?voorzitter .
?voorzitter a mandaat:Mandaat ;
mu:uuid ?uuidVoorzitter ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5960262f753661cf84329f3afa9f7df7> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:CentraalBestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?voorzitter .
?voorzitter org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5960262f753661cf84329f3afa9f7df7> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Voorzitter 2023-2026")) as ?uuidVoorzitter)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?bestuurslid .
?bestuurslid a mandaat:Mandaat ;
mu:uuid ?uuidBestuurslid ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f848fa3cc2c5fb7c581a116866293925> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:CentraalBestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?worshipService <http://www.w3.org/ns/regorg#orgStatus> <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> .
}
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?bestuurslid .
?bestuurslid org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f848fa3cc2c5fb7c581a116866293925> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Bestuurslid 2023-2026")) as ?uuidBestuurslid)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslid)) AS ?bestuurslid)
}

View File

@@ -1,186 +0,0 @@
# Add missing mandates to worship services for period 2023-2026
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
## Case LidVanRechtswege : shared mandate for all the organen in time
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?lidVanRechtswege .
?lidVanRechtswege a mandaat:Mandaat ;
mu:uuid ?uuidLidVanRechtswege ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5972fccd87f864c4ec06bfbd20b5008b> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES (?start ?end) {
("2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime>)
}
?worshipService a ere:BestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart ?start ;
mandaat:bindingEinde ?end .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?lidVanRechtswege .
?lidVanRechtswege org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5972fccd87f864c4ec06bfbd20b5008b> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Rechtswege")) as ?uuidLidVanRechtswege)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidLidVanRechtswege)) AS ?lidVanRechtswege)
}
## Case Bestuursleden, small or big half : 2023 is the beggining of a KH
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?bestuurslidGH .
?bestuurslidGH a mandaat:Mandaat ;
mu:uuid ?uuidBestuurslidGH ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/a8b5509b-f86b-48f8-94d6-fe463a9b77e3> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:BestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?bestuurslidGH .
?bestuurslidGH org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/a8b5509b-f86b-48f8-94d6-fe463a9b77e3> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "BestuurslidGH 2020-2026")) as ?uuidBestuurslidGH)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidGH)) AS ?bestuurslidGH)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?bestuurslidKH .
?bestuurslidKH a mandaat:Mandaat ;
mu:uuid ?uuidBestuurslidKH ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/2962f0bd-2836-4758-9866-8ce8ea2c536f> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
VALUES (?start ?end) {
("2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime>)
}
?worshipService a ere:BestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart ?start ;
mandaat:bindingEinde ?end .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?bestuurslidKH .
?bestuurslidKH org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/2962f0bd-2836-4758-9866-8ce8ea2c536f> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "BestuurslidKH 2023-2029")) as ?uuidBestuurslidKH)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidKH)) AS ?bestuurslidKH)
}
;
## Other cases are simpler, one mandate is linked to only one orgaan in time. Creating them when missing.
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?voorzitter .
?voorzitter a mandaat:Mandaat ;
mu:uuid ?uuidVoorzitter ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/67e6e585166cd97575b3e17ffc430a43> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:BestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?voorzitter .
?voorzitter org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/67e6e585166cd97575b3e17ffc430a43> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Voorzitter 2023-2026")) as ?uuidVoorzitter)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?secretaris .
?secretaris a mandaat:Mandaat ;
mu:uuid ?uuidSecretaris ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ac134b9800b81da3c450d6b9605cef2> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:BestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?secretaris .
?secretaris org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ac134b9800b81da3c450d6b9605cef2> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Secretaris 2023-2026")) as ?uuidSecretaris)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
}
;
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?orgaanInTime org:hasPost ?penningmeester .
?penningmeester a mandaat:Mandaat ;
mu:uuid ?uuidPenningmeester ;
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/180d13930d6f1a3938e0aa7fa9990002> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipService a ere:BestuurVanDeEredienst .
?orgaan besluit:bestuurt ?worshipService .
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
mandaat:bindingStart "2023-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
mandaat:bindingEinde "2026-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
FILTER NOT EXISTS {
?orgaanInTime org:hasPost ?penningmeester .
?penningmeester org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/180d13930d6f1a3938e0aa7fa9990002> .
}
}
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Penningmeester 2023-2026")) as ?uuidPenningmeester)
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidPenningmeester)) AS ?penningmeester)
}

View File

@@ -1,54 +0,0 @@
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX dbpedia: <http://dbpedia.org/ontology/>
PREFIX dc_terms: <http://purl.org/dc/terms/>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX euro: <http://data.europa.eu/m8g/>
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX schema: <http://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?person
?p ?o
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?person a person:Person ;
?p ?o.
}
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
VALUES ?typePosition {
<http://data.lblod.info/vocabularies/leidinggevenden/Functionaris>
<http://data.vlaanderen.be/ns/mandaat#Mandataris>
}
?position mandaat:isBestuurlijkeAliasVan ?person ;
a ?typePosition .
}
FILTER NOT EXISTS {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?worshipPosition <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person .
}
}
}

View File

@@ -1,52 +0,0 @@
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX dbpedia: <http://dbpedia.org/ontology/>
PREFIX dc_terms: <http://purl.org/dc/terms/>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX euro: <http://data.europa.eu/m8g/>
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX schema: <http://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?functionaris ?p ?o.
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?functionaris a <http://data.lblod.info/vocabularies/leidinggevenden/Functionaris> ;
org:holds ?bestuursFunctie ;
?p ?o .
}
?bestuursorgaanInTime lblodlg:heeftBestuursfunctie ?bestuursFunctie ;
generiek:isTijdspecialisatieVan ?bestuursorgaan .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
FILTER NOT EXISTS {
VALUES ?typeBestuur {
<http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>
<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>
}
?bestuurseenheid a ?typeBestuur .
}
}

View File

@@ -1,53 +0,0 @@
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX dbpedia: <http://dbpedia.org/ontology/>
PREFIX dc_terms: <http://purl.org/dc/terms/>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX euro: <http://data.europa.eu/m8g/>
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX schema: <http://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandataris ?p ?o.
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandataris a <http://data.vlaanderen.be/ns/mandaat#Mandataris> ;
org:holds ?mandaat ;
?p ?o .
}
?bestuursorgaanInTime org:hasPost ?mandaat ;
generiek:isTijdspecialisatieVan ?bestuursorgaan .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
FILTER NOT EXISTS {
VALUES ?typeBestuur {
<http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>
<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>
}
?bestuurseenheid a ?typeBestuur .
}
}
LIMIT 1000000

View File

@@ -1,53 +0,0 @@
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX dbpedia: <http://dbpedia.org/ontology/>
PREFIX dc_terms: <http://purl.org/dc/terms/>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX euro: <http://data.europa.eu/m8g/>
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX schema: <http://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandataris ?p ?o.
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandataris a <http://data.vlaanderen.be/ns/mandaat#Mandataris> ;
org:holds ?mandaat ;
?p ?o .
}
?bestuursorgaanInTime org:hasPost ?mandaat ;
generiek:isTijdspecialisatieVan ?bestuursorgaan .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
FILTER NOT EXISTS {
VALUES ?typeBestuur {
<http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>
<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>
}
?bestuurseenheid a ?typeBestuur .
}
}
LIMIT 1000000

View File

@@ -1,52 +0,0 @@
PREFIX adms: <http://www.w3.org/ns/adms#>
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
PREFIX dbpedia: <http://dbpedia.org/ontology/>
PREFIX dc_terms: <http://purl.org/dc/terms/>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX euro: <http://data.europa.eu/m8g/>
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
PREFIX lblodlg: <http://data.lblod.info/vocabularies/leidinggevenden/>
PREFIX locn: <http://www.w3.org/ns/locn#>
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
PREFIX person: <http://www.w3.org/ns/person#>
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
PREFIX prov: <http://www.w3.org/ns/prov#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX regorg: <http://www.w3.org/ns/regorg#>
PREFIX schema: <http://schema.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandataris ?p ?o.
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?mandataris a <http://data.vlaanderen.be/ns/mandaat#Mandataris> ;
org:holds ?mandaat ;
?p ?o .
}
?bestuursorgaanInTime org:hasPost ?mandaat ;
generiek:isTijdspecialisatieVan ?bestuursorgaan .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
FILTER NOT EXISTS {
VALUES ?typeBestuur {
<http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst>
<http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst>
}
?bestuurseenheid a ?typeBestuur .
}
}

View File

@@ -1,22 +0,0 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
DELETE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?minister ?p ?o .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?minister a ere:RolBedienaar ;
org:holds ?ministerPosition ;
?p ?o .
VALUES ?status {
<http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> # Actief
<http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> # Niet Actief
}
?worshipService <http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor> ?ministerPosition ;
<http://www.w3.org/ns/regorg#orgStatus> ?status .
}
}

View File

@@ -1,24 +0,0 @@
delete {
graph <http://mu.semte.ch/graphs/worship-service> {
?position <http://data.lblod.info/vocabularies/erediensten/functie> ?function.
}
}
insert {
graph <http://mu.semte.ch/graphs/worship-service> {
?position <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/7d8e0c15-7726-4196-9416-6dc40ed858bb>.
}
}
where {
graph <http://mu.semte.ch/graphs/worship-service> {
?position <http://data.lblod.info/vocabularies/erediensten/functie> ?function.
?worshipService <http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor> ?position;
<http://www.w3.org/ns/regorg#orgStatus> ?worshipStatus.
filter (?function in (<http://lblod.data.gift/concepts/5ebb798bd59c3b48c25116032caa02b7>,
<http://lblod.data.gift/concepts/c4a3fd586211b17b06f574885e23f355>,
<http://lblod.data.gift/concepts/e357bc8f4cc3a694fde2239748768a22>)
&& ?worshipStatus = <http://lblod.data.gift/concepts/abf4fee82019f88cf122f986830621ab>)
}
}

View File

@@ -1,19 +0,0 @@
INSERT {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s a <http://www.w3.org/ns/org#Post> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s a <http://data.vlaanderen.be/ns/mandaat#Mandaat> .
}
}
INSERT {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s a <http://www.w3.org/ns/org#Post> .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/worship-service> {
?s a <http://data.vlaanderen.be/ns/mandaat#Mandaat> .
}
}

View File

@@ -1,17 +0,0 @@
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
delete {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/veranderingsgebeurtenissen/642E815DE025A7C706F41E5D> <http://purl.org/dc/terms/date> "2023-03-30"^^xsd:date .
}
}
insert {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/veranderingsgebeurtenissen/642E815DE025A7C706F41E5D> <http://purl.org/dc/terms/date> "2023-04-06"^^xsd:date .
}
}
where {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/veranderingsgebeurtenissen/642E815DE025A7C706F41E5D> <http://purl.org/dc/terms/date> "2023-03-30"^^xsd:date .
}
}

View File

@@ -1,23 +0,0 @@
DELETE DATA {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
<http://data.lblod.info/id/bestuursorganen/ad933a3247ab634eb1a8c7233e77d6ea8cd2b6e1950d302832d065dcb516bcf5> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Voeren" .
<http://data.lblod.info/id/bestuursorganen/082976d57de0655ac4f123b57d5cb008f612956d0a6de1742c02913dcbfcf125> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Drogenbos" .
<http://data.lblod.info/id/bestuursorganen/cc803c53b2e0b17aac1069f5566fb8e1c8dad2f702845515a662229721803c00> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Wezembeek-Oppem" .
<http://data.lblod.info/id/bestuursorganen/f373ece36dc05b29737c0adc14de95682161bb78a55cb85f786fac3fbd5b1cfc> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Sint-Genesius-Rode" .
<http://data.lblod.info/id/bestuursorganen/317126204426dc7cabb60ecb09cbe4ca4830882652884e1e5800e60231195f5c> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Linkebeek" .
<http://data.lblod.info/id/bestuursorganen/db8c3e2da85d7621120a986adc19fd8d21f501b39c01952238073abfe7d4a7e7> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Wemmel" .
<http://data.lblod.info/id/bestuursorganen/d7fffe5c17d1936d46b92620d1e454f38393736988514b5f339910a17c7134f0> <http://www.w3.org/2004/02/skos/core#prefLabel> "OCMWraad(Rechtstreeksverkiezing) Kraainem" .
}
}
;
INSERT DATA {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
<http://data.lblod.info/id/bestuursorganen/f373ece36dc05b29737c0adc14de95682161bb78a55cb85f786fac3fbd5b1cfc> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Sint-Genesius-Rode" .
<http://data.lblod.info/id/bestuursorganen/317126204426dc7cabb60ecb09cbe4ca4830882652884e1e5800e60231195f5c> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Linkebeek" .
<http://data.lblod.info/id/bestuursorganen/cc803c53b2e0b17aac1069f5566fb8e1c8dad2f702845515a662229721803c00> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Wezembeek-Oppem" .
<http://data.lblod.info/id/bestuursorganen/ad933a3247ab634eb1a8c7233e77d6ea8cd2b6e1950d302832d065dcb516bcf5> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Voeren" .
<http://data.lblod.info/id/bestuursorganen/082976d57de0655ac4f123b57d5cb008f612956d0a6de1742c02913dcbfcf125> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Drogenbos" .
<http://data.lblod.info/id/bestuursorganen/d7fffe5c17d1936d46b92620d1e454f38393736988514b5f339910a17c7134f0> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Kraainem" .
<http://data.lblod.info/id/bestuursorganen/db8c3e2da85d7621120a986adc19fd8d21f501b39c01952238073abfe7d4a7e7> <http://www.w3.org/2004/02/skos/core#prefLabel> "Raad voor Maatschappelijk Welzijn Wemmel" .
}
}

View File

@@ -1,15 +0,0 @@
delete {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/veranderingsgebeurtenissen/644616FDF08BCC5A4747B5A2> <http://purl.org/dc/terms/date> ?date.
}
}
insert {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/veranderingsgebeurtenissen/644616FDF08BCC5A4747B5A2> <http://purl.org/dc/terms/date> "2022-04-22".
}
}
where {
graph <http://mu.semte.ch/graphs/worship-service> {
<http://data.lblod.info/id/veranderingsgebeurtenissen/644616FDF08BCC5A4747B5A2> <http://purl.org/dc/terms/date> ?date.
}
}

View File

@@ -1,58 +0,0 @@
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH ?g {
?orgaanInTime mandaat:bindingEinde ?end .
}
} INSERT {
GRAPH ?g {
?orgaanInTime mandaat:bindingEinde ?endDateTime .
}
} WHERE {
VALUES ?g {
<http://mu.semte.ch/graphs/worship-service>
<http://mu.semte.ch/graphs/administrative-unit>
}
GRAPH ?g {
?bestuurseenheid a ?type .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
?orgaanInTime mandaat:bindingEinde ?end .
FILTER (datatype(?end) = xsd:date)
BIND(strdt(concat(str(?end), 'T01:00:00'), xsd:dateTime) as ?endDateTime)
}
}
;
DELETE {
GRAPH ?g {
?orgaanInTime mandaat:bindingStart ?start .
}
} INSERT {
GRAPH ?g {
?orgaanInTime mandaat:bindingStart ?startDateTime .
}
} WHERE {
VALUES ?g {
<http://mu.semte.ch/graphs/worship-service>
<http://mu.semte.ch/graphs/administrative-unit>
}
GRAPH ?g {
?bestuurseenheid a ?type .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
?orgaanInTime mandaat:bindingStart ?start .
FILTER (datatype(?start) = xsd:date)
BIND(strdt(concat(str(?start), 'T01:00:00'), xsd:dateTime) as ?startDateTime)
}
}

View File

@@ -1,60 +0,0 @@
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
DELETE {
GRAPH ?g {
?orgaanInTime mandaat:bindingEinde ?end .
}
} INSERT {
GRAPH ?g {
?orgaanInTime mandaat:bindingEinde ?endDateTime .
}
} WHERE {
VALUES ?g {
<http://mu.semte.ch/graphs/worship-service>
<http://mu.semte.ch/graphs/administrative-unit>
}
GRAPH ?g {
?bestuurseenheid a ?type .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
?orgaanInTime mandaat:bindingEinde ?end .
FILTER (HOURS(?end) = 1)
BIND(strdt(concat(xsd:date(?end), 'T00:00:00'), xsd:dateTime) as ?endDateTime)
}
}
;
DELETE {
GRAPH ?g {
?orgaanInTime mandaat:bindingStart ?start .
}
} INSERT {
GRAPH ?g {
?orgaanInTime mandaat:bindingStart ?startDateTime .
}
} WHERE {
VALUES ?g {
<http://mu.semte.ch/graphs/worship-service>
<http://mu.semte.ch/graphs/administrative-unit>
}
GRAPH ?g {
?bestuurseenheid a ?type .
?bestuursorgaan besluit:bestuurt ?bestuurseenheid .
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
?orgaanInTime mandaat:bindingStart ?start .
FILTER (HOURS(?start) = 1)
BIND(strdt(concat(xsd:date(?start), 'T00:00:00'), xsd:dateTime) as ?startDateTime)
}
}

View File

@@ -1,11 +0,0 @@
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s ?p ?o .
}
}
WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?s a <http://data.vlaanderen.be/ns/mandaat#Fractie> ;
?p ?o .
}
}

View File

@@ -1,24 +0,0 @@
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
INSERT {
GRAPH ?g {
?org a org:Organization .
}
} WHERE {
VALUES ?g {
<http://mu.semte.ch/graphs/shared>
<http://mu.semte.ch/graphs/worship-service>
<http://mu.semte.ch/graphs/administrative-unit>
}
GRAPH ?g {
VALUES ?type {
besluit:Bestuurseenheid
ere:RepresentatiefOrgaan
ere:EredienstBestuurseenheid
ere:BestuurVanDeEredienst
ere:CentraalBestuurVanDeEredienst
}
?org a ?type .
}
}

View File

@@ -1,75 +0,0 @@
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX concepts: <http://lblod.data.gift/concepts/>
PREFIX bestuur: <http://data.lblod.info/id/besturenVanDeEredienst/>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX contacthub: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX ce: <http://data.lblod.info/id/veranderingsgebeurtenissen/>
PREFIX cer: <http://data.lblod.info/id/veranderingsgebeurtenis-resultaten/>
PREFIX m8g: <http://data.europa.eu/m8g/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX eli: <http://data.europa.eu/eli/ontology#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
DELETE {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?decision ?decisionP ?decisionO.
}
}
INSERT {
graph <http://mu.semte.ch/graphs/worship-service> {
?decision ?decisionP ?decisionO.
}
}
WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
?changeEvent a <http://www.w3.org/ns/org#ChangeEvent>;
<http://data.europa.eu/m8g/hasFormalFramework> ?decision.
}
graph <http://mu.semte.ch/graphs/administrative-unit> {
?decision ?decisionP ?decisionO.
}
}
;
DELETE {
graph <http://mu.semte.ch/graphs/administrative-unit> {
?decisionActivity ?p ?o.
}
}
INSERT {
graph <http://mu.semte.ch/graphs/worship-service> {
?decisionActivity ?p ?o.
}
}
WHERE {
graph <http://mu.semte.ch/graphs/worship-service> {
?decision a <http://data.vlaanderen.be/ns/besluit#Besluit>.
}
graph <http://mu.semte.ch/graphs/administrative-unit> {
?decisionActivity a <https://data.vlaanderen.be/ns/besluitvorming#Beslissingsactiviteit>;
<http://www.w3.org/ns/prov#generated> ?decision;
?p ?o.
}
}

View File

@@ -1,57 +0,0 @@
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX concepts: <http://lblod.data.gift/concepts/>
PREFIX bestuur: <http://data.lblod.info/id/besturenVanDeEredienst/>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX contacthub: <http://data.lblod.info/vocabularies/contacthub/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX ce: <http://data.lblod.info/id/veranderingsgebeurtenissen/>
PREFIX cer: <http://data.lblod.info/id/veranderingsgebeurtenis-resultaten/>
PREFIX m8g: <http://data.europa.eu/m8g/>
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
PREFIX eli: <http://data.europa.eu/eli/ontology#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
DELETE {
graph ?g {
?changeEvent ?p ?o.
?changeEventResult ?cP ?cO.
?decision ?decisionP ?decisionO.
?decisionActivity ?decisionActivityP ?desitionActivityO.
}
}
WHERE {
graph ?g {
?changeEvent a <http://www.w3.org/ns/org#ChangeEvent>;
<http://lblod.data.gift/vocabularies/organisatie/veranderingsgebeurtenisResultaat> ?changeEventResult;
mu:uuid ?uuidChangeEvent;
?p ?o.
?changeEventResult a <http://lblod.data.gift/vocabularies/organisatie/VeranderingsgebeurtenisResultaat>;
mu:uuid ?uuidChangeEventResult;
?cP ?cO.
optional {
?changeEvent <http://data.europa.eu/m8g/hasFormalFramework> ?decision.
?decision ?decisionP ?decisionO.
optional {
?decisionActivity a <https://data.vlaanderen.be/ns/besluitvorming#Beslissingsactiviteit>;
<http://www.w3.org/ns/prov#generated> ?decision;
?decisionActivityP ?desitionActivityO.
}
}
filter(?uuidChangeEvent in ("63343865036B579F0A26FF5C", "63343E99036B579F0A26FF6F", "633446D6036B579F0A26FF87","63345772036B579F0A26FF93"))
}
}

View File

@@ -1,16 +0,0 @@
delete {
graph ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/620E674C5747C883CA1D2EE4> <http://data.lblod.info/vocabularies/contacthub/typeWijziging> <http://lblod.data.gift/concepts/9f19f14910245f9b14737f1f1a2067f2>.
}
}
insert {
graph ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/620E674C5747C883CA1D2EE4> <http://data.lblod.info/vocabularies/contacthub/typeWijziging> <http://lblod.data.gift/concepts/4297bc56c1a874240e4566e2c5b8816f>.
}
}
where {
graph ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/620E674C5747C883CA1D2EE4> <http://data.lblod.info/vocabularies/contacthub/typeWijziging> <http://lblod.data.gift/concepts/9f19f14910245f9b14737f1f1a2067f2>.
}
}

View File

@@ -1,21 +0,0 @@
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?functionaris ?pfunctionaris ?ofunctionaris .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?functionaris a <http://data.lblod.info/vocabularies/leidinggevenden/Functionaris> ;
<http://www.w3.org/ns/org#holds> ?bestuursfunctie ;
?pfunctionaris ?ofunctionaris .
}
?orgaan <http://data.lblod.info/vocabularies/leidinggevenden/heeftBestuursfunctie> ?bestuursfunctie ;
<http://data.vlaanderen.be/ns/mandaat#isTijdspecialisatieVan>/<http://data.vlaanderen.be/ns/besluit#bestuurt>/<http://data.vlaanderen.be/ns/besluit#classificatie> ?classification .
FILTER(?classification NOT IN (
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000002>,
<http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000003>
))
}

View File

@@ -1,19 +0,0 @@
delete {
graph ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/6380DDD34B5FEAF28DEDE982> <http://data.lblod.info/vocabularies/contacthub/typeWijziging>
<http://lblod.data.gift/concepts/3dd7550843eaf18e1fa1ca6c6c3f2610>.
}
}
insert {
graph ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/6380DDD34B5FEAF28DEDE982> <http://data.lblod.info/vocabularies/contacthub/typeWijziging>
<http://lblod.data.gift/concepts/9f19f14910245f9b14737f1f1a2067f2>.
}
}
where {
graph ?g {
<http://data.lblod.info/id/veranderingsgebeurtenissen/6380DDD34B5FEAF28DEDE982> <http://data.lblod.info/vocabularies/contacthub/typeWijziging>
<http://lblod.data.gift/concepts/3dd7550843eaf18e1fa1ca6c6c3f2610>.
}
}

View File

@@ -1,17 +0,0 @@
DELETE {
graph <http://mu.semte.ch/graphs/public> {
<http://lblod.data.gift/concepts/dcc01338-842c-4fbd-ba68-3ca6f3af975c> <http://www.w3.org/2004/02/skos/core#prefLabel> "Correspondentieadres".
}
}
INSERT {
graph <http://mu.semte.ch/graphs/public> {
<http://lblod.data.gift/concepts/dcc01338-842c-4fbd-ba68-3ca6f3af975c> <http://www.w3.org/2004/02/skos/core#prefLabel> "Andere vestiging".
}
}
WHERE {
graph <http://mu.semte.ch/graphs/public> {
<http://lblod.data.gift/concepts/dcc01338-842c-4fbd-ba68-3ca6f3af975c> <http://www.w3.org/2004/02/skos/core#prefLabel> "Correspondentieadres".
}
}

Some files were not shown because too many files have changed in this diff Show More