Compare commits
87 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c9fba61ae7 | ||
|
|
8713e635ad | ||
|
|
1241a31cd2 | ||
|
|
7b8e944bb3 | ||
|
|
20b1498322 | ||
|
|
6cbca9c3fb | ||
|
|
075e56b1f2 | ||
|
|
bf8a5989ff | ||
|
|
8e6f6067db | ||
|
|
fd89b9cbf4 | ||
|
|
c4c8f2332b | ||
|
|
d89064d167 | ||
|
|
94fc9ac78e | ||
|
|
20d87aaf20 | ||
|
|
2576f86068 | ||
|
|
37f49f5495 | ||
|
|
8e5d33f8fb | ||
|
|
71e024c007 | ||
|
|
fef430002b | ||
|
|
607384293d | ||
|
|
d61b7c6c45 | ||
|
|
0e64b2589c | ||
|
|
dbb9c06dd7 | ||
|
|
e61f606def | ||
|
|
d32cb11cea | ||
|
|
bd282e7335 | ||
|
|
13e27de65c | ||
|
|
753c855164 | ||
|
|
bd06e4483b | ||
|
|
040ba2f17a | ||
|
|
f4c938ef96 | ||
|
|
2a49ad7f71 | ||
|
|
f6e7f92573 | ||
|
|
fee54793e3 | ||
|
|
ca8a6f4a65 | ||
|
|
f38794236d | ||
|
|
64149634fd | ||
|
|
21ee39edd6 | ||
|
|
75d77f2b2e | ||
|
|
cc6c73eb5b | ||
|
|
13170dfd26 | ||
|
|
b4b997f89a | ||
|
|
6516b3cb28 | ||
|
|
6591a5eaad | ||
|
|
368513c0f3 | ||
|
|
109583b791 | ||
|
|
563817c5e6 | ||
|
|
e37df13876 | ||
|
|
e1fdde7010 | ||
|
|
a4e326a751 | ||
|
|
18efa236dc | ||
|
|
b19f8f070f | ||
|
|
352c41502b | ||
|
|
4c8c4877c0 | ||
|
|
91b49104a6 | ||
|
|
d2f49fef61 | ||
|
|
a127ea8060 | ||
|
|
55ea87dd6c | ||
|
|
64af5d00f0 | ||
|
|
449245700e | ||
|
|
a4940c0aa4 | ||
|
|
bb6a916e45 | ||
|
|
f236290b62 | ||
|
|
1ba0cbbf70 | ||
|
|
c37ad8c764 | ||
|
|
996f81bb76 | ||
|
|
9a1188fa7d | ||
|
|
7223549102 | ||
|
|
305a1fcb41 | ||
|
|
03d2d4ee3d | ||
|
|
7287b2fe78 | ||
|
|
b13e30447c | ||
|
|
582e2a7203 | ||
|
|
a0d0d76a61 | ||
|
|
179b3d6643 | ||
|
|
aab72d2373 | ||
|
|
532ea6d31b | ||
|
|
0df998940f | ||
|
|
b372d382d0 | ||
|
|
94ecc51678 | ||
|
|
01a4de2d03 | ||
|
|
5c1f091c20 | ||
|
|
0488495d78 | ||
|
|
13d6e2554c | ||
|
|
a69ba129fd | ||
|
|
db64953815 | ||
|
|
5e0ac45f42 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,6 +4,7 @@
|
||||
!/data/db/toLoad
|
||||
!/data/db/toLoad/*
|
||||
/data/files/*
|
||||
/data/temp/*
|
||||
docker-compose.override.yml
|
||||
.idea
|
||||
*.iml
|
||||
|
||||
@@ -1,38 +1,66 @@
|
||||
{
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/administrative-units" : {
|
||||
"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",
|
||||
"compression": true
|
||||
"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" : {
|
||||
"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",
|
||||
"compression": true
|
||||
"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" : {
|
||||
"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",
|
||||
"fileBaseName": "dump-organizations",
|
||||
"compression": true
|
||||
"targetDcatGraph": "http://redpencil.data.gift/id/deltas/producer/organizations-deltas",
|
||||
"targetFilesGraph": "http://redpencil.data.gift/id/deltas/producer/organizationsdeltas",
|
||||
"cleanupOldDumps": true
|
||||
},
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations" : {
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations": {
|
||||
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/OrganizationsCacheGraphDump",
|
||||
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/organizations",
|
||||
"fileBaseName": "dump-organizations",
|
||||
"compression": true
|
||||
"targetDcatGraph": "http://redpencil.data.gift/id/deltas/producer/organizations-deltas",
|
||||
"targetFilesGraph": "http://redpencil.data.gift/id/deltas/producer/organizationsdeltas",
|
||||
"cleanupOldDumps": true
|
||||
},
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/public" : {
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/public": {
|
||||
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/PublicCacheGraphDump",
|
||||
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/public",
|
||||
"fileBaseName": "dump-public",
|
||||
"compression": false
|
||||
"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/public" : {
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public": {
|
||||
"dcatDataSetSubject": "http://data.lblod.info/datasets/delta-producer/dumps/PublicCacheGraphDump",
|
||||
"targetGraph": "http://redpencil.data.gift/id/deltas/producer/public",
|
||||
"fileBaseName": "dump-public",
|
||||
"compression": false
|
||||
"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/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",
|
||||
"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/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",
|
||||
"targetDcatGraph": "http://mu.semte.ch/graphs/public",
|
||||
"targetFilesGraph": "http://mu.semte.ch/graphs/public",
|
||||
"cleanupOldDumps": true
|
||||
}
|
||||
}
|
||||
|
||||
47
config/delta-producer/worship-posts/export.json
Normal file
47
config/delta-producer/worship-posts/export.json
Normal file
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"export": [
|
||||
{
|
||||
"type": "http://data.vlaanderen.be/ns/mandaat#Mandaat",
|
||||
"graphsFilter": [
|
||||
"http://mu.semte.ch/graphs/organisatieportaal"
|
||||
],
|
||||
"properties": [
|
||||
"http://mu.semte.ch/vocabularies/core/uuid",
|
||||
"http://www.w3.org/ns/org#role"
|
||||
],
|
||||
"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.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst",
|
||||
"strictTypeExport": "true",
|
||||
"graphsFilter": [
|
||||
"http://mu.semte.ch/graphs/organisatieportaal"
|
||||
],
|
||||
"properties": [
|
||||
"http://data.lblod.info/vocabularies/erediensten/wordtBediendDoor"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "http://data.vlaanderen.be/ns/besluit#Bestuursorgaan",
|
||||
"strictTypeExport": "true",
|
||||
"graphsFilter": [
|
||||
"http://mu.semte.ch/graphs/organisatieportaal"
|
||||
],
|
||||
"properties": [
|
||||
"http://www.w3.org/ns/org#hasPost"
|
||||
],
|
||||
"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/organisatieportaal"
|
||||
],
|
||||
"properties": [
|
||||
"http://mu.semte.ch/vocabularies/core/uuid",
|
||||
"http://www.w3.org/ns/org#role",
|
||||
"http://data.lblod.info/vocabularies/erediensten/functie"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -156,6 +156,24 @@ export default [
|
||||
optOutMuScopeIds: [ "http://redpencil.data.gift/id/concept/muScope/deltas/initialSync" ]
|
||||
}
|
||||
},
|
||||
{
|
||||
match: {
|
||||
// anything
|
||||
},
|
||||
callback: {
|
||||
url: 'http://delta-producer-pub-graph-maintainer-worship-posts/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: {
|
||||
predicate: {
|
||||
|
||||
@@ -282,6 +282,9 @@ defmodule Dispatcher do
|
||||
forward conn, path, "http://uri-info/"
|
||||
end
|
||||
|
||||
post "/create-administrative-unit-relationships/*path", %{ layer: :api_services, accept: %{ json: true } } do
|
||||
forward conn, path, "http://construct-administrative-unit-relationships/create-relationships/"
|
||||
end
|
||||
|
||||
#################################################################
|
||||
# ERROR REPORT
|
||||
@@ -332,6 +335,14 @@ defmodule Dispatcher do
|
||||
Proxy.forward conn, path, "http://delta-producer-json-diff-file-publisher-organizations/files/"
|
||||
end
|
||||
|
||||
#################################################################
|
||||
# DELTA: posts
|
||||
#################################################################
|
||||
|
||||
get "/sync/worship-posts/files/*path" do
|
||||
Proxy.forward conn, path, "http://delta-producer-pub-graph-maintainer-worship-posts/files/"
|
||||
end
|
||||
|
||||
###############################################################
|
||||
# frontend layer
|
||||
###############################################################
|
||||
|
||||
@@ -94,5 +94,37 @@
|
||||
"nextIndex": "0"
|
||||
}
|
||||
]
|
||||
},
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts": {
|
||||
"tasksConfiguration": [
|
||||
{
|
||||
"currentOperation": null,
|
||||
"nextOperation": "http://redpencil.data.gift/id/jobs/concept/TaskOperation/deltas/initialPublicationGraphSyncing",
|
||||
"nextIndex": "0"
|
||||
},
|
||||
{
|
||||
"currentOperation": "http://redpencil.data.gift/id/jobs/concept/TaskOperation/deltas/initialPublicationGraphSyncing",
|
||||
"nextOperation": "http://redpencil.data.gift/id/jobs/concept/TaskOperation/deltas/deltaDumpFileCreation",
|
||||
"nextIndex": "1"
|
||||
}
|
||||
]
|
||||
},
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts": {
|
||||
"tasksConfiguration": [
|
||||
{
|
||||
"currentOperation": null,
|
||||
"nextOperation": "http://redpencil.data.gift/id/jobs/concept/TaskOperation/deltas/healing/patchPublicationGraph",
|
||||
"nextIndex": "0"
|
||||
}
|
||||
]
|
||||
},
|
||||
"http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts": {
|
||||
"tasksConfiguration": [
|
||||
{
|
||||
"currentOperation": null,
|
||||
"nextOperation": "http://redpencil.data.gift/id/jobs/concept/TaskOperation/deltas/deltaDumpFileCreation",
|
||||
"nextIndex": "0"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
29
config/loket-consumer/leidinggevenden-dispatching/config.js
Normal file
29
config/loket-consumer/leidinggevenden-dispatching/config.js
Normal file
@@ -0,0 +1,29 @@
|
||||
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://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`;
|
||||
|
||||
|
||||
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,
|
||||
MU_CALL_SCOPE_ID_INITIAL_SYNC,
|
||||
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
|
||||
DIRECT_DATABASE_ENDPOINT,
|
||||
MAX_DB_RETRY_ATTEMPTS,
|
||||
MAX_REASONING_RETRY_ATTEMPTS,
|
||||
SLEEP_BETWEEN_BATCHES,
|
||||
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
|
||||
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
|
||||
INGEST_GRAPH,
|
||||
FILE_SYNC_GRAPH
|
||||
};
|
||||
@@ -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
|
||||
};
|
||||
@@ -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
|
||||
};
|
||||
153
config/loket-consumer/leidinggevenden-dispatching/util.js
Normal file
153
config/loket-consumer/leidinggevenden-dispatching/util.js
Normal file
@@ -0,0 +1,153 @@
|
||||
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) {
|
||||
return operationWithRetry(mainConversion(fetch, triples), 0,
|
||||
MAX_REASONING_RETRY_ATTEMPTS, SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION);
|
||||
}
|
||||
|
||||
|
||||
function mainConversion(fetch, triples) {
|
||||
let formdata = new URLSearchParams();
|
||||
formdata.append("data", triples);
|
||||
|
||||
let requestOptions = {
|
||||
method: 'POST',
|
||||
body: formdata,
|
||||
redirect: 'follow'
|
||||
};
|
||||
|
||||
return fetch("http://reasoner/reason/dl2op/main", requestOptions)
|
||||
.then(response => response.text());
|
||||
}
|
||||
|
||||
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
|
||||
};
|
||||
29
config/loket-consumer/mandate-dispatching/config.js
Normal file
29
config/loket-consumer/mandate-dispatching/config.js
Normal file
@@ -0,0 +1,29 @@
|
||||
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://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`;
|
||||
|
||||
|
||||
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,
|
||||
MU_CALL_SCOPE_ID_INITIAL_SYNC,
|
||||
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
|
||||
DIRECT_DATABASE_ENDPOINT,
|
||||
MAX_DB_RETRY_ATTEMPTS,
|
||||
MAX_REASONING_RETRY_ATTEMPTS,
|
||||
SLEEP_BETWEEN_BATCHES,
|
||||
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
|
||||
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
|
||||
INGEST_GRAPH,
|
||||
FILE_SYNC_GRAPH
|
||||
};
|
||||
@@ -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
|
||||
};
|
||||
@@ -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
|
||||
};
|
||||
153
config/loket-consumer/mandate-dispatching/util.js
Normal file
153
config/loket-consumer/mandate-dispatching/util.js
Normal file
@@ -0,0 +1,153 @@
|
||||
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) {
|
||||
return operationWithRetry(mainConversion(fetch, triples), 0,
|
||||
MAX_REASONING_RETRY_ATTEMPTS, SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION);
|
||||
}
|
||||
|
||||
|
||||
function mainConversion(fetch, triples) {
|
||||
let formdata = new URLSearchParams();
|
||||
formdata.append("data", triples);
|
||||
|
||||
let requestOptions = {
|
||||
method: 'POST',
|
||||
body: formdata,
|
||||
redirect: 'follow'
|
||||
};
|
||||
|
||||
return fetch("http://reasoner/reason/dl2op/main", requestOptions)
|
||||
.then(response => response.text());
|
||||
}
|
||||
|
||||
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
|
||||
};
|
||||
36
config/loket-consumer/positions-dispatching/config.js
Normal file
36
config/loket-consumer/positions-dispatching/config.js
Normal file
@@ -0,0 +1,36 @@
|
||||
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://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';
|
||||
|
||||
|
||||
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,
|
||||
MU_CALL_SCOPE_ID_INITIAL_SYNC,
|
||||
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES,
|
||||
DIRECT_DATABASE_ENDPOINT,
|
||||
MAX_DB_RETRY_ATTEMPTS,
|
||||
MAX_REASONING_RETRY_ATTEMPTS,
|
||||
SLEEP_BETWEEN_BATCHES,
|
||||
SLEEP_TIME_AFTER_FAILED_DB_OPERATION,
|
||||
SLEEP_TIME_AFTER_FAILED_REASONING_OPERATION,
|
||||
INGEST_GRAPH,
|
||||
PRIVACY_SENSITIVE_GRAPH,
|
||||
UNFILTERED_MAPPING,
|
||||
MAIN_INFO_MAPPING,
|
||||
PRIVATE_INFO_MAPPING,
|
||||
};
|
||||
@@ -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
|
||||
};
|
||||
@@ -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
|
||||
};
|
||||
154
config/loket-consumer/positions-dispatching/util.js
Normal file
154
config/loket-consumer/positions-dispatching/util.js
Normal 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
|
||||
};
|
||||
@@ -0,0 +1,40 @@
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?org
|
||||
regorg:orgStatus <http://lblod.data.gift/concepts/d02c4e12bf88d2fdf5123b07f29c9311> . # Niet Actief
|
||||
}
|
||||
} WHERE {
|
||||
VALUES ?org {
|
||||
<http://data.lblod.info/id/bestuurseenheden/1d43739442010a95b1910af237a4f6aa9a26ca6c9c83f646bad44a8181d407c7> # Gemeente Lovendegem
|
||||
<http://data.lblod.info/id/bestuurseenheden/1b11f7f11c3c74c54acf86b8c1a9b8b2865e22b8973818486045a5d3aa8dff14> # Gemeente Puurs
|
||||
<http://data.lblod.info/id/bestuurseenheden/b85b33fb0ce57e2b332599d2aaafcab35a3560b709add3cec98e21dca6cdc210> # Gemeente Knesselare
|
||||
<http://data.lblod.info/id/bestuurseenheden/8ed14ecd083fb231f9af0f2698de728bba3f11deb0f4ea4caf9d5c1f9e3a771b> # Gemeente Nevele
|
||||
<http://data.lblod.info/id/bestuurseenheden/db046b577b77c00cc82b51b1cdf14396364cbe1ebc0f4cfee09619bec9b0bd5e> # Gemeente Kruishoutem
|
||||
<http://data.lblod.info/id/bestuurseenheden/e3fc7eb1c6f50aa4277e0ae180b002eddf243dab630e9278996df9951316da68> # Gemeente Neerpelt
|
||||
<http://data.lblod.info/id/bestuurseenheden/25b05f670144f166a485a1d0ac37faca672b36642cf1647d846010d6fe9cabb5> # Gemeente Deinze (voor fusie)
|
||||
<http://data.lblod.info/id/bestuurseenheden/d7d9ef5babd2876ad492a71c2019f02cf90c813c00befcf3682ba49186d0f4b1> # Gemeente Overpelt
|
||||
<http://data.lblod.info/id/bestuurseenheden/5eaaceb01cc2a6bc418d5fcdc6c855bdfe1d1fcbc8abf8bb9cfcea76edbc8936> # Gemeente Meeuwen-Gruitrode
|
||||
<http://data.lblod.info/id/bestuurseenheden/571b85dc585067ac92f9de90133e747c75f3f7e7948087ae193583b9f0fe1141> # Gemeente Sint-Amands
|
||||
<http://data.lblod.info/id/bestuurseenheden/19537690173d82d774bf34abaa07f3b1af78139014e53aa8f172a0a558bc5e09> # Gemeente Zingem
|
||||
<http://data.lblod.info/id/bestuurseenheden/be8c097326db7ba0e0e7c81b832da8b4cdeabe22b515494753dd95d33d9ea295> # Gemeente Opglabbeek
|
||||
<http://data.lblod.info/id/bestuurseenheden/66374f1f46137c3240ba0690b24056a014f9ad5f36ae81e10bc14ad5a6305089> # Gemeente Zomergem
|
||||
<http://data.lblod.info/id/bestuurseenheden/46a7ee2627bf51959f9a72fdb6f5aec942f5e07484c1bfe7da2fb8a74c830326> # Gemeente Waarschoot
|
||||
|
||||
<http://data.lblod.info/id/bestuurseenheden/cb6ea2dd7a009bca2aa4c1058cce5545420792b9db0a6b5516e49a4ae4b03701> # OCMW Zingem
|
||||
<http://data.lblod.info/id/bestuurseenheden/56db39c0bb1c85e9c5aec9adb3f5af9720d4702e30f4772aecd272f03c7becea> # OCMW Deinze (voor fusie)
|
||||
<http://data.lblod.info/id/bestuurseenheden/43ad404aee5fd4f07d575e118883934b0ad0ead0ef8cee0793b7f72e4c1ce19f> # OCMW Opglabbeek
|
||||
<http://data.lblod.info/id/bestuurseenheden/c78f64baa2f264a2c8b5207f788c285ffc1c0393cf20e6fc83ab61548a2baf9c> # OCMW Nevele
|
||||
<http://data.lblod.info/id/bestuurseenheden/f879d68d0f66af67aa045b1194cde7dc5d82e3bfe07746cc682be472c9556631> # OCMW Waarschoot
|
||||
<http://data.lblod.info/id/bestuurseenheden/be5f63236aacb5478334077a901dbda6816a7b923753b49c06295777b47e6aa4> # OCMW Meeuwen-Gruitrode
|
||||
<http://data.lblod.info/id/bestuurseenheden/19673274e30b682be3dd3178352611aa26c28ea8907fd4990ff69e01af7019f6> # OCMW Kruishoutem
|
||||
<http://data.lblod.info/id/bestuurseenheden/2712dbaca999e57d26f1f0d3e72b2ed96113d6ac62d72b7228fd682e1324e4e5> # OCMW Puurs
|
||||
<http://data.lblod.info/id/bestuurseenheden/51793f0f16c2b06e9c64cbc141407fcafaa340576c96988971dc0855f032940c> # OCMW Zomergem
|
||||
<http://data.lblod.info/id/bestuurseenheden/be274f73ffbd75a9cf28222f45044f468b40692ca9c80c8c5899acf554498e24> # OCMW Sint-Amands
|
||||
<http://data.lblod.info/id/bestuurseenheden/e3289466b88127a445e1467a360f24221bdac2723613b8adabeb131e8d9a3659> # OCMW Overpelt
|
||||
<http://data.lblod.info/id/bestuurseenheden/92207a4e09455f59f19553e95ebc4ea1b33e6f7b2e5cf317ea31ba7ac0cbca45> # OCMW Knesselare
|
||||
<http://data.lblod.info/id/bestuurseenheden/32d0fce422c04b004e3cf640d3aa06468f8ec8f650d578806642c1097b95d782> # OCMW Lovendegem
|
||||
<http://data.lblod.info/id/bestuurseenheden/f5077ea4d13ee6d74749b2d9e7de428b0633388a10b436984859021cf62731b9> # OCMW Neerpelt
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?org
|
||||
regorg:orgStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> . # Actief
|
||||
}
|
||||
} WHERE {
|
||||
VALUES ?org {
|
||||
<http://data.lblod.info/id/bestuurseenheden/33a1886b07b64ebe3a0e6c5ed8086f030ef1109492cb254832a716dd7e1b8d7b> # District Ekeren
|
||||
<http://data.lblod.info/id/bestuurseenheden/43e3009526dac139a0abdcf75c1ddc5fa3fe9217391d6f64f7b7a30a99a4cda6> # District Deurne
|
||||
<http://data.lblod.info/id/bestuurseenheden/859f08dcfbc8f68bac0879e7baf6463b260b6f4c16b734d0d1986f5f3af0407b> # District Berendrecht-Zandvliet-Lillo
|
||||
<http://data.lblod.info/id/bestuurseenheden/fb56bc40ce36390d2f12fc2057c89d4b6bc5b3217eabd41995b6401318ff648a> # District Berchem
|
||||
<http://data.lblod.info/id/bestuurseenheden/a2ee394059cce91526392e73e4de974d90caffb92f70cde23b9e9e1a965526fa> # District Hoboken
|
||||
<http://data.lblod.info/id/bestuurseenheden/73e8904d83f7324e39abc0adf639b0e48bc52533c4c243b6419cac8fb70784cf> # District Wilrijk
|
||||
<http://data.lblod.info/id/bestuurseenheden/5be3ff820769b385a32e499d17bbf1f15feeacb65381d5384841732dd4a1209b> # District Antwerpen
|
||||
<http://data.lblod.info/id/bestuurseenheden/e7a75861661ee14ebe2bca0c79bda8b23f2f943d00a9693d2bff401a8f8dea65> # District Borgerhout
|
||||
<http://data.lblod.info/id/bestuurseenheden/f1ad80291fbdc1f0b9b25d729ecc608a8e28fdddab01a1b8e135c841c75586e2> # District Merksem
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,185 @@
|
||||
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
|
||||
# When only a language typed address literal is available, replace it with a plain literal
|
||||
# When both plain and language typed are available, remove the language typed literal
|
||||
# Rationale: lang typed literals are inserted via the migrations. When both types are available
|
||||
# this new value is the plain literal, the old language typed literal is not deleted by the application
|
||||
# and thus should be deleted via this migration - without - copying the value to a plain literal.
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:fullAddress ?literal_withLang
|
||||
}
|
||||
INSERT {
|
||||
?address locn:fullAddress ?literal_cleansed
|
||||
}
|
||||
WHERE {
|
||||
?address locn:fullAddress ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?address locn:fullAddress ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
|
||||
BIND(str(?literal_withLang) AS ?literal_cleansed)
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:fullAddress ?literal_withLang
|
||||
}
|
||||
WHERE {
|
||||
?address locn:fullAddress ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER EXISTS {
|
||||
?address locn:fullAddress ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:adminUnitL2 ?literal_withLang
|
||||
}
|
||||
INSERT {
|
||||
?address locn:adminUnitL2 ?literal_cleansed
|
||||
}
|
||||
WHERE {
|
||||
?address locn:adminUnitL2 ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?address locn:adminUnitL2 ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
|
||||
BIND(str(?literal_withLang) AS ?literal_cleansed)
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:adminUnitL2 ?literal_withLang
|
||||
}
|
||||
WHERE {
|
||||
?address locn:adminUnitL2 ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER EXISTS {
|
||||
?address locn:adminUnitL2 ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:thoroughfare ?literal_withLang
|
||||
}
|
||||
INSERT {
|
||||
?address locn:thoroughfare ?literal_cleansed
|
||||
}
|
||||
WHERE {
|
||||
?address locn:thoroughfare ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?address locn:thoroughfare ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
|
||||
BIND(str(?literal_withLang) AS ?literal_cleansed)
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:thoroughfare ?literal_withLang
|
||||
}
|
||||
WHERE {
|
||||
?address locn:thoroughfare ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER EXISTS {
|
||||
?address locn:thoroughfare ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address adres:gemeentenaam ?literal_withLang
|
||||
}
|
||||
INSERT {
|
||||
?address adres:gemeentenaam ?literal_cleansed
|
||||
}
|
||||
WHERE {
|
||||
?address adres:gemeentenaam ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?address adres:gemeentenaam ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
|
||||
BIND(str(?literal_withLang) AS ?literal_cleansed)
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address adres:gemeentenaam ?literal_withLang
|
||||
}
|
||||
WHERE {
|
||||
?address adres:gemeentenaam ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER EXISTS {
|
||||
?address adres:gemeentenaam ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address adres:land ?literal_withLang
|
||||
}
|
||||
INSERT {
|
||||
?address adres:land ?literal_cleansed
|
||||
}
|
||||
WHERE {
|
||||
?address adres:land ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?address adres:land ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
|
||||
BIND(str(?literal_withLang) AS ?literal_cleansed)
|
||||
}
|
||||
;
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address adres:land ?literal_withLang
|
||||
}
|
||||
WHERE {
|
||||
?address adres:land ?literal_withLang.
|
||||
FILTER(lang(?literal_withLang) != "")
|
||||
|
||||
FILTER EXISTS {
|
||||
?address adres:land ?literal_withoutLang
|
||||
FILTER(lang(?literal_withoutLang) = "")
|
||||
}
|
||||
}
|
||||
;
|
||||
@@ -0,0 +1,21 @@
|
||||
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
|
||||
# In order to be consistent with the rest of the OP application.
|
||||
|
||||
WITH <http://mu.semte.ch/graphs/organisatieportaal>
|
||||
DELETE {
|
||||
?address locn:fullAddress ?fullAddressWithCountry
|
||||
}
|
||||
INSERT {
|
||||
?address locn:fullAddress ?fullAddressWithoutCountry
|
||||
}
|
||||
WHERE {
|
||||
?address locn:fullAddress ?fullAddressWithCountry
|
||||
|
||||
FILTER(STRENDS(?fullAddressWithCountry, ", België"))
|
||||
|
||||
BIND(STRBEFORE(?fullAddressWithCountry, ", België") AS ?fullAddressWithoutCountry)
|
||||
}
|
||||
114
config/migrations/2022/20220928133653-adjust-functies.sparql
Normal file
114
config/migrations/2022/20220928133653-adjust-functies.sparql
Normal file
@@ -0,0 +1,114 @@
|
||||
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
|
||||
# change functie for persoon with kerkbedienaar
|
||||
DELETE {
|
||||
graph ?g {
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C0FB9375CFC000A0005DB> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61C1A7043C1A230C43B452EC> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61EAC54BBA00DD4BE2501C75> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61373446375CFC000A0002DA> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/631994372F583C7A1CD0DBE5> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6156C06B375CFC000A000548> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
}
|
||||
}
|
||||
INSERT {
|
||||
graph ?g {
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C0FB9375CFC000A0005DB> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61C1A7043C1A230C43B452EC> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61EAC54BBA00DD4BE2501C75> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61373446375CFC000A0002DA> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/631994372F583C7A1CD0DBE5> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6156C06B375CFC000A000548> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711>.
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
graph ?g {
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C0FB9375CFC000A0005DB> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61C1A7043C1A230C43B452EC> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61EAC54BBA00DD4BE2501C75> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61373446375CFC000A0002DA> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/631994372F583C7A1CD0DBE5> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6156C06B375CFC000A000548> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb>.
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# remove the old functies
|
||||
DELETE {
|
||||
graph ?g {
|
||||
?functie ?p ?o.
|
||||
}
|
||||
}
|
||||
where {
|
||||
graph ?g {
|
||||
?functie ?p ?o.
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/689b3123e29cff78e310df38a774b9bb> # Kerkbedienaar
|
||||
<http://lblod.data.gift/concepts/97083de35cd36b36a72185807e941c8a> # Tweede predikant
|
||||
<http://lblod.data.gift/concepts/158b739bc1087d5246df2fa54acff29c> # Secretaris bij het voorzitterschap van de Synode
|
||||
<http://lblod.data.gift/concepts/92aad8fc5cc7a13a7b0ddc7cc13c02aa> # Hulppredikant
|
||||
<http://lblod.data.gift/concepts/67548f1fe5bf52e5a7ad33dcce47472d> # Kapelaan van de andere kerken
|
||||
<http://lblod.data.gift/concepts/85543bba7601ca598212f0feb9bdb4c2> # Predikant bij het voorzitterschap van de Synode
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# rename functies
|
||||
DELETE {
|
||||
graph ?g {
|
||||
<http://lblod.data.gift/concepts/ea58c73d9b4fc8a24a4b3eaa73a33995> skos:prefLabel "Kapelaan".
|
||||
<http://lblod.data.gift/concepts/59837b12c14f215a4efadae950be0072> skos:prefLabel "Onderpastoor".
|
||||
<http://lblod.data.gift/concepts/84b3a2321d1b69b6de782bb04e1a6862> skos:prefLabel "Parochieassistent".
|
||||
<http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6> skos:prefLabel "Eerste predikant".
|
||||
<http://lblod.data.gift/concepts/04d3b5325f2ebc5eaf96849519af4254> skos:prefLabel "Pastoor-deken".
|
||||
<http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> skos:prefLabel "Bedienaar".
|
||||
<http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711> skos:prefLabel "Kapelaan van de kerken te Antwerpen en te Elsene (Geünifieerde anglicaanse kerk)".
|
||||
}
|
||||
}
|
||||
INSERT {
|
||||
graph ?g {
|
||||
<http://lblod.data.gift/concepts/ea58c73d9b4fc8a24a4b3eaa73a33995> skos:prefLabel "Coördinator".
|
||||
<http://lblod.data.gift/concepts/59837b12c14f215a4efadae950be0072> skos:prefLabel "Medepastoor".
|
||||
<http://lblod.data.gift/concepts/84b3a2321d1b69b6de782bb04e1a6862> skos:prefLabel "Aangesteld priester".
|
||||
<http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6> skos:prefLabel "Predikant".
|
||||
<http://lblod.data.gift/concepts/04d3b5325f2ebc5eaf96849519af4254> skos:prefLabel "Rector".
|
||||
<http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> skos:prefLabel "Priester".
|
||||
<http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711> skos:prefLabel "Kapelaan".
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
graph ?g {
|
||||
<http://lblod.data.gift/concepts/ea58c73d9b4fc8a24a4b3eaa73a33995> skos:prefLabel "Kapelaan".
|
||||
<http://lblod.data.gift/concepts/59837b12c14f215a4efadae950be0072> skos:prefLabel "Onderpastoor".
|
||||
<http://lblod.data.gift/concepts/84b3a2321d1b69b6de782bb04e1a6862> skos:prefLabel "Parochieassistent".
|
||||
<http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6> skos:prefLabel "Eerste predikant".
|
||||
<http://lblod.data.gift/concepts/04d3b5325f2ebc5eaf96849519af4254> skos:prefLabel "Pastoor-deken".
|
||||
<http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> skos:prefLabel "Bedienaar".
|
||||
<http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711> skos:prefLabel "Kapelaan van de kerken te Antwerpen en te Elsene (Geünifieerde anglicaanse kerk)".
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT DATA {
|
||||
graph <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
<http://lblod.data.gift/concepts/f274cb5a-ba44-4931-a1a8-38ec34513215> a <http://lblod.data.gift/vocabularies/organisatie/EredienstBeroepen>;
|
||||
mu:uuid "f274cb5a-ba44-4931-a1a8-38ec34513215";
|
||||
skos:prefLabel "Diaken";
|
||||
<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>.
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
INSERT DATA {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/a8b5509b-f86b-48f8-94d6-fe463a9b77e3>
|
||||
a <http://lblod.data.gift/vocabularies/organisatie/BestuursfunctieCode> ;
|
||||
<http://mu.semte.ch/vocabularies/core/uuid> "a8b5509b-f86b-48f8-94d6-fe463a9b77e3" ;
|
||||
<http://www.w3.org/2004/02/skos/core#prefLabel> "Bestuurslid van het bestuur van de eredienst (Grote Helft)" ;
|
||||
<http://www.w3.org/2004/02/skos/core#inScheme> <http://data.vlaanderen.be/id/conceptscheme/BestuursfunctieCode> ;
|
||||
<http://www.w3.org/2004/02/skos/core#topConceptOf> <http://data.vlaanderen.be/id/conceptscheme/BestuursfunctieCode> ;
|
||||
<http://mu.semte.ch/vocabularies/ext/appliesTo> <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/04f65457bf125b2dc59fd71917ac3d08> .
|
||||
|
||||
<http://data.vlaanderen.be/id/concept/BestuursfunctieCode/2962f0bd-2836-4758-9866-8ce8ea2c536f>
|
||||
a <http://lblod.data.gift/vocabularies/organisatie/BestuursfunctieCode> ;
|
||||
<http://mu.semte.ch/vocabularies/core/uuid> "2962f0bd-2836-4758-9866-8ce8ea2c536f" ;
|
||||
<http://www.w3.org/2004/02/skos/core#prefLabel> "Bestuurslid van het bestuur van de eredienst (Kleine Helft)" ;
|
||||
<http://www.w3.org/2004/02/skos/core#inScheme> <http://data.vlaanderen.be/id/conceptscheme/BestuursfunctieCode> ;
|
||||
<http://www.w3.org/2004/02/skos/core#topConceptOf> <http://data.vlaanderen.be/id/conceptscheme/BestuursfunctieCode> ;
|
||||
<http://mu.semte.ch/vocabularies/ext/appliesTo> <http://data.vlaanderen.be/id/concept/BestuursorgaanClassificatieCode/04f65457bf125b2dc59fd71917ac3d08> .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
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/organisatieportaal> {
|
||||
?orgaanInTime a besluit:Bestuursorgaan ;
|
||||
mu:uuid ?uuidOrgaanInTime ;
|
||||
org:hasPost ?lidVanRechtswege ;
|
||||
org:hasPost ?voorzitter ;
|
||||
org:hasPost ?secretaris ;
|
||||
org:hasPost ?penningmeester ;
|
||||
org:hasPost ?bestuurslidGH ;
|
||||
org:hasPost ?bestuurslidKH ;
|
||||
mandaat:bindingStart "2023-04-01"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
mandaat:bindingEinde "2026-03-31"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
generiek:isTijdspecialisatieVan ?orgaan .
|
||||
|
||||
?lidVanRechtswege a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidLidVanRechtswege ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5972fccd87f864c4ec06bfbd20b5008b> .
|
||||
|
||||
?voorzitter a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidVoorzitter ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/67e6e585166cd97575b3e17ffc430a43> .
|
||||
|
||||
?secretaris a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidSecretaris ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ac134b9800b81da3c450d6b9605cef2> .
|
||||
|
||||
?penningmeester a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidPenningmeester ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/180d13930d6f1a3938e0aa7fa9990002> .
|
||||
|
||||
?bestuurslidGH a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidBestuurslidGH ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/a8b5509b-f86b-48f8-94d6-fe463a9b77e3> .
|
||||
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "2023-2026")) as ?uuidOrgaanInTime)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/eredienstbestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Rechtswege")) as ?uuidLidVanRechtswege)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidLidVanRechtswege)) AS ?lidVanRechtswege)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Voorzitter 2023-2026")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Secretaris 2023-2026")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Penningmeester 2023-2026")) as ?uuidPenningmeester)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidPenningmeester)) AS ?penningmeester)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "BestuurslidGH 2020-2026")) as ?uuidBestuurslidGH)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidGH)) AS ?bestuurslidGH)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "BestuurslidKH 2023-2029")) as ?uuidBestuurslidKH)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidKH)) AS ?bestuurslidKH)
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
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/organisatieportaal> {
|
||||
?orgaanInTime a besluit:Bestuursorgaan ;
|
||||
mu:uuid ?uuidOrgaanInTime ;
|
||||
org:hasPost ?expert ;
|
||||
org:hasPost ?vertegenwoordiger ;
|
||||
org:hasPost ?secretaris ;
|
||||
org:hasPost ?voorzitter ;
|
||||
org:hasPost ?bestuurslid ;
|
||||
mandaat:bindingStart "2023-04-01"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
mandaat:bindingEinde "2026-03-31"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
generiek:isTijdspecialisatieVan ?orgaan .
|
||||
|
||||
?expert a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidExpert ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/8c91c321ad477c4fc372ee36358d3ed4> .
|
||||
|
||||
?vertegenwoordiger a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidVertegenwoordiger ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/6e26e94ea4b127eeb850fb6debe07271> .
|
||||
|
||||
?secretaris a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidSecretaris ;
|
||||
org:role <hhttp://data.vlaanderen.be/id/concept/BestuursfunctieCode/e2af0ea1a6af96cfb698ac39ad985eea> .
|
||||
|
||||
?voorzitter a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidVoorzitter ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5960262f753661cf84329f3afa9f7df7> .
|
||||
|
||||
?bestuurslid a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidBestuurslid ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f848fa3cc2c5fb7c581a116866293925> .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "2023-2026")) as ?uuidOrgaanInTime)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/eredienstbestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Expert 2023-2026")) as ?uuidExpert)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidExpert)) AS ?expert)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Vertegenwoordiger 2023-2026")) as ?uuidVertegenwoordiger)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVertegenwoordiger)) AS ?vertegenwoordiger)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Secretaris 2023-2026")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Voorzitter 2023-2026")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Bestuurslid 2023-2026")) as ?uuidBestuurslid)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslid)) AS ?bestuurslid)
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
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/organisatieportaal> {
|
||||
?orgaanInTime a besluit:Bestuursorgaan ;
|
||||
mu:uuid ?uuidOrgaanInTime ;
|
||||
org:hasPost ?lidVanRechtswege ;
|
||||
org:hasPost ?voorzitter ;
|
||||
org:hasPost ?secretaris ;
|
||||
org:hasPost ?penningmeester ;
|
||||
org:hasPost ?bestuurslidGH ;
|
||||
org:hasPost ?bestuurslidKH ;
|
||||
mandaat:bindingStart "2026-04-01"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
mandaat:bindingEinde "2029-03-31"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
generiek:isTijdspecialisatieVan ?orgaan .
|
||||
|
||||
?lidVanRechtswege a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidLidVanRechtswege ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5972fccd87f864c4ec06bfbd20b5008b> .
|
||||
|
||||
?voorzitter a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidVoorzitter ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/67e6e585166cd97575b3e17ffc430a43> .
|
||||
|
||||
?secretaris a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidSecretaris ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5ac134b9800b81da3c450d6b9605cef2> .
|
||||
|
||||
?penningmeester a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidPenningmeester ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/180d13930d6f1a3938e0aa7fa9990002> .
|
||||
|
||||
?bestuurslidGH a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidBestuurslidGH ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/a8b5509b-f86b-48f8-94d6-fe463a9b77e3> .
|
||||
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "2026-2029")) as ?uuidOrgaanInTime)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/eredienstbestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Rechtswege")) as ?uuidLidVanRechtswege)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidLidVanRechtswege)) AS ?lidVanRechtswege)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Voorzitter 2026-2029")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Secretaris 2026-2029")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Penningmeester 2026-2029")) as ?uuidPenningmeester)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidPenningmeester)) AS ?penningmeester)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "BestuurslidGH 2026-2032")) as ?uuidBestuurslidGH)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidGH)) AS ?bestuurslidGH)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "BestuurslidKH 2023-2029")) as ?uuidBestuurslidKH)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidKH)) AS ?bestuurslidKH)
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
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/organisatieportaal> {
|
||||
?orgaanInTime a besluit:Bestuursorgaan ;
|
||||
mu:uuid ?uuidOrgaanInTime ;
|
||||
org:hasPost ?expert ;
|
||||
org:hasPost ?vertegenwoordiger ;
|
||||
org:hasPost ?secretaris ;
|
||||
org:hasPost ?voorzitter ;
|
||||
org:hasPost ?bestuurslid ;
|
||||
mandaat:bindingStart "2026-04-01"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
mandaat:bindingEinde "2029-03-31"^^<http://www.w3.org/2001/XMLSchema#date> ;
|
||||
generiek:isTijdspecialisatieVan ?orgaan .
|
||||
|
||||
?expert a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidExpert ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/8c91c321ad477c4fc372ee36358d3ed4> .
|
||||
|
||||
?vertegenwoordiger a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidVertegenwoordiger ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/6e26e94ea4b127eeb850fb6debe07271> .
|
||||
|
||||
?secretaris a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidSecretaris ;
|
||||
org:role <hhttp://data.vlaanderen.be/id/concept/BestuursfunctieCode/e2af0ea1a6af96cfb698ac39ad985eea> .
|
||||
|
||||
?voorzitter a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidVoorzitter ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/5960262f753661cf84329f3afa9f7df7> .
|
||||
|
||||
?bestuurslid a mandaat:Mandaat ;
|
||||
mu:uuid ?uuidBestuurslid ;
|
||||
org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f848fa3cc2c5fb7c581a116866293925> .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "2026-2029")) as ?uuidOrgaanInTime)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/eredienstbestuursorganen/", ?uuidOrgaanInTime)) AS ?orgaanInTime)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Expert 2026-2029")) as ?uuidExpert)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidExpert)) AS ?expert)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Vertegenwoordiger 2026-2029")) as ?uuidVertegenwoordiger)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVertegenwoordiger)) AS ?vertegenwoordiger)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Secretaris 2026-2029")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Voorzitter 2026-2029")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Bestuurslid 2026-2029")) as ?uuidBestuurslid)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslid)) AS ?bestuurslid)
|
||||
}
|
||||
122
config/migrations/2022/20220930113653-fix-wrong-positions.sparql
Normal file
122
config/migrations/2022/20220930113653-fix-wrong-positions.sparql
Normal file
@@ -0,0 +1,122 @@
|
||||
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
|
||||
DELETE {
|
||||
graph ?g {
|
||||
<http://data.lblod.info/id/positiesBedienaar/62A98293D7779543F777951B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1029375CFC000A0005E4> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/616436FD375CFC000A00077B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62EE1A0DD7779543F77796C8> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62F21194D7779543F77796CD> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621E191A5747C883CA1D36D0> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62177EC55747C883CA1D347B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621C93CA5747C883CA1D35D6> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217A07A5747C883CA1D34CF> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217822D5747C883CA1D3496> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620E28AE5747C883CA1D2E99> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62596CC78A3D153ADACC046A> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62B17981D7779543F7779528> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621755E85747C883CA1D341C> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62179D345747C883CA1D34AB> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62173DDE5747C883CA1D33F7> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61B747D63C1A230C43B451E5> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6231B914B72F9F4B33507F89> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217410D5747C883CA1D33FD> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620E5BD35747C883CA1D2ECE> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621DDEBE5747C883CA1D3666> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621DDAA85747C883CA1D3646> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62174F555747C883CA1D3411> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620B6CEE5747C883CA1D2DD1> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C2047375CFC000A000646> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C14D4375CFC000A000608> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C365E375CFC000A00064F> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1DB3375CFC000A00063D> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C3870375CFC000A00065A> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C3F29375CFC000A00066D> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1194375CFC000A0005ED> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62596B418A3D153ADACC0458> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1369375CFC000A0005FF> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1BB5375CFC000A000634> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
}
|
||||
}
|
||||
INSERT {
|
||||
graph ?g {
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C14D4375CFC000A000608> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62A98293D7779543F777951B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1029375CFC000A0005E4> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/616436FD375CFC000A00077B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/e357bc8f4cc3a694fde2239748768a22>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62EE1A0DD7779543F77796C8> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/e357bc8f4cc3a694fde2239748768a22>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62F21194D7779543F77796CD> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621E191A5747C883CA1D36D0> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62177EC55747C883CA1D347B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621C93CA5747C883CA1D35D6> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217A07A5747C883CA1D34CF> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217822D5747C883CA1D3496> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620E28AE5747C883CA1D2E99> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62596CC78A3D153ADACC046A> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62B17981D7779543F7779528> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621755E85747C883CA1D341C> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62179D345747C883CA1D34AB> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62173DDE5747C883CA1D33F7> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61B747D63C1A230C43B451E5> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6231B914B72F9F4B33507F89> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217410D5747C883CA1D33FD> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620E5BD35747C883CA1D2ECE> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621DDEBE5747C883CA1D3666> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621DDAA85747C883CA1D3646> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62174F555747C883CA1D3411> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620B6CEE5747C883CA1D2DD1> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C2047375CFC000A000646> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C365E375CFC000A00064F> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1DB3375CFC000A00063D> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C3870375CFC000A00065A> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C3F29375CFC000A00066D> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1194375CFC000A0005ED> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62596B418A3D153ADACC0458> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1369375CFC000A0005FF> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1BB5375CFC000A000634> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6>.
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
graph ?g {
|
||||
<http://data.lblod.info/id/positiesBedienaar/62A98293D7779543F777951B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1029375CFC000A0005E4> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/616436FD375CFC000A00077B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62EE1A0DD7779543F77796C8> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62F21194D7779543F77796CD> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621E191A5747C883CA1D36D0> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62177EC55747C883CA1D347B> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621C93CA5747C883CA1D35D6> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217A07A5747C883CA1D34CF> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217822D5747C883CA1D3496> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620E28AE5747C883CA1D2E99> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62596CC78A3D153ADACC046A> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62B17981D7779543F7779528> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621755E85747C883CA1D341C> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62179D345747C883CA1D34AB> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62173DDE5747C883CA1D33F7> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/61B747D63C1A230C43B451E5> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6231B914B72F9F4B33507F89> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/6217410D5747C883CA1D33FD> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620E5BD35747C883CA1D2ECE> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621DDEBE5747C883CA1D3666> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/621DDAA85747C883CA1D3646> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62174F555747C883CA1D3411> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/620B6CEE5747C883CA1D2DD1> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C2047375CFC000A000646> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C14D4375CFC000A000608> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C365E375CFC000A00064F> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1DB3375CFC000A00063D> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C3870375CFC000A00065A> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C3F29375CFC000A00066D> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1194375CFC000A0005ED> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/62596B418A3D153ADACC0458> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1369375CFC000A0005FF> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
<http://data.lblod.info/id/positiesBedienaar/615C1BB5375CFC000A000634> <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2>.
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
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 {
|
||||
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 {
|
||||
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)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
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 {
|
||||
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 {
|
||||
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)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,195 @@
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
|
||||
# Orthodox
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?newMinisterPosition .
|
||||
|
||||
?newMinisterPosition a org:Post , ere:PositieBedienaar ;
|
||||
mu:uuid ?uuidNewMinisterPosition ;
|
||||
ere:functie ?functie .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid a ere:BestuurVanDeEredienst ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/84bcd6896f575bae4857ff8d2764bed8> . # orthodox
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/f274cb5a-ba44-4931-a1a8-38ec34513215> # Diaken
|
||||
<http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> # Priester
|
||||
<http://lblod.data.gift/concepts/04d3b5325f2ebc5eaf96849519af4254> # Rector
|
||||
}
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?ministerPosition .
|
||||
?ministerPosition ere:functie ?functie .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?bestuurseenheid, ?functie)) as ?uuidNewMinisterPosition)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/positiesBedienaar/", ?uuidNewMinisterPosition)) AS ?newMinisterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Islamitisch
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?newMinisterPosition .
|
||||
|
||||
?newMinisterPosition a org:Post , ere:PositieBedienaar ;
|
||||
mu:uuid ?uuidNewMinisterPosition ;
|
||||
ere:functie ?functie .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid a ere:BestuurVanDeEredienst ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/9d8bd472a00bf0a5c7b7186606365a52> .
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/e357bc8f4cc3a694fde2239748768a22> # Eerste Imam in rang
|
||||
<http://lblod.data.gift/concepts/c4a3fd586211b17b06f574885e23f355> # Tweede Imam in rang
|
||||
<http://lblod.data.gift/concepts/5ebb798bd59c3b48c25116032caa02b7> # Derde Imam in rang
|
||||
}
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?ministerPosition .
|
||||
?ministerPosition ere:functie ?functie .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?bestuurseenheid, ?functie)) as ?uuidNewMinisterPosition)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/positiesBedienaar/", ?uuidNewMinisterPosition)) AS ?newMinisterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Rooms-Katholiek
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?newMinisterPosition .
|
||||
|
||||
?newMinisterPosition a org:Post , ere:PositieBedienaar ;
|
||||
mu:uuid ?uuidNewMinisterPosition ;
|
||||
ere:functie ?functie .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid a ere:BestuurVanDeEredienst ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/b13d1d623626bc1ee75c7d20bc60e3c0> . # Rooms-Katholiek
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/ea58c73d9b4fc8a24a4b3eaa73a33995> # Coördinator
|
||||
<http://lblod.data.gift/concepts/59837b12c14f215a4efadae950be0072> # Medepastoor
|
||||
<http://lblod.data.gift/concepts/84b3a2321d1b69b6de782bb04e1a6862> # Aangesteld priester
|
||||
<http://lblod.data.gift/concepts/5c7fefe1b921dfd4c550924bb7a9331d> # Pastoor
|
||||
}
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?ministerPosition .
|
||||
?ministerPosition ere:functie ?functie .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?bestuurseenheid, ?functie)) as ?uuidNewMinisterPosition)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/positiesBedienaar/", ?uuidNewMinisterPosition)) AS ?newMinisterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Israëlitisch
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?newMinisterPosition .
|
||||
|
||||
?newMinisterPosition a org:Post , ere:PositieBedienaar ;
|
||||
mu:uuid ?uuidNewMinisterPosition ;
|
||||
ere:functie ?functie .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid a ere:BestuurVanDeEredienst ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/1a1abeafc973d27cebcb2d7a15b2d823> .
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/17e7177aba2596705ad3c209019c729a> # Officiërend bedienaar
|
||||
<http://lblod.data.gift/concepts/27b3d149dd2a726effe749572177682e> # Rabbijn
|
||||
}
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?ministerPosition .
|
||||
?ministerPosition ere:functie ?functie .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?bestuurseenheid, ?functie)) as ?uuidNewMinisterPosition)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/positiesBedienaar/", ?uuidNewMinisterPosition)) AS ?newMinisterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Anglicaans
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?newMinisterPosition .
|
||||
|
||||
?newMinisterPosition a org:Post , ere:PositieBedienaar ;
|
||||
mu:uuid ?uuidNewMinisterPosition ;
|
||||
ere:functie ?functie .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid a ere:BestuurVanDeEredienst ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/99536dd6eb0d2ef38a89efafb17e7389> . # Anglicaans
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/fa4191f9d7050fe62ec3fc0e16541711> # Kapelaan
|
||||
}
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?ministerPosition .
|
||||
?ministerPosition ere:functie ?functie .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?bestuurseenheid, ?functie)) as ?uuidNewMinisterPosition)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/positiesBedienaar/", ?uuidNewMinisterPosition)) AS ?newMinisterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Protestants
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?newMinisterPosition .
|
||||
|
||||
?newMinisterPosition a org:Post , ere:PositieBedienaar ;
|
||||
mu:uuid ?uuidNewMinisterPosition ;
|
||||
ere:functie ?functie .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH ?g {
|
||||
?bestuurseenheid a ere:BestuurVanDeEredienst ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/e8cba1540b35a32e9cb45126c38c03c6> . # Protestants
|
||||
|
||||
VALUES ?functie {
|
||||
<http://lblod.data.gift/concepts/83d50e9184ae4a628851370079d162f6> # predikant
|
||||
}
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?bestuurseenheid ere:wordtBediendDoor ?ministerPosition .
|
||||
?ministerPosition ere:functie ?functie .
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?bestuurseenheid, ?functie)) as ?uuidNewMinisterPosition)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/positiesBedienaar/", ?uuidNewMinisterPosition)) AS ?newMinisterPosition)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,113 @@
|
||||
# Part 1: set dates for 2020-2023
|
||||
|
||||
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/organisatieportaal> {
|
||||
?orgaanInTime mandaat:bindingStart ?start .
|
||||
?orgaanInTime mandaat:bindingEinde ?end .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?orgaanInTime mandaat:bindingStart "2020-04-01T00:00:00"^^xsd:dateTime .
|
||||
?orgaanInTime mandaat:bindingEinde "2023-03-31T00:00:00"^^xsd:dateTime .
|
||||
}
|
||||
} WHERE {
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
|
||||
|
||||
OPTIONAL { ?orgaanInTime mandaat:bindingStart ?start . }
|
||||
OPTIONAL { ?orgaanInTime mandaat:bindingEinde ?end . }
|
||||
|
||||
{
|
||||
SELECT DISTINCT ?bestuursorgaan MAX(?end) as ?maxEnd WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
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 .
|
||||
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
|
||||
|
||||
OPTIONAL { ?orgaanInTime mandaat:bindingStart ?start . }
|
||||
OPTIONAL {
|
||||
?orgaanInTime mandaat:bindingEinde ?end .
|
||||
FILTER( ?end != "2026-03-31T00:00:00"^^xsd:dateTime )
|
||||
FILTER( ?end != "2029-03-31T00:00:00"^^xsd:dateTime )
|
||||
}
|
||||
}
|
||||
}
|
||||
GROUP BY ?bestuursorgaan
|
||||
ORDER BY ?maxEnd
|
||||
}
|
||||
|
||||
# If we have a maxEnd value from the subquery, we want the organ in time that has the same end value to update it
|
||||
# If there is no maxEnd value, then we need the orgaan that has no end value set
|
||||
FILTER( IF(bound(?maxEnd), ?maxEnd = ?end, !bound(?end)) )
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Part 2: set dates for 2017-2020
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?orgaanInTime mandaat:bindingStart ?start .
|
||||
?orgaanInTime mandaat:bindingEinde ?end .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?orgaanInTime mandaat:bindingStart "2017-04-01T00:00:00"^^xsd:dateTime .
|
||||
?orgaanInTime mandaat:bindingEinde "2020-03-31T00:00:00"^^xsd:dateTime .
|
||||
}
|
||||
} WHERE {
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
|
||||
|
||||
OPTIONAL { ?orgaanInTime mandaat:bindingStart ?start . }
|
||||
OPTIONAL { ?orgaanInTime mandaat:bindingEinde ?end . }
|
||||
|
||||
{
|
||||
SELECT DISTINCT ?bestuursorgaan MAX(?end) as ?maxEnd WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
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 .
|
||||
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan .
|
||||
|
||||
OPTIONAL { ?orgaanInTime mandaat:bindingStart ?start . }
|
||||
OPTIONAL {
|
||||
?orgaanInTime mandaat:bindingEinde ?end .
|
||||
FILTER( ?end != "2023-03-31T00:00:00"^^xsd:dateTime )
|
||||
FILTER( ?end != "2026-03-31T00:00:00"^^xsd:dateTime )
|
||||
FILTER( ?end != "2029-03-31T00:00:00"^^xsd:dateTime )
|
||||
}
|
||||
}
|
||||
}
|
||||
GROUP BY ?bestuursorgaan
|
||||
ORDER BY ?maxEnd
|
||||
}
|
||||
|
||||
# If we have a maxEnd value from the subquery, we want the organ in time that has the same end value to update it
|
||||
# If there is no maxEnd value, then we need the orgaan that has no end value set
|
||||
FILTER( IF(bound(?maxEnd), ?maxEnd = ?end, !bound(?end)) )
|
||||
}
|
||||
@@ -0,0 +1,148 @@
|
||||
# Add missing mandates to central worship services
|
||||
|
||||
## 2020 - 2023
|
||||
|
||||
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/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidExpert)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidExpert)) AS ?expert)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidVertegenwoordiger)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVertegenwoordiger)) AS ?vertegenwoordiger)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?orgaanInTime org:hasPost ?bestuurslid .
|
||||
?bestuurslid org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f848fa3cc2c5fb7c581a116866293925> .
|
||||
}
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Bestuurslid 2020-2023")) as ?uuidBestuurslid)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslid)) AS ?bestuurslid)
|
||||
}
|
||||
@@ -0,0 +1,148 @@
|
||||
# Add missing mandates to central worship services
|
||||
|
||||
## 2027 - 2020
|
||||
|
||||
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/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidExpert)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidExpert)) AS ?expert)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidVertegenwoordiger)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVertegenwoordiger)) AS ?vertegenwoordiger)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:CentraalBestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> .
|
||||
|
||||
FILTER NOT EXISTS {
|
||||
?orgaanInTime org:hasPost ?bestuurslid .
|
||||
?bestuurslid org:role <http://data.vlaanderen.be/id/concept/BestuursfunctieCode/f848fa3cc2c5fb7c581a116866293925> .
|
||||
}
|
||||
}
|
||||
|
||||
BIND(MD5(CONCAT(?worshipService, ?orgaan, "Bestuurslid 2017-2020")) as ?uuidBestuurslid)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslid)) AS ?bestuurslid)
|
||||
}
|
||||
@@ -0,0 +1,302 @@
|
||||
# Add missing mandates to worship services
|
||||
|
||||
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/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
VALUES (?start ?end) {
|
||||
("2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> "2023-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime>)
|
||||
("2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> "2020-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 : 2017 is the beggining of a KH, 2020 of a GH.
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2014-2020")) as ?uuidBestuurslidGH)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidBestuurslidGH)) AS ?bestuurslidGH)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
VALUES (?start ?end) {
|
||||
("2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> "2023-03-31T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime>)
|
||||
("2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> "2020-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 2017-2023")) 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.
|
||||
|
||||
### 2020 - 2023
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2020-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2023-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 2020-2023")) as ?uuidPenningmeester)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidPenningmeester)) AS ?penningmeester)
|
||||
}
|
||||
|
||||
### 2017 - 2020
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidVoorzitter)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidVoorzitter)) AS ?voorzitter)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidSecretaris)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidSecretaris)) AS ?secretaris)
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
INSERT {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?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/organisatieportaal> {
|
||||
?worshipService a ere:BestuurVanDeEredienst .
|
||||
?orgaan besluit:bestuurt ?worshipService .
|
||||
?orgaanInTime generiek:isTijdspecialisatieVan ?orgaan ;
|
||||
mandaat:bindingStart "2017-04-01T00:00:00"^^<http://www.w3.org/2001/XMLSchema#dateTime> ;
|
||||
mandaat:bindingEinde "2020-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 2017-2020")) as ?uuidPenningmeester)
|
||||
BIND(IRI(CONCAT("http://data.lblod.info/id/mandaten/", ?uuidPenningmeester)) AS ?penningmeester)
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX schema: <http://schema.org/>
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
PREFIX person: <http://www.w3.org/ns/person#>
|
||||
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||
PREFIX dbpedia: <http://dbpedia.org/ontology/>
|
||||
PREFIX adms: <http://www.w3.org/ns/adms#>
|
||||
PREFIX euro: <http://data.europa.eu/m8g/>
|
||||
PREFIX prov: <http://www.w3.org/ns/prov#>
|
||||
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
|
||||
PREFIX lblodlg: <https://data.lblod.info/vocabularies/leidinggevenden/>
|
||||
PREFIX dc_terms: <http://purl.org/dc/terms/>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
|
||||
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
|
||||
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
|
||||
DELETE {GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
?betrokkenheid ?p ?o
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
where {
|
||||
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?betrokkenheid org:organization ?bestuur;
|
||||
rdf:type ere:BetrokkenLokaleBesturen.
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
|
||||
?betrokkenheid org:organization ?worshipService.
|
||||
|
||||
?betrokkenheid ere:typebetrokkenheid ?typebetrokkenheid.
|
||||
|
||||
?betrokkenheid ?p ?o.
|
||||
|
||||
filter(?worshipService = <http://data.lblod.info/id/besturenVanDeEredienst/3292a5d26db54a3173eeab234727be29> &&
|
||||
?betrokkenheid = <http://data.lblod.info/id/betrokkenLokaleBesturen/ca7e4f721a9c16a8cb263209b0cdcdb6>)
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
?representatieveOrgaan <http://www.w3.org/ns/org#linkedTo> ?bestuur .
|
||||
?bestuur ?pbestuur ?obestuur .
|
||||
?primarySite ?pprimarySite ?oprimarySite .
|
||||
?address ?paddress ?oaddress .
|
||||
?identifier ?pidentifier ?oidentifier .
|
||||
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
VALUES ?bestuur {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/578bf96f86056e2260dc21cee91aa519>
|
||||
}
|
||||
|
||||
?representatieveOrgaan <http://www.w3.org/ns/org#linkedTo> ?bestuur .
|
||||
|
||||
?bestuur <http://www.w3.org/ns/org#hasPrimarySite> ?primarySite ;
|
||||
<http://www.w3.org/ns/adms#identifier> ?identifier ;
|
||||
?pbestuur ?obestuur .
|
||||
|
||||
?primarySite <https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?address ;
|
||||
?pprimarySite ?oprimarySite .
|
||||
|
||||
?address ?paddress ?oaddress .
|
||||
|
||||
?identifier <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?structuredIdentifier ;
|
||||
?pidentifier ?oidentifier .
|
||||
|
||||
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX schema: <http://schema.org/>
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
PREFIX person: <http://www.w3.org/ns/person#>
|
||||
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||
PREFIX dbpedia: <http://dbpedia.org/ontology/>
|
||||
PREFIX adms: <http://www.w3.org/ns/adms#>
|
||||
PREFIX euro: <http://data.europa.eu/m8g/>
|
||||
PREFIX prov: <http://www.w3.org/ns/prov#>
|
||||
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
|
||||
PREFIX lblodlg: <https://data.lblod.info/vocabularies/leidinggevenden/>
|
||||
PREFIX dc_terms: <http://purl.org/dc/terms/>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
|
||||
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
|
||||
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
?betrokkenheid ?p ?o
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?administrativeUnit{
|
||||
<http://data.lblod.info/id/bestuurseenheden/b456cda7fa9b2b176adb216e5598aeeb60ff19753a5a08ade6ffd32e9a0ead89> # Edegem
|
||||
<http://data.lblod.info/id/bestuurseenheden/38dc63f50a4f7ea61ef741d8944a874a59ba84b69b9ff3e73f69680da2c6ef37> # Aartselaar
|
||||
<http://data.lblod.info/id/bestuurseenheden/670db1d66c0de3b931962e1044033ccfa9d6e3023aa9828a5f252c3bc69bd32c> # Antwerpen
|
||||
}
|
||||
|
||||
VALUES ?worshipService {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/168d5fec5ee04be393c30d5d5bc88074> # Kerkfabriek St.-Niklaas van Hemiksem
|
||||
}
|
||||
|
||||
?betrokkenheid
|
||||
org:organization ?bestuur;
|
||||
rdf:type ere:BetrokkenLokaleBesturen.
|
||||
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
|
||||
?betrokkenheid
|
||||
org:organization ?worshipService;
|
||||
ere:typebetrokkenheid ?typebetrokkenheid;
|
||||
?p ?o.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX schema: <http://schema.org/>
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
PREFIX person: <http://www.w3.org/ns/person#>
|
||||
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||
PREFIX dbpedia: <http://dbpedia.org/ontology/>
|
||||
PREFIX adms: <http://www.w3.org/ns/adms#>
|
||||
PREFIX euro: <http://data.europa.eu/m8g/>
|
||||
PREFIX prov: <http://www.w3.org/ns/prov#>
|
||||
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
|
||||
PREFIX lblodlg: <https://data.lblod.info/vocabularies/leidinggevenden/>
|
||||
PREFIX dc_terms: <http://purl.org/dc/terms/>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
|
||||
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
|
||||
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
?betrokkenheid ?p ?o
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?administrativeUnit{
|
||||
<http://data.lblod.info/id/bestuurseenheden/421187a1c73dac9514080c9eee61d018a1fb93977cf7aa96bff64f35dfd08961> # Maarkedal
|
||||
}
|
||||
|
||||
VALUES ?worshipService {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/55dead3d70da2513e83ce1ceee9820d4> # Kerkfabriek St.-Hermes van Ronse
|
||||
}
|
||||
|
||||
?betrokkenheid
|
||||
org:organization ?bestuur;
|
||||
rdf:type ere:BetrokkenLokaleBesturen.
|
||||
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
|
||||
?betrokkenheid
|
||||
org:organization ?worshipService;
|
||||
ere:typebetrokkenheid ?typebetrokkenheid;
|
||||
?p ?o.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX schema: <http://schema.org/>
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
PREFIX person: <http://www.w3.org/ns/person#>
|
||||
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||
PREFIX dbpedia: <http://dbpedia.org/ontology/>
|
||||
PREFIX adms: <http://www.w3.org/ns/adms#>
|
||||
PREFIX euro: <http://data.europa.eu/m8g/>
|
||||
PREFIX prov: <http://www.w3.org/ns/prov#>
|
||||
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
|
||||
PREFIX lblodlg: <https://data.lblod.info/vocabularies/leidinggevenden/>
|
||||
PREFIX dc_terms: <http://purl.org/dc/terms/>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX euvoc: <http://publications.europa.eu/ontology/euvoc#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
PREFIX ch: <http://data.lblod.info/vocabularies/contacthub/>
|
||||
PREFIX code: <http://lblod.data.gift/vocabularies/organisatie/>
|
||||
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
|
||||
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
?betrokkenheid ?p ?o
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?administrativeUnit{
|
||||
<http://data.lblod.info/id/bestuurseenheden/3b1e0143755729396654f651bfed689681274839c427f9598e930d816fb7a1c8> # Kraainem
|
||||
<http://data.lblod.info/id/bestuurseenheden/476ddecbaf169d4c9af3ca8ed6725f4efebdfdb9647fe82ec4406496c6e930d9> # Overijse
|
||||
<http://data.lblod.info/id/bestuurseenheden/3b337ebeb02ede5e152c952e2f24aa1bff3ebbb6afb968a647cb05efe72c0237> # Wezembeek-Oppem
|
||||
<http://data.lblod.info/id/bestuurseenheden/003e84121111866af60611a59e13d4c478718f60472655936edec1e352a34c5f> # Huldenberg
|
||||
<http://data.lblod.info/id/bestuurseenheden/319db6e275f281d0280da90d6f6aba3462f4e47b6f53a34639feb91015a5822b> # Oud-Heverlee
|
||||
<http://data.lblod.info/id/bestuurseenheden/7c44225c68f7535a603d3a0a0c57a6424e8baa9fd066b6b9baa636d0facddb72> # Bertem
|
||||
}
|
||||
|
||||
VALUES ?worshipService {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/a596850e9aa27969a25f73137d300306> #Anglicaanse Kerk Saint Paul's Church van Tervuren
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/e2eea8a352821c9c1f1827f1cfde9f24> #Anglicaanse Kerk Saint Martha and Mary's van Leuven
|
||||
}
|
||||
|
||||
?betrokkenheid
|
||||
org:organization ?bestuur;
|
||||
rdf:type ere:BetrokkenLokaleBesturen.
|
||||
|
||||
?administrativeUnit ere:betrokkenBestuur ?betrokkenheid.
|
||||
|
||||
?betrokkenheid
|
||||
org:organization ?worshipService;
|
||||
ere:typebetrokkenheid ?typebetrokkenheid;
|
||||
ere:financieringspercentage 0;
|
||||
?p ?o.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
PREFIX adms: <http://www.w3.org/ns/adms#>
|
||||
PREFIX adres: <https://data.vlaanderen.be/ns/adres#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
|
||||
PREFIX owl: <http://www.w3.org/2002/07/owl#>
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?org org:hasPrimarySite ?site.
|
||||
?site
|
||||
organisatie:bestaatUit ?address;
|
||||
?sp ?so.
|
||||
?address ?ap ?ao.
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?org org:hasPrimarySite ?site.
|
||||
?site
|
||||
organisatie:bestaatUit ?address;
|
||||
?sp ?so.
|
||||
?address ?ap ?ao.
|
||||
{
|
||||
SELECT ?site (count(?o) AS ?c)
|
||||
WHERE {
|
||||
?o org:hasPrimarySite ?site
|
||||
}
|
||||
GROUP BY ?site
|
||||
HAVING (COUNT(DISTINCT ?o) > 1)
|
||||
ORDER BY ?site
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
http://mu.semte.ch/graphs/organisatieportaal
|
||||
2331
config/migrations/2022/20221021141000-fixed-primary-site-uris.ttl
Normal file
2331
config/migrations/2022/20221021141000-fixed-primary-site-uris.ttl
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,11 @@
|
||||
DELETE DATA {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
<http://data.lblod.info/id/representatieveOrganen/0ebb44c2ef14d86978ea85e74d128ad1> <http://www.w3.org/2004/02/skos/core#prefLabel> "Oecumenisch Patriarchaat van Konstantinopel" .
|
||||
}
|
||||
}
|
||||
;
|
||||
INSERT DATA {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
<http://data.lblod.info/id/representatieveOrganen/0ebb44c2ef14d86978ea85e74d128ad1> <http://www.w3.org/2004/02/skos/core#prefLabel> "Oecumenisch Patriarchaat van Constantinopel" .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
http://mu.semte.ch/graphs/organisatieportaal
|
||||
@@ -0,0 +1,13 @@
|
||||
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
|
||||
@prefix ere: <http://data.lblod.info/vocabularies/erediensten/> .
|
||||
@prefix besluit: <http://data.vlaanderen.be/ns/besluit#> .
|
||||
@prefix regorg: <http://www.w3.org/ns/regorg#> .
|
||||
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
|
||||
@prefix org: <http://www.w3.org/ns/org#> .
|
||||
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/578bf96f86056e2260dc21cee91aa519> a ere:BestuurVanDeEredienst, besluit:Bestuurseenheid ;
|
||||
ere:typeEredienst <http://lblod.data.gift/concepts/b13d1d623626bc1ee75c7d20bc60e3c0> ;
|
||||
org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/66ec74fd-8cfc-4e16-99c6-350b35012e86> ;
|
||||
mu:uuid "578bf96f86056e2260dc21cee91aa519" ;
|
||||
skos:prefLabel "Kerkfabriek St.-Baafs van Gent" ;
|
||||
regorg:orgStatus <http://lblod.data.gift/concepts/63cc561de9188d64ba5840a42ae8f0d6> .
|
||||
@@ -0,0 +1,18 @@
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
?subject skos:prefLabel ?label.
|
||||
}
|
||||
}
|
||||
INSERT {
|
||||
GRAPH ?g {
|
||||
?subject skos:prefLabel """Kerkfabriek Vredegem""".
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
BIND(<http://data.lblod.info/id/besturenVanDeEredienst/578bf96f86056e2260dc21cee91aa519> as ?subject)
|
||||
GRAPH ?g {
|
||||
?subject skos:prefLabel ?label.
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?representatieveOrgaan <http://www.w3.org/ns/org#linkedTo> ?bestuur .
|
||||
?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> {
|
||||
VALUES ?bestuur {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/63638B718DE5818A7C9F4358> # OP-1909 :: Ensar
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/6374E1604B5FEAF28DEDE73C> # OP-1913 :: Attaqwa
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/6374E0034B5FEAF28DEDE730> # OP-1914 :: Imam-i Buhari
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/62C2DB1AD7779543F7779588> # OP-1926 :: Orthodoxe Parochie van de Heilige Nino
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/625E764BFEE49A5CF118EE5C> # OP-1924 :: Islamitisch en cultureel centrum Al Umma Linkeroever
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/62E8C415D7779543F77796A7> # OP-1922 :: Essalaam
|
||||
}
|
||||
|
||||
?representatieveOrgaan <http://www.w3.org/ns/org#linkedTo> ?bestuur .
|
||||
|
||||
?bestuur <http://www.w3.org/ns/org#hasPrimarySite> ?primarySite ;
|
||||
<http://www.w3.org/ns/adms#identifier> ?identifier ;
|
||||
?pbestuur ?obestuur .
|
||||
|
||||
?primarySite <https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?address ;
|
||||
<http://www.w3.org/ns/org#siteAddress> ?contactPoint ;
|
||||
?pprimarySite ?oprimarySite .
|
||||
|
||||
?address ?paddress ?oaddress .
|
||||
|
||||
?contactPoint ?pcontactPoint ?ocontactPoint .
|
||||
|
||||
?identifier <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?structuredIdentifier ;
|
||||
?pidentifier ?oidentifier .
|
||||
|
||||
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
PREFIX dct: <http://purl.org/dc/terms/>
|
||||
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/veranderingsgebeurtenissen/6375D6B34B5FEAF28DEDE7CA> dct:date "2001-01-01"^^xsd:date .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/veranderingsgebeurtenissen/6375D6B34B5FEAF28DEDE7CA> dct:date "2008-01-01"^^xsd:date .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/veranderingsgebeurtenissen/6375D6B34B5FEAF28DEDE7CA> dct:date "2001-01-01"^^xsd:date .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
?role <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/e357bc8f4cc3a694fde2239748768a22> .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
?role <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/5ebb798bd59c3b48c25116032caa02b7> .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
VALUES ?bedienaar {
|
||||
<http://data.lblod.info/id/rollenBedienaar/6332F3D4036B579F0A26FF25>
|
||||
<http://data.lblod.info/id/rollenBedienaar/6363D2938DE5818A7C9F43F1>
|
||||
<http://data.lblod.info/id/rollenBedienaar/63568F678DE5818A7C9F4253>
|
||||
<http://data.lblod.info/id/rollenBedienaar/6363D6068DE5818A7C9F4408>
|
||||
<http://data.lblod.info/id/rollenBedienaar/63568E2B8DE5818A7C9F424C>
|
||||
<http://data.lblod.info/id/rollenBedienaar/636A5E368DE5818A7C9F447C>
|
||||
<http://data.lblod.info/id/rollenBedienaar/636A5D1B8DE5818A7C9F4478>
|
||||
<http://data.lblod.info/id/rollenBedienaar/63330740036B579F0A26FF43>
|
||||
<http://data.lblod.info/id/rollenBedienaar/63330552036B579F0A26FF3E>
|
||||
}
|
||||
|
||||
?bedienaar <http://www.w3.org/ns/org#holds> ?role .
|
||||
?role <http://data.lblod.info/vocabularies/erediensten/functie> <http://lblod.data.gift/concepts/e357bc8f4cc3a694fde2239748768a22> .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
# OP-1928 : Remove worship members in "Kerkfabriek St.-Franciscus van Glabbeek"
|
||||
|
||||
# Delete duplicate persons
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
<http://data.lblod.info/id/personen/635BD6EC8DE5818A7C9F4310> ?pm ?om .
|
||||
<http://data.lblod.info/id/personen/635BD7518DE5818A7C9F4313> ?pj ?oj .
|
||||
<http://data.lblod.info/id/mandatarissen/635BD7148DE5818A7C9F4312> ?pd ?od .
|
||||
<http://data.lblod.info/id/mandatarissen/635BD76D8DE5818A7C9F4314> ?pt ?ot .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
<http://data.lblod.info/id/personen/635BD6EC8DE5818A7C9F4310> ?pm ?om .
|
||||
<http://data.lblod.info/id/personen/635BD7518DE5818A7C9F4313> ?pj ?oj .
|
||||
<http://data.lblod.info/id/mandatarissen/635BD7148DE5818A7C9F4312> ?pd ?od .
|
||||
<http://data.lblod.info/id/mandatarissen/635BD76D8DE5818A7C9F4314> ?pt ?ot .
|
||||
}
|
||||
}
|
||||
;
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
|
||||
<http://data.lblod.info/id/personen/635BD6EC8DE5818A7C9F4310> ?pm ?om .
|
||||
<http://data.lblod.info/id/personen/635BD7518DE5818A7C9F4313> ?pj ?oj .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
|
||||
<http://data.lblod.info/id/personen/635BD6EC8DE5818A7C9F4310> ?pm ?om .
|
||||
<http://data.lblod.info/id/personen/635BD7518DE5818A7C9F4313> ?pj ?oj .
|
||||
}
|
||||
}
|
||||
;
|
||||
# Change Start Date
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/mandatarissen/6368DBCB8DE5818A7C9F441F> <http://data.vlaanderen.be/ns/mandaat#start> "2022-05-04"^^xsd:date .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/mandatarissen/6368DBCB8DE5818A7C9F441F> <http://data.vlaanderen.be/ns/mandaat#start> "2022-01-28"^^xsd:date .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/mandatarissen/6368DBCB8DE5818A7C9F441F> <http://data.vlaanderen.be/ns/mandaat#start> "2022-05-04"^^xsd:date .
|
||||
}
|
||||
}
|
||||
;
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/mandatarissen/6368DB2F8DE5818A7C9F441A> <http://data.vlaanderen.be/ns/mandaat#start> "2022-05-04"^^xsd:date .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/mandatarissen/6368DB2F8DE5818A7C9F441A> <http://data.vlaanderen.be/ns/mandaat#start> "2022-01-28"^^xsd:date .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/mandatarissen/6368DB2F8DE5818A7C9F441A> <http://data.vlaanderen.be/ns/mandaat#start> "2022-05-04"^^xsd:date .
|
||||
}
|
||||
}
|
||||
|
||||
# The associated call to trigger a reindex is :
|
||||
|
||||
# curl --location --request POST '172.19.0.23/update' \
|
||||
# --header 'Content-Type: application/vnd.api+json' \
|
||||
# --data-raw ' [
|
||||
# {
|
||||
# "deletes": [
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/personen/635BD6EC8DE5818A7C9F4310" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "635BD6EC8DE5818A7C9F4310" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/personen/635BD7518DE5818A7C9F4313" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "635BD7518DE5818A7C9F4313" }
|
||||
# }
|
||||
# ],
|
||||
# "inserts": []
|
||||
# }
|
||||
# ]'
|
||||
@@ -0,0 +1,79 @@
|
||||
# OP-1929 : Delete duplicated members from worship service
|
||||
|
||||
# Delete wrong peson and mandatarissen
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> { ?s ?p ?o . }
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?s {
|
||||
<http://data.lblod.info/id/personen/74c5800e8489c825f318acc9dcb031d0>
|
||||
<http://data.lblod.info/id/mandatarissen/6380A02F4B5FEAF28DEDE975>
|
||||
<http://data.lblod.info/id/mandatarissen/6380BBB04B5FEAF28DEDE97E>
|
||||
<http://data.lblod.info/id/mandatarissen/63809FC24B5FEAF28DEDE974>
|
||||
<http://data.lblod.info/id/mandatarissen/63809F414B5FEAF28DEDE972>
|
||||
<http://data.lblod.info/id/mandatarissen/63809F804B5FEAF28DEDE973>
|
||||
<http://data.lblod.info/id/mandatarissen/6380D0854B5FEAF28DEDE97F>
|
||||
}
|
||||
?s ?p ?o .
|
||||
}
|
||||
}
|
||||
;
|
||||
# Delete sensitive data
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
|
||||
<http://data.lblod.info/id/personen/74c5800e8489c825f318acc9dcb031d0> ?pp ?op .
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
|
||||
<http://data.lblod.info/id/personen/74c5800e8489c825f318acc9dcb031d0> ?pp ?op .
|
||||
}
|
||||
}
|
||||
|
||||
# The associated call to trigger a reindex is :
|
||||
|
||||
# curl --location --request POST '172.20.0.26/update' \
|
||||
# --header 'Content-Type: application/vnd.api+json' \
|
||||
# --data-raw ' [
|
||||
# {
|
||||
# "deletes": [
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/personen/74c5800e8489c825f318acc9dcb031d0" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "74c5800e8489c825f318acc9dcb031d0" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/mandatarissen/6380A02F4B5FEAF28DEDE975" },
|
||||
# "predicate": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" },
|
||||
# "object": { "type": "uri", "value": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/mandatarissen/6380BBB04B5FEAF28DEDE97E" },
|
||||
# "predicate": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" },
|
||||
# "object": { "type": "uri", "value": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/mandatarissen/63809FC24B5FEAF28DEDE974" },
|
||||
# "predicate": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" },
|
||||
# "object": { "type": "uri", "value": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/mandatarissen/63809F414B5FEAF28DEDE972" },
|
||||
# "predicate": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" },
|
||||
# "object": { "type": "uri", "value": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/mandatarissen/63809F804B5FEAF28DEDE973" },
|
||||
# "predicate": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" },
|
||||
# "object": { "type": "uri", "value": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/mandatarissen/6380D0854B5FEAF28DEDE97F" },
|
||||
# "predicate": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" },
|
||||
# "object": { "type": "uri", "value": "http://data.lblod.info/vocabularies/erediensten/EredienstMandataris" }
|
||||
# }
|
||||
# ],
|
||||
# "inserts": []
|
||||
# }
|
||||
# ]'
|
||||
@@ -0,0 +1 @@
|
||||
http://mu.semte.ch/graphs/organisatieportaal
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,17 @@
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
?role ere:functie <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> . # Priester
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
?role ere:functie <http://lblod.data.gift/concepts/04d3b5325f2ebc5eaf96849519af4254> . # Rector
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/rollenBedienaar/6332B4D3036B579F0A26FF1D> org:holds ?role .
|
||||
?role ere:functie <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> .
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
?role ere:functie <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> . # Priester
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
?role ere:functie <http://lblod.data.gift/concepts/04d3b5325f2ebc5eaf96849519af4254> . # Rector
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/rollenBedienaar/6371F9448DE5818A7C9F44AC> org:holds ?role .
|
||||
?role ere:functie <http://lblod.data.gift/concepts/efbf2ff50b5c4f693f129ac03319c4f2> .
|
||||
}
|
||||
}
|
||||
80
config/migrations/2022/20221222160000-fix-kbo-uris.sparql
Normal file
80
config/migrations/2022/20221222160000-fix-kbo-uris.sparql
Normal file
@@ -0,0 +1,80 @@
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/c5908a253d1aa2fccb75e6fff439c93a CKB Kruisem --> Stays
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/64dcf0eaafd13dea75717d9014982106 CKB Kruishoutem --> DELETE KBO +
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/6d4226a920cc47e4d4bbfddb451f4883 CKB Aalter NIET actief --> Change to "0535.589.755" +
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/e08a8bc5828bd44e735724a79b588b13 CKB Aalter actief --> Stays
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/9e0e8f060ca954da6263243642433f44 CKB De Pinte --> Stays
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/fa51c0cd4530f0db4caea031f75305d3 CKB Sint-Martens-Latem --> DELETE KBO +
|
||||
# http://data.lblod.info/id/besturenVanDeEredienst/619a5721094b28807dca8d04de69e3e0 Islamitische geloofsgemeenschap Yunus Emre van Genk --> Stays
|
||||
# http://data.lblod.info/id/centraleBesturenVanDeEredienst/e17dabfaf8f562ad181f422006c42e97 CB van de Islamitische gemeenschappen in Limburg --> Delete KBO +
|
||||
|
||||
|
||||
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: <https://data.lblod.info/vocabularies/leidinggevenden/>
|
||||
PREFIX locn: <http://www.w3.org/ns/locn#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
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 ?g {
|
||||
?bestuur
|
||||
adms:identifier
|
||||
?identifier_kbo.
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/centraleBesturenVanDeEredienst/6d4226a920cc47e4d4bbfddb451f4883>
|
||||
adms:identifier
|
||||
<http://data.lblod.info/id/identificatoren/d029ebdf899249f2b3d1ae88be0ebf65>.
|
||||
<http://data.lblod.info/id/identificatoren/d029ebdf899249f2b3d1ae88be0ebf65>
|
||||
a adms:Identifier;
|
||||
mu:uuid "d029ebdf899249f2b3d1ae88be0ebf65";
|
||||
skos:notation
|
||||
"KBO nummer";
|
||||
generiek:gestructureerdeIdentificator
|
||||
<http://data.lblod.info/id/gestructureerdeIdentificatoren/6a197d71a59d41ca900009ef84c72002>.
|
||||
<http://data.lblod.info/id/gestructureerdeIdentificatoren/6a197d71a59d41ca900009ef84c72002>
|
||||
a generiek:GestructureerdeIdentificator;
|
||||
mu:uuid "6a197d71a59d41ca900009ef84c72002";
|
||||
generiek:lokaleIdentificator
|
||||
"0535589755".
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
VALUES ?bestuur {
|
||||
<http://data.lblod.info/id/centraleBesturenVanDeEredienst/64dcf0eaafd13dea75717d9014982106>
|
||||
<http://data.lblod.info/id/centraleBesturenVanDeEredienst/fa51c0cd4530f0db4caea031f75305d3>
|
||||
<http://data.lblod.info/id/centraleBesturenVanDeEredienst/e17dabfaf8f562ad181f422006c42e97>
|
||||
<http://data.lblod.info/id/centraleBesturenVanDeEredienst/6d4226a920cc47e4d4bbfddb451f4883>
|
||||
}
|
||||
|
||||
?bestuur
|
||||
adms:identifier
|
||||
?identifier_kbo.
|
||||
?identifier_kbo
|
||||
skos:notation
|
||||
"KBO nummer".
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
PREFIX dct: <http://purl.org/dc/terms/>
|
||||
|
||||
DELETE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/veranderingsgebeurtenissen/63A1BE5026577078270F82DA> dct:date "2022-12-21"^^xsd:date .
|
||||
}
|
||||
} INSERT {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/veranderingsgebeurtenissen/63A1BE5026577078270F82DA> dct:date "2022-12-20"^^xsd:date .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH ?g {
|
||||
<http://data.lblod.info/id/veranderingsgebeurtenissen/63A1BE5026577078270F82DA> dct:date "2022-12-21"^^xsd:date .
|
||||
}
|
||||
}
|
||||
|
||||
# OP-1981
|
||||
@@ -0,0 +1,65 @@
|
||||
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 ?ppPerson ?ooPerson.
|
||||
?heeftGeboorte ?p ?o.
|
||||
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
|
||||
?identificator ?x ?y.
|
||||
?registration ?t ?j.
|
||||
}
|
||||
}
|
||||
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?person a <http://www.w3.org/ns/person#Person>.
|
||||
FILTER((NOT EXISTS { ?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person. })
|
||||
&& (NOT EXISTS { ?ministers <http://www.w3.org/ns/org#heldBy> ?person. }))
|
||||
}
|
||||
|
||||
GRAPH <http://mu.semte.ch/graphs/privacy-centric-graph> {
|
||||
optional {?person ?ppPerson ?ooPerson.}
|
||||
optional {
|
||||
?person persoon:heeftGeboorte ?heeftGeboorte.
|
||||
?heeftGeboorte ?p ?o.
|
||||
}
|
||||
|
||||
optional {
|
||||
?person persoon:registratie ?registration.
|
||||
?registration ?t ?j.
|
||||
}
|
||||
optional {
|
||||
|
||||
?registration <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?identificator.
|
||||
?identificator ?x ?y.
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?person ?pPerson ?oPerson.
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?person a <http://www.w3.org/ns/person#Person>;
|
||||
?pPerson ?oPerson.
|
||||
FILTER((NOT EXISTS { ?mandatories <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?person. }) && (NOT EXISTS { ?ministers <http://www.w3.org/ns/org#heldBy> ?person. }))
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
PREFIX owl: <http://www.w3.org/2002/07/owl#>
|
||||
PREFIX rdfs: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
|
||||
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX regorg: <http://www.w3.org/ns/regorg#>
|
||||
PREFIX person: <http://www.w3.org/ns/person#>
|
||||
PREFIX besluit: <http://data.vlaanderen.be/ns/besluit#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX organisatie: <https://data.vlaanderen.be/ns/organisatie#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX ext: <http://mu.semte.ch/vocabularies/ext/>
|
||||
PREFIX ere: <http://data.lblod.info/vocabularies/erediensten/>
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?representatieveOrgaan <http://www.w3.org/ns/org#linkedTo> ?bestuur .
|
||||
?bestuur ?pbestuur ?obestuur .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?bestuur {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/999b011fe6b90b3b546612c25db4b607> # OP-1980
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/da2184c3dca9eb7c4828a50c0e9f5af4> # OP-1978
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/a6b5c5db3a261ca024a42fe9489496a9> # OP-1979
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/260312c07d8e00358064a362dee3506f> # OP-1977
|
||||
}
|
||||
|
||||
OPTIONAL { ?representatieveOrgaan <http://www.w3.org/ns/org#linkedTo> ?bestuur }
|
||||
|
||||
?bestuur ?pbestuur ?obestuur .
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?primarySite ?pprimarySite ?oprimarySite .
|
||||
?address ?paddress ?oaddress .
|
||||
?contactPoint ?pcontactPoint ?ocontactPoint .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?bestuur {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/999b011fe6b90b3b546612c25db4b607> # OP-1980
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/da2184c3dca9eb7c4828a50c0e9f5af4> # OP-1978
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/a6b5c5db3a261ca024a42fe9489496a9> # OP-1979
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/260312c07d8e00358064a362dee3506f> # OP-1977
|
||||
}
|
||||
|
||||
OPTIONAL {
|
||||
?bestuur <http://www.w3.org/ns/org#hasPrimarySite> ?primarySite.
|
||||
?primarySite ?pprimarySite ?oprimarySite .
|
||||
|
||||
OPTIONAL {
|
||||
?primarySite <https://data.vlaanderen.be/ns/organisatie#bestaatUit> ?address.
|
||||
?address ?paddress ?oaddress .
|
||||
}
|
||||
|
||||
OPTIONAL {
|
||||
?primarySite <http://www.w3.org/ns/org#siteAddress> ?contactPoint .
|
||||
?contactPoint ?pcontactPoint ?ocontactPoint .
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?identifier ?pidentifier ?oidentifier .
|
||||
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?bestuur {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/999b011fe6b90b3b546612c25db4b607> # OP-1980
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/da2184c3dca9eb7c4828a50c0e9f5af4> # OP-1978
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/a6b5c5db3a261ca024a42fe9489496a9> # OP-1979
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/260312c07d8e00358064a362dee3506f> # OP-1977
|
||||
}
|
||||
|
||||
OPTIONAL {
|
||||
?bestuur <http://www.w3.org/ns/adms#identifier> ?identifier .
|
||||
?identifier ?pidentifier ?oidentifier .
|
||||
|
||||
OPTIONAL {
|
||||
?identifier <https://data.vlaanderen.be/ns/generiek#gestructureerdeIdentificator> ?structuredIdentifier.
|
||||
?structuredIdentifier ?pstructuredIdentifier ?ostructuredIdentifier .
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
|
||||
# Clean reminiscences
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
?s ?p ?o .
|
||||
}
|
||||
} WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/organisatieportaal> {
|
||||
VALUES ?o {
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/999b011fe6b90b3b546612c25db4b607> # OP-1980
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/da2184c3dca9eb7c4828a50c0e9f5af4> # OP-1978
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/a6b5c5db3a261ca024a42fe9489496a9> # OP-1979
|
||||
<http://data.lblod.info/id/besturenVanDeEredienst/260312c07d8e00358064a362dee3506f> # OP-1977
|
||||
}
|
||||
|
||||
OPTIONAL{ ?s ?p ?o }
|
||||
}
|
||||
}
|
||||
|
||||
# The associated call to trigger a reindex is :
|
||||
|
||||
# curl --location --request POST '172.20.0.15/update' \
|
||||
# --header 'Content-Type: application/vnd.api+json' \
|
||||
# --data-raw ' [
|
||||
# {
|
||||
# "deletes": [
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/besturenVanDeEredienst/999b011fe6b90b3b546612c25db4b607" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "999b011fe6b90b3b546612c25db4b607" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/besturenVanDeEredienst/da2184c3dca9eb7c4828a50c0e9f5af4" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "da2184c3dca9eb7c4828a50c0e9f5af4" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/besturenVanDeEredienst/a6b5c5db3a261ca024a42fe9489496a9" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "a6b5c5db3a261ca024a42fe9489496a9" }
|
||||
# },
|
||||
# {
|
||||
# "subject": { "type": "uri", "value": "http://data.lblod.info/id/besturenVanDeEredienst/260312c07d8e00358064a362dee3506f" },
|
||||
# "predicate": { "type": "uri", "value": "http://mu.semte.ch/vocabularies/core/uuid" },
|
||||
# "object": { "type": "string", "value": "260312c07d8e00358064a362dee3506f" }
|
||||
# }
|
||||
# ],
|
||||
# "inserts": []
|
||||
# }
|
||||
# ]'
|
||||
@@ -0,0 +1,34 @@
|
||||
PREFIX nie: <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#>
|
||||
PREFIX dct: <http://purl.org/dc/terms/>
|
||||
PREFIX dcat: <http://www.w3.org/ns/dcat#>
|
||||
PREFIX prov: <http://www.w3.org/ns/prov#>
|
||||
|
||||
|
||||
DELETE {
|
||||
GRAPH <http://mu.semte.ch/graphs/public> {
|
||||
?sub
|
||||
dct:subject <http://data.lblod.info/datasets/delta-producer/dumps/OrganizationsCacheGraphDump> ;
|
||||
dcat:distribution ?distribution.
|
||||
?distribution
|
||||
dct:subject ?file ;
|
||||
dct:created ?created .
|
||||
?phyiscalFile
|
||||
nie:dataSource ?file
|
||||
}
|
||||
}
|
||||
WHERE {
|
||||
GRAPH <http://mu.semte.ch/graphs/public> {
|
||||
?sub
|
||||
dct:subject <http://data.lblod.info/datasets/delta-producer/dumps/OrganizationsCacheGraphDump> ;
|
||||
dcat:distribution ?distribution.
|
||||
FILTER NOT EXISTS {
|
||||
?revision
|
||||
prov:wasRevisionOf ?sub
|
||||
}
|
||||
?distribution
|
||||
dct:subject ?file ;
|
||||
dct:created ?created .
|
||||
?phyiscalFile
|
||||
nie:dataSource ?file
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
INSERT DATA {
|
||||
GRAPH <http://mu.semte.ch/graphs/accounts/deltas> {
|
||||
<http://data.lblod.info/foaf/account/id/8df6f1e4-869f-4223-9834-961b01a7bd48>
|
||||
a foaf:OnlineAccount.
|
||||
|
||||
<http://data.lblod.info/foaf/agent/id/3d204ad9-3f20-407a-ab40-81a3268d5594>
|
||||
a foaf:Agent;
|
||||
foaf:account <http://data.lblod.info/foaf/account/id/8df6f1e4-869f-4223-9834-961b01a7bd48>.
|
||||
|
||||
<http://data.lblod.info/foaf/group/id/44a6640d-b24d-43e2-a23d-7462f77e0adc>
|
||||
a foaf:Group;
|
||||
foaf:member <http://data.lblod.info/foaf/agent/id/3d204ad9-3f20-407a-ab40-81a3268d5594>;
|
||||
foaf:name "organizations".
|
||||
}
|
||||
}
|
||||
33
config/reasoner/dl2op/main-info/inverse_relations.n3
Normal file
33
config/reasoner/dl2op/main-info/inverse_relations.n3
Normal file
@@ -0,0 +1,33 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Inverse properties
|
||||
{
|
||||
?s org:holds ?o.
|
||||
} => {
|
||||
?o org:heldBy ?s.
|
||||
}.
|
||||
|
||||
{
|
||||
?s org:heldBy ?o.
|
||||
} => {
|
||||
?o org:holds ?s.
|
||||
}.
|
||||
150
config/reasoner/dl2op/main-info/mapping.n3
Normal file
150
config/reasoner/dl2op/main-info/mapping.n3
Normal file
@@ -0,0 +1,150 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# DL and OP both use persoon:gebruikteVoornaam but with different semantics (!)
|
||||
# Hence the mapping is in two steps.
|
||||
# The first step maps the DL persoon:gebruikteVoornaam to the OP counterpart
|
||||
# and drops the DL persoon:gebruikteVoornaam statements with e:becomes
|
||||
# A second reasoning will map DL foaf:name to OP persoon:gebruikteVoornaam
|
||||
# Doing both at once would lead all DL foaf:names to incorrectly become foaf:givennames
|
||||
# in OP
|
||||
|
||||
# First name
|
||||
# persoon:gebruikteVoornaam => foaf:givenName
|
||||
# Alternatieve voornaam
|
||||
# foaf:name => persoon:gebruikteVoornaam
|
||||
|
||||
# Test Mock DL
|
||||
# <http://example.org/person> persoon_loket:gebruikteVoornaam "Didier".
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gebruikteVoornaam ?o
|
||||
} e:becomes {
|
||||
?s foaf:givenName ?o
|
||||
}
|
||||
} => {
|
||||
?s foaf:givenName ?o
|
||||
}.
|
||||
|
||||
|
||||
# First name
|
||||
# persoon:gebruikteVoornaam => foaf:givenName (done in pre-processing)
|
||||
# Alternatieve voornaam
|
||||
# foaf:name => persoon:gebruikteVoornaam
|
||||
|
||||
# Test Mock LLB
|
||||
# <http://example.org/person> foaf:name "Didier".
|
||||
{
|
||||
{
|
||||
?s foaf:name ?o
|
||||
} e:becomes {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}.
|
||||
|
||||
# Test
|
||||
# ex:s <http://data.vlaanderen.be/ns/mandaat#start> "2019-01-01T19:32:52+00:00"^^xsd:dateTime.
|
||||
{
|
||||
?s mandaat:start ?startDateTime.
|
||||
# use backward arrow rule defined below
|
||||
?startDateTime :dateFromDateTime ?startDate.
|
||||
{
|
||||
?s mandaat:start ?startDateTime
|
||||
} e:becomes {
|
||||
?s mandaat:start ?startDate
|
||||
}.
|
||||
} => {
|
||||
?s mandaat:start ?startDate
|
||||
}.
|
||||
|
||||
# ex:s <http://data.vlaanderen.be/ns/mandaat#einde> "2019-02-01T10:32:52+00:00"^^xsd:dateTime.
|
||||
{
|
||||
?s mandaat:einde ?eindeDateTime.
|
||||
# use backward arrow rule defined below
|
||||
?eindeDateTime :dateFromDateTime ?eindeDate.
|
||||
{
|
||||
?s mandaat:einde ?eindeDateTime
|
||||
} e:becomes {
|
||||
?s mandaat:einde ?eindeDate
|
||||
}.
|
||||
} => {
|
||||
?s mandaat:einde ?eindeDate
|
||||
}.
|
||||
|
||||
|
||||
# Backward arrow rule is like a function call.
|
||||
# Removes time info in the returned date
|
||||
# The user in DL selects a date via the UI.
|
||||
# These dates are persisted as midnight dateTimes in UTC.
|
||||
# Meaning that 1st of July is stored as
|
||||
# "2022-06-30T22:00:00Z"^^xsd:dateTime
|
||||
# and 1 December
|
||||
# "2022-11-30T23:00:00Z"^^xsd:dateTime
|
||||
# So, the following rule adds 2 hours to the datetime, and then takes the date part of the UTC date time
|
||||
# to come to the date that the DL user selected (in CE(S)T)
|
||||
{
|
||||
?dateTime :dateFromDateTime ?date
|
||||
} <= {
|
||||
(?dateTimeLiteral xsd:dateTime) log:dtlit ?dateTime.
|
||||
(?dateTime "PT2H"^^xsd:dayTimeDuration) func:add-dayTimeDuration-to-dateTime ?localDateTime.
|
||||
(?localDateTimeLiteral xsd:dateTime) log:dtlit ?localDateTime.
|
||||
(?localDateTimeLiteral 0 11) func:substring ?dateLiteral.
|
||||
(?dateLiteral xsd:date) log:dtlit ?date.
|
||||
}.
|
||||
|
||||
|
||||
# ex:orgA besluit:classificatie <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000002>.
|
||||
{
|
||||
{
|
||||
?s besluit:classificatie ?o
|
||||
} e:becomes {
|
||||
?s org:classification ?o
|
||||
}
|
||||
} => {
|
||||
?s org:classification ?o
|
||||
}.
|
||||
|
||||
# fix typo V -> v
|
||||
# <http://data.lblod.info/id/adressen/606D972BC20E70000900001C> <https://data.vlaanderen.be/ns/adres#AdresVoorstelling.huisnummer> "1" .
|
||||
{
|
||||
{
|
||||
?s adres:AdresVoorstelling.huisnummer ?o
|
||||
} e:becomes {
|
||||
?s adres:Adresvoorstelling.huisnummer ?o
|
||||
}
|
||||
} => {
|
||||
?s adres:Adresvoorstelling.huisnummer ?o
|
||||
}.
|
||||
|
||||
|
||||
# Tijdspecialisatie
|
||||
{
|
||||
{
|
||||
?s mandaat:isTijdspecialisatieVan ?o.
|
||||
} e:becomes {
|
||||
?s generiek:isTijdspecialisatieVan ?o.
|
||||
}
|
||||
} => {
|
||||
?s generiek:isTijdspecialisatieVan ?o.
|
||||
}.
|
||||
534
config/reasoner/dl2op/main-info/persoon_http_to_https.n3
Normal file
534
config/reasoner/dl2op/main-info/persoon_http_to_https.n3
Normal file
@@ -0,0 +1,534 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Map from http persoon to https persoon namespace.
|
||||
|
||||
## classes:
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Afstamming
|
||||
} e:becomes {
|
||||
?s a persoon:Afstamming
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Afstamming
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:BurgerlijkeStaat
|
||||
} e:becomes {
|
||||
?s a persoon:BurgerlijkeStaat
|
||||
}
|
||||
} => {
|
||||
?s a persoon:BurgerlijkeStaat
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Domicilie
|
||||
} e:becomes {
|
||||
?s a persoon:Domicilie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Domicilie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Geboorte
|
||||
} e:becomes {
|
||||
?s a persoon:Geboorte
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Geboorte
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:GeenInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:GeenInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:GeenInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:GeregistreerdPersoon
|
||||
} e:becomes {
|
||||
?s a persoon:GeregistreerdPersoon
|
||||
}
|
||||
} => {
|
||||
?s a persoon:GeregistreerdPersoon
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Gezin
|
||||
} e:becomes {
|
||||
?s a persoon:Gezin
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Gezin
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Gezinsrelatie
|
||||
} e:becomes {
|
||||
?s a persoon:Gezinsrelatie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Gezinsrelatie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Huwelijk
|
||||
} e:becomes {
|
||||
?s a persoon:Huwelijk
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Huwelijk
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Inwoner
|
||||
} e:becomes {
|
||||
?s a persoon:Inwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Inwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Inwonerschap
|
||||
} e:becomes {
|
||||
?s a persoon:Inwonerschap
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Inwonerschap
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Nationaliteit
|
||||
} e:becomes {
|
||||
?s a persoon:Nationaliteit
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Nationaliteit
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Overlijden
|
||||
} e:becomes {
|
||||
?s a persoon:Overlijden
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Overlijden
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:PermanentInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:PermanentInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:PermanentInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Persoonsgebeurtenis
|
||||
} e:becomes {
|
||||
?s a persoon:Persoonsgebeurtenis
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Persoonsgebeurtenis
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Persoonsrelatie
|
||||
} e:becomes {
|
||||
?s a persoon:Persoonsrelatie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Persoonsrelatie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Samenwonen
|
||||
} e:becomes {
|
||||
?s a persoon:Samenwonen
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Samenwonen
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Staatsburger
|
||||
} e:becomes {
|
||||
?s a persoon:Staatsburger
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Staatsburger
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Staatsburgerschap
|
||||
} e:becomes {
|
||||
?s a persoon:Staatsburgerschap
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Staatsburgerschap
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:TijdelijkInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:TijdelijkInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:TijdelijkInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Verblijfplaats
|
||||
} e:becomes {
|
||||
?s a persoon:Verblijfplaats
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Verblijfplaats
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Voogdij
|
||||
} e:becomes {
|
||||
?s a persoon:Voogdij
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Voogdij
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Vreemdeling
|
||||
} e:becomes {
|
||||
?s a persoon:Vreemdeling
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Vreemdeling
|
||||
}.
|
||||
|
||||
## properties
|
||||
{
|
||||
{
|
||||
?s persoon_loket:afstammingsType ?o
|
||||
} e:becomes {
|
||||
?s persoon:afstammingsType ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:afstammingsType ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:alternatieveNaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:alternatieveNaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:alternatieveNaam ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:datum ?o
|
||||
} e:becomes {
|
||||
?s persoon:datum ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:datum ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:datumVanAfstamming ?o
|
||||
} e:becomes {
|
||||
?s persoon:datumVanAfstamming ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:datumVanAfstamming ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gebruikteVoornaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:geslacht ?o
|
||||
} e:becomes {
|
||||
?s persoon:geslacht ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:geslacht ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gezinsadres ?o
|
||||
} e:becomes {
|
||||
?s persoon:gezinsadres ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gezinsadres ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gezinsrelatietype ?o
|
||||
} e:becomes {
|
||||
?s persoon:gezinsrelatietype ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gezinsrelatietype ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftBurgerlijkeStaat ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftBurgerlijkeStaat ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftBurgerlijkeStaat ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftGeboorte ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftInwonerschap ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftInwonerschap ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftInwonerschap ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftNationaliteit ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftOverlijden ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftOverlijden ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftOverlijden ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftPersoonsrelatie ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftPersoonsrelatie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftPersoonsrelatie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftStaatsburgerschap ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftStaatsburgerschap ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftStaatsburgerschap ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftVerblijfplaats ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftVerblijfplaats ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftVerblijfplaats ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:Inwonerschap.binnenJurisdictie ?o
|
||||
} e:becomes {
|
||||
?s persoon:Inwonerschap.binnenJurisdictie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:Inwonerschap.binnenJurisdictie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isHoofdVan ?o
|
||||
} e:becomes {
|
||||
?s persoon:isHoofdVan ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isHoofdVan ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isLidVan ?o
|
||||
} e:becomes {
|
||||
?s persoon:isLidVan ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isLidVan ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isRelatieMet ?o
|
||||
} e:becomes {
|
||||
?s persoon:isRelatieMet ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isRelatieMet ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:land ?o
|
||||
} e:becomes {
|
||||
?s persoon:land ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:land ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:nationaliteit ?o
|
||||
} e:becomes {
|
||||
?s persoon:nationaliteit ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:nationaliteit ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:plaats ?o
|
||||
} e:becomes {
|
||||
?s persoon:plaats ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:plaats ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:registratie ?o
|
||||
} e:becomes {
|
||||
?s persoon:registratie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:Staatsburgerschap.binnenJurisdictie ?o
|
||||
} e:becomes {
|
||||
?s persoon:Staatsburgerschap.binnenJurisdictie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:Staatsburgerschap.binnenJurisdictie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:type ?o
|
||||
} e:becomes {
|
||||
?s persoon:type ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:type ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:verblijfsadres ?o
|
||||
} e:becomes {
|
||||
?s persoon:verblijfsadres ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:verblijfsadres ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:volledigeNaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:volledigeNaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:volledigeNaam ?o
|
||||
}.
|
||||
538
config/reasoner/dl2op/main-info/query.n3q
Normal file
538
config/reasoner/dl2op/main-info/query.n3q
Normal file
@@ -0,0 +1,538 @@
|
||||
# Generated by producer-config-to-query.ipynb
|
||||
|
||||
## CLASSES
|
||||
{
|
||||
?s a <http://data.lblod.info/vocabularies/contacthub/AgentInPositie>
|
||||
} => {
|
||||
?s a <http://data.lblod.info/vocabularies/contacthub/AgentInPositie>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.lblod.info/vocabularies/erediensten/EredienstMandataris>
|
||||
} => {
|
||||
?s a <http://data.lblod.info/vocabularies/erediensten/EredienstMandataris>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.lblod.info/vocabularies/erediensten/RolBedienaar>
|
||||
} => {
|
||||
?s a <http://data.lblod.info/vocabularies/erediensten/RolBedienaar>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.lblod.info/vocabularies/leidinggevenden/Bestuursfunctie>
|
||||
} => {
|
||||
?s a <http://data.lblod.info/vocabularies/leidinggevenden/Bestuursfunctie>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.lblod.info/vocabularies/leidinggevenden/Functionaris>
|
||||
} => {
|
||||
?s a <http://data.lblod.info/vocabularies/leidinggevenden/Functionaris>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.lblod.info/vocabularies/leidinggevenden/FunctionarisStatusCode>
|
||||
} => {
|
||||
?s a <http://data.lblod.info/vocabularies/leidinggevenden/FunctionarisStatusCode>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>
|
||||
} => {
|
||||
?s a <http://data.vlaanderen.be/ns/besluit#Bestuurseenheid>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan>
|
||||
} => {
|
||||
?s a <http://data.vlaanderen.be/ns/besluit#Bestuursorgaan>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.vlaanderen.be/ns/mandaat#Fractie>
|
||||
} => {
|
||||
?s a <http://data.vlaanderen.be/ns/mandaat#Fractie>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.vlaanderen.be/ns/mandaat#Mandaat>
|
||||
} => {
|
||||
?s a <http://data.vlaanderen.be/ns/mandaat#Mandaat>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://data.vlaanderen.be/ns/mandaat#Mandataris>
|
||||
} => {
|
||||
?s a <http://data.vlaanderen.be/ns/mandaat#Mandataris>
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s a <https://data.vlaanderen.be/ns/persoon#Geboorte>
|
||||
# } => {
|
||||
# ?s a <https://data.vlaanderen.be/ns/persoon#Geboorte>
|
||||
# }.
|
||||
|
||||
{
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BeleidsdomeinCode>
|
||||
} => {
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BeleidsdomeinCode>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BestuurseenheidClassificatieCode>
|
||||
} => {
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BestuurseenheidClassificatieCode>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BestuursfunctieCode>
|
||||
} => {
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BestuursfunctieCode>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BestuursorgaanClassificatieCode>
|
||||
} => {
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/BestuursorgaanClassificatieCode>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/MandatarisStatusCode>
|
||||
} => {
|
||||
?s a <http://mu.semte.ch/vocabularies/ext/MandatarisStatusCode>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://schema.org/ContactPoint>
|
||||
} => {
|
||||
?s a <http://schema.org/ContactPoint>
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s a <http://www.w3.org/ns/adms#Identifier>
|
||||
# } => {
|
||||
# ?s a <http://www.w3.org/ns/adms#Identifier>
|
||||
# }.
|
||||
|
||||
{
|
||||
?s a <http://www.w3.org/ns/locn#Address>
|
||||
} => {
|
||||
?s a <http://www.w3.org/ns/locn#Address>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://www.w3.org/ns/org#Membership>
|
||||
} => {
|
||||
?s a <http://www.w3.org/ns/org#Membership>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://www.w3.org/ns/person#Person>
|
||||
} => {
|
||||
?s a <http://www.w3.org/ns/person#Person>
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://www.w3.org/ns/prov#Location>
|
||||
} => {
|
||||
?s a <http://www.w3.org/ns/prov#Location>
|
||||
}.
|
||||
|
||||
## PROPERTIES
|
||||
{
|
||||
?s <http://data.lblod.info/vocabularies/contacthub/eindedatum> ?o
|
||||
} => {
|
||||
?s <http://data.lblod.info/vocabularies/contacthub/eindedatum> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.lblod.info/vocabularies/contacthub/startdatum> ?o
|
||||
} => {
|
||||
?s <http://data.lblod.info/vocabularies/contacthub/startdatum> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.lblod.info/vocabularies/erediensten/geplandeEinddatumAanstelling> ?o
|
||||
} => {
|
||||
?s <http://data.lblod.info/vocabularies/erediensten/geplandeEinddatumAanstelling> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.lblod.info/vocabularies/leidinggevenden/adresRegisterId> ?o
|
||||
} => {
|
||||
?s <http://data.lblod.info/vocabularies/leidinggevenden/adresRegisterId> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.lblod.info/vocabularies/leidinggevenden/heeftBestuursfunctie> ?o
|
||||
} => {
|
||||
?s <http://data.lblod.info/vocabularies/leidinggevenden/heeftBestuursfunctie> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/besluit#bestuurt> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/besluit#bestuurt> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/besluit#werkingsgebied> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/besluit#werkingsgebied> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#aantalHouders> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#aantalHouders> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#beleidsdomein> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#beleidsdomein> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#bindingEinde> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#bindingEinde> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#bindingStart> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#bindingStart> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#einde> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#einde> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#isTijdelijkVervangenDoor> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#isTijdelijkVervangenDoor> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#rangorde> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#rangorde> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#start> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#start> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#status> ?o
|
||||
} => {
|
||||
?s <http://data.vlaanderen.be/ns/mandaat#status> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/generiek#isTijdspecialisatieVan> ?o
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#datum> ?o
|
||||
# } => {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#datum> ?o
|
||||
# }.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/persoon#gebruikteVoornaam> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/persoon#gebruikteVoornaam> ?o
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#geslacht> ?o
|
||||
# } => {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#geslacht> ?o
|
||||
# }.
|
||||
|
||||
# {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#heeftGeboorte> ?o
|
||||
# } => {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#heeftGeboorte> ?o
|
||||
# }.
|
||||
|
||||
# {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#heeftNationaliteit> ?o
|
||||
# } => {
|
||||
# ?s <https://data.vlaanderen.be/ns/persoon#heeftNationaliteit> ?o
|
||||
# }.
|
||||
|
||||
{
|
||||
?s <http://mu.semte.ch/vocabularies/core/uuid> ?o
|
||||
} => {
|
||||
?s <http://mu.semte.ch/vocabularies/core/uuid> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://mu.semte.ch/vocabularies/ext/secondaryContactPoint> ?o
|
||||
} => {
|
||||
?s <http://mu.semte.ch/vocabularies/ext/secondaryContactPoint> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://mu.semte.ch/vocabularies/ext/werkingsgebiedNiveau> ?o
|
||||
} => {
|
||||
?s <http://mu.semte.ch/vocabularies/ext/werkingsgebiedNiveau> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://schema.org/contactPoint> ?o
|
||||
} => {
|
||||
?s <http://schema.org/contactPoint> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://schema.org/contactType> ?o
|
||||
} => {
|
||||
?s <http://schema.org/contactType> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://schema.org/email> ?o
|
||||
} => {
|
||||
?s <http://schema.org/email> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://schema.org/faxNumber> ?o
|
||||
} => {
|
||||
?s <http://schema.org/faxNumber> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://schema.org/telephone> ?o
|
||||
} => {
|
||||
?s <http://schema.org/telephone> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://schema.org/url> ?o
|
||||
} => {
|
||||
?s <http://schema.org/url> ?o
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ?o
|
||||
# } => {
|
||||
# ?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> ?o
|
||||
# }.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/2000/01/rdf-schema#label> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/2000/01/rdf-schema#label> ?o
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s <http://www.w3.org/2002/07/owl#sameAs> ?o
|
||||
# } => {
|
||||
# ?s <http://www.w3.org/2002/07/owl#sameAs> ?o
|
||||
# }.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/2004/02/skos/core#altLabel> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/2004/02/skos/core#altLabel> ?o
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s <http://www.w3.org/2004/02/skos/core#notation> ?o
|
||||
# } => {
|
||||
# ?s <http://www.w3.org/2004/02/skos/core#notation> ?o
|
||||
# }.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/2004/02/skos/core#prefLabel> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/2004/02/skos/core#prefLabel> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/2004/02/skos/core#scopeNote> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/2004/02/skos/core#scopeNote> ?o
|
||||
}.
|
||||
|
||||
# {
|
||||
# ?s <http://www.w3.org/ns/adms#identifier> ?o
|
||||
# } => {
|
||||
# ?s <http://www.w3.org/ns/adms#identifier> ?o
|
||||
# }.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#address> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#address> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#addressArea> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#addressArea> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#adminUnit1> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#adminUnit1> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#adminUnit2> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#adminUnit2> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#adminUnitL2> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#adminUnitL2> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#fullAddress> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#fullAddress> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#postCode> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#postCode> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/locn#thoroughfare> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/locn#thoroughfare> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#classification> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#classification> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#hasMembership> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#hasMembership> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#hasPost> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#hasPost> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#heldBy> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#heldBy> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#holds> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#holds> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#linkedTo> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#linkedTo> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#memberOf> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#memberOf> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#organisation> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#organisation> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://www.w3.org/ns/org#role> ?o
|
||||
} => {
|
||||
?s <http://www.w3.org/ns/org#role> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://xmlns.com/foaf/0.1/familyName> ?o
|
||||
} => {
|
||||
?s <http://xmlns.com/foaf/0.1/familyName> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <http://xmlns.com/foaf/0.1/givenName> ?o
|
||||
} => {
|
||||
?s <http://xmlns.com/foaf/0.1/givenName> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/adres#Adresvoorstelling.busnummer> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/adres#Adresvoorstelling.busnummer> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/adres#Adresvoorstelling.huisnummer> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/adres#Adresvoorstelling.huisnummer> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/adres#gemeentenaam> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/adres#gemeentenaam> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/adres#land> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/adres#land> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/adres#postcode> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/adres#postcode> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://data.vlaanderen.be/ns/adres#verwijstNaar> ?o
|
||||
} => {
|
||||
?s <https://data.vlaanderen.be/ns/adres#verwijstNaar> ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s <https://www.w3.org/ns/regorg#legalName> ?o
|
||||
} => {
|
||||
?s <https://www.w3.org/ns/regorg#legalName> ?o
|
||||
}.
|
||||
|
||||
27
config/reasoner/dl2op/main-info/retract_empty_strings.n3
Normal file
27
config/reasoner/dl2op/main-info/retract_empty_strings.n3
Normal file
@@ -0,0 +1,27 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Retract empty strings
|
||||
{
|
||||
{
|
||||
?s ?p ""
|
||||
} e:becomes {}.
|
||||
} => {}.
|
||||
62
config/reasoner/dl2op/main-info/rrn.n3
Normal file
62
config/reasoner/dl2op/main-info/rrn.n3
Normal file
@@ -0,0 +1,62 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
|
||||
# Rijksregisternummer
|
||||
# Extend identifiers to match OP's model
|
||||
# <http://example.org/tst#subject> skos:notation "00010100105".
|
||||
{
|
||||
?identifier skos:notation ?notation.
|
||||
?notation string:notEqualIgnoringCase "Rijksregisternummer".
|
||||
?identifier log:uri ?identifierString.
|
||||
(?identifierString "STRUCTURED_IDENTIFIER") string:concatenation ?hashInput.
|
||||
?hashInput crypto:md5 ?uuid.
|
||||
("http://data.lblod.info/id/gestructureerdeIdentificatoren/" ?uuid) string:concatenation ?structuredIdString.
|
||||
?structuredIdentifier log:uri ?structuredIdString.
|
||||
|
||||
{
|
||||
?identifier skos:notation ?notation.
|
||||
} e:becomes {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
}.
|
||||
|
||||
} => {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
|
||||
?structuredIdentifier a generiek:GestructureerdeIdentificator ;
|
||||
mu:uuid ?uuid ;
|
||||
generiek:lokaleIdentificator ?notation
|
||||
}.
|
||||
|
||||
# identifier property in the export is only used for RRN.
|
||||
{
|
||||
{
|
||||
?s adms:identifier ?o
|
||||
} e:becomes {
|
||||
?s persoon:registratie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
33
config/reasoner/dl2op/main/inverse_relations.n3
Normal file
33
config/reasoner/dl2op/main/inverse_relations.n3
Normal file
@@ -0,0 +1,33 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Inverse properties
|
||||
{
|
||||
?s org:holds ?o.
|
||||
} => {
|
||||
?o org:heldBy ?s.
|
||||
}.
|
||||
|
||||
{
|
||||
?s org:heldBy ?o.
|
||||
} => {
|
||||
?o org:holds ?s.
|
||||
}.
|
||||
150
config/reasoner/dl2op/main/mapping.n3
Normal file
150
config/reasoner/dl2op/main/mapping.n3
Normal file
@@ -0,0 +1,150 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# DL and OP both use persoon:gebruikteVoornaam but with different semantics (!)
|
||||
# Hence the mapping is in two steps.
|
||||
# The first step maps the DL persoon:gebruikteVoornaam to the OP counterpart
|
||||
# and drops the DL persoon:gebruikteVoornaam statements with e:becomes
|
||||
# A second reasoning will map DL foaf:name to OP persoon:gebruikteVoornaam
|
||||
# Doing both at once would lead all DL foaf:names to incorrectly become foaf:givennames
|
||||
# in OP
|
||||
|
||||
# First name
|
||||
# persoon:gebruikteVoornaam => foaf:givenName
|
||||
# Alternatieve voornaam
|
||||
# foaf:name => persoon:gebruikteVoornaam
|
||||
|
||||
# Test Mock DL
|
||||
# <http://example.org/person> persoon_loket:gebruikteVoornaam "Didier".
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gebruikteVoornaam ?o
|
||||
} e:becomes {
|
||||
?s foaf:givenName ?o
|
||||
}
|
||||
} => {
|
||||
?s foaf:givenName ?o
|
||||
}.
|
||||
|
||||
|
||||
# First name
|
||||
# persoon:gebruikteVoornaam => foaf:givenName (done in pre-processing)
|
||||
# Alternatieve voornaam
|
||||
# foaf:name => persoon:gebruikteVoornaam
|
||||
|
||||
# Test Mock LLB
|
||||
# <http://example.org/person> foaf:name "Didier".
|
||||
{
|
||||
{
|
||||
?s foaf:name ?o
|
||||
} e:becomes {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}.
|
||||
|
||||
# Test
|
||||
# ex:s <http://data.vlaanderen.be/ns/mandaat#start> "2019-01-01T19:32:52+00:00"^^xsd:dateTime.
|
||||
{
|
||||
?s mandaat:start ?startDateTime.
|
||||
# use backward arrow rule defined below
|
||||
?startDateTime :dateFromDateTime ?startDate.
|
||||
{
|
||||
?s mandaat:start ?startDateTime
|
||||
} e:becomes {
|
||||
?s mandaat:start ?startDate
|
||||
}.
|
||||
} => {
|
||||
?s mandaat:start ?startDate
|
||||
}.
|
||||
|
||||
# ex:s <http://data.vlaanderen.be/ns/mandaat#einde> "2019-02-01T10:32:52+00:00"^^xsd:dateTime.
|
||||
{
|
||||
?s mandaat:einde ?eindeDateTime.
|
||||
# use backward arrow rule defined below
|
||||
?eindeDateTime :dateFromDateTime ?eindeDate.
|
||||
{
|
||||
?s mandaat:einde ?eindeDateTime
|
||||
} e:becomes {
|
||||
?s mandaat:einde ?eindeDate
|
||||
}.
|
||||
} => {
|
||||
?s mandaat:einde ?eindeDate
|
||||
}.
|
||||
|
||||
|
||||
# Backward arrow rule is like a function call.
|
||||
# Removes time info in the returned date
|
||||
# The user in DL selects a date via the UI.
|
||||
# These dates are persisted as midnight dateTimes in UTC.
|
||||
# Meaning that 1st of July is stored as
|
||||
# "2022-06-30T22:00:00Z"^^xsd:dateTime
|
||||
# and 1 December
|
||||
# "2022-11-30T23:00:00Z"^^xsd:dateTime
|
||||
# So, the following rule adds 2 hours to the datetime, and then takes the date part of the UTC date time
|
||||
# to come to the date that the DL user selected (in CE(S)T)
|
||||
{
|
||||
?dateTime :dateFromDateTime ?date
|
||||
} <= {
|
||||
(?dateTimeLiteral xsd:dateTime) log:dtlit ?dateTime.
|
||||
(?dateTime "PT2H"^^xsd:dayTimeDuration) func:add-dayTimeDuration-to-dateTime ?localDateTime.
|
||||
(?localDateTimeLiteral xsd:dateTime) log:dtlit ?localDateTime.
|
||||
(?localDateTimeLiteral 0 11) func:substring ?dateLiteral.
|
||||
(?dateLiteral xsd:date) log:dtlit ?date.
|
||||
}.
|
||||
|
||||
|
||||
# ex:orgA besluit:classificatie <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000002>.
|
||||
{
|
||||
{
|
||||
?s besluit:classificatie ?o
|
||||
} e:becomes {
|
||||
?s org:classification ?o
|
||||
}
|
||||
} => {
|
||||
?s org:classification ?o
|
||||
}.
|
||||
|
||||
# fix typo V -> v
|
||||
# <http://data.lblod.info/id/adressen/606D972BC20E70000900001C> <https://data.vlaanderen.be/ns/adres#AdresVoorstelling.huisnummer> "1" .
|
||||
{
|
||||
{
|
||||
?s adres:AdresVoorstelling.huisnummer ?o
|
||||
} e:becomes {
|
||||
?s adres:Adresvoorstelling.huisnummer ?o
|
||||
}
|
||||
} => {
|
||||
?s adres:Adresvoorstelling.huisnummer ?o
|
||||
}.
|
||||
|
||||
|
||||
# Tijdspecialisatie
|
||||
{
|
||||
{
|
||||
?s mandaat:isTijdspecialisatieVan ?o.
|
||||
} e:becomes {
|
||||
?s generiek:isTijdspecialisatieVan ?o.
|
||||
}
|
||||
} => {
|
||||
?s generiek:isTijdspecialisatieVan ?o.
|
||||
}.
|
||||
534
config/reasoner/dl2op/main/persoon_http_to_https.n3
Normal file
534
config/reasoner/dl2op/main/persoon_http_to_https.n3
Normal file
@@ -0,0 +1,534 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Map from http persoon to https persoon namespace.
|
||||
|
||||
## classes:
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Afstamming
|
||||
} e:becomes {
|
||||
?s a persoon:Afstamming
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Afstamming
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:BurgerlijkeStaat
|
||||
} e:becomes {
|
||||
?s a persoon:BurgerlijkeStaat
|
||||
}
|
||||
} => {
|
||||
?s a persoon:BurgerlijkeStaat
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Domicilie
|
||||
} e:becomes {
|
||||
?s a persoon:Domicilie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Domicilie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Geboorte
|
||||
} e:becomes {
|
||||
?s a persoon:Geboorte
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Geboorte
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:GeenInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:GeenInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:GeenInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:GeregistreerdPersoon
|
||||
} e:becomes {
|
||||
?s a persoon:GeregistreerdPersoon
|
||||
}
|
||||
} => {
|
||||
?s a persoon:GeregistreerdPersoon
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Gezin
|
||||
} e:becomes {
|
||||
?s a persoon:Gezin
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Gezin
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Gezinsrelatie
|
||||
} e:becomes {
|
||||
?s a persoon:Gezinsrelatie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Gezinsrelatie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Huwelijk
|
||||
} e:becomes {
|
||||
?s a persoon:Huwelijk
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Huwelijk
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Inwoner
|
||||
} e:becomes {
|
||||
?s a persoon:Inwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Inwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Inwonerschap
|
||||
} e:becomes {
|
||||
?s a persoon:Inwonerschap
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Inwonerschap
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Nationaliteit
|
||||
} e:becomes {
|
||||
?s a persoon:Nationaliteit
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Nationaliteit
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Overlijden
|
||||
} e:becomes {
|
||||
?s a persoon:Overlijden
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Overlijden
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:PermanentInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:PermanentInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:PermanentInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Persoonsgebeurtenis
|
||||
} e:becomes {
|
||||
?s a persoon:Persoonsgebeurtenis
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Persoonsgebeurtenis
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Persoonsrelatie
|
||||
} e:becomes {
|
||||
?s a persoon:Persoonsrelatie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Persoonsrelatie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Samenwonen
|
||||
} e:becomes {
|
||||
?s a persoon:Samenwonen
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Samenwonen
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Staatsburger
|
||||
} e:becomes {
|
||||
?s a persoon:Staatsburger
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Staatsburger
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Staatsburgerschap
|
||||
} e:becomes {
|
||||
?s a persoon:Staatsburgerschap
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Staatsburgerschap
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:TijdelijkInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:TijdelijkInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:TijdelijkInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Verblijfplaats
|
||||
} e:becomes {
|
||||
?s a persoon:Verblijfplaats
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Verblijfplaats
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Voogdij
|
||||
} e:becomes {
|
||||
?s a persoon:Voogdij
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Voogdij
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Vreemdeling
|
||||
} e:becomes {
|
||||
?s a persoon:Vreemdeling
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Vreemdeling
|
||||
}.
|
||||
|
||||
## properties
|
||||
{
|
||||
{
|
||||
?s persoon_loket:afstammingsType ?o
|
||||
} e:becomes {
|
||||
?s persoon:afstammingsType ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:afstammingsType ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:alternatieveNaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:alternatieveNaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:alternatieveNaam ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:datum ?o
|
||||
} e:becomes {
|
||||
?s persoon:datum ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:datum ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:datumVanAfstamming ?o
|
||||
} e:becomes {
|
||||
?s persoon:datumVanAfstamming ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:datumVanAfstamming ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gebruikteVoornaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:geslacht ?o
|
||||
} e:becomes {
|
||||
?s persoon:geslacht ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:geslacht ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gezinsadres ?o
|
||||
} e:becomes {
|
||||
?s persoon:gezinsadres ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gezinsadres ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gezinsrelatietype ?o
|
||||
} e:becomes {
|
||||
?s persoon:gezinsrelatietype ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gezinsrelatietype ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftBurgerlijkeStaat ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftBurgerlijkeStaat ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftBurgerlijkeStaat ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftGeboorte ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftInwonerschap ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftInwonerschap ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftInwonerschap ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftNationaliteit ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftOverlijden ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftOverlijden ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftOverlijden ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftPersoonsrelatie ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftPersoonsrelatie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftPersoonsrelatie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftStaatsburgerschap ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftStaatsburgerschap ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftStaatsburgerschap ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftVerblijfplaats ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftVerblijfplaats ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftVerblijfplaats ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:Inwonerschap.binnenJurisdictie ?o
|
||||
} e:becomes {
|
||||
?s persoon:Inwonerschap.binnenJurisdictie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:Inwonerschap.binnenJurisdictie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isHoofdVan ?o
|
||||
} e:becomes {
|
||||
?s persoon:isHoofdVan ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isHoofdVan ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isLidVan ?o
|
||||
} e:becomes {
|
||||
?s persoon:isLidVan ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isLidVan ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isRelatieMet ?o
|
||||
} e:becomes {
|
||||
?s persoon:isRelatieMet ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isRelatieMet ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:land ?o
|
||||
} e:becomes {
|
||||
?s persoon:land ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:land ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:nationaliteit ?o
|
||||
} e:becomes {
|
||||
?s persoon:nationaliteit ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:nationaliteit ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:plaats ?o
|
||||
} e:becomes {
|
||||
?s persoon:plaats ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:plaats ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:registratie ?o
|
||||
} e:becomes {
|
||||
?s persoon:registratie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:Staatsburgerschap.binnenJurisdictie ?o
|
||||
} e:becomes {
|
||||
?s persoon:Staatsburgerschap.binnenJurisdictie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:Staatsburgerschap.binnenJurisdictie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:type ?o
|
||||
} e:becomes {
|
||||
?s persoon:type ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:type ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:verblijfsadres ?o
|
||||
} e:becomes {
|
||||
?s persoon:verblijfsadres ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:verblijfsadres ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:volledigeNaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:volledigeNaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:volledigeNaam ?o
|
||||
}.
|
||||
27
config/reasoner/dl2op/main/retract_empty_strings.n3
Normal file
27
config/reasoner/dl2op/main/retract_empty_strings.n3
Normal file
@@ -0,0 +1,27 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Retract empty strings
|
||||
{
|
||||
{
|
||||
?s ?p ""
|
||||
} e:becomes {}.
|
||||
} => {}.
|
||||
62
config/reasoner/dl2op/main/rrn.n3
Normal file
62
config/reasoner/dl2op/main/rrn.n3
Normal file
@@ -0,0 +1,62 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
|
||||
# Rijksregisternummer
|
||||
# Extend identifiers to match OP's model
|
||||
# <http://example.org/tst#subject> skos:notation "00010100105".
|
||||
{
|
||||
?identifier skos:notation ?notation.
|
||||
?notation string:notEqualIgnoringCase "Rijksregisternummer".
|
||||
?identifier log:uri ?identifierString.
|
||||
(?identifierString "STRUCTURED_IDENTIFIER") string:concatenation ?hashInput.
|
||||
?hashInput crypto:md5 ?uuid.
|
||||
("http://data.lblod.info/id/gestructureerdeIdentificatoren/" ?uuid) string:concatenation ?structuredIdString.
|
||||
?structuredIdentifier log:uri ?structuredIdString.
|
||||
|
||||
{
|
||||
?identifier skos:notation ?notation.
|
||||
} e:becomes {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
}.
|
||||
|
||||
} => {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
|
||||
?structuredIdentifier a generiek:GestructureerdeIdentificator ;
|
||||
mu:uuid ?uuid ;
|
||||
generiek:lokaleIdentificator ?notation
|
||||
}.
|
||||
|
||||
# identifier property in the export is only used for RRN.
|
||||
{
|
||||
{
|
||||
?s adms:identifier ?o
|
||||
} e:becomes {
|
||||
?s persoon:registratie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
33
config/reasoner/dl2op/private-info/inverse_relations.n3
Normal file
33
config/reasoner/dl2op/private-info/inverse_relations.n3
Normal file
@@ -0,0 +1,33 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Inverse properties
|
||||
{
|
||||
?s org:holds ?o.
|
||||
} => {
|
||||
?o org:heldBy ?s.
|
||||
}.
|
||||
|
||||
{
|
||||
?s org:heldBy ?o.
|
||||
} => {
|
||||
?o org:holds ?s.
|
||||
}.
|
||||
150
config/reasoner/dl2op/private-info/mapping.n3
Normal file
150
config/reasoner/dl2op/private-info/mapping.n3
Normal file
@@ -0,0 +1,150 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# DL and OP both use persoon:gebruikteVoornaam but with different semantics (!)
|
||||
# Hence the mapping is in two steps.
|
||||
# The first step maps the DL persoon:gebruikteVoornaam to the OP counterpart
|
||||
# and drops the DL persoon:gebruikteVoornaam statements with e:becomes
|
||||
# A second reasoning will map DL foaf:name to OP persoon:gebruikteVoornaam
|
||||
# Doing both at once would lead all DL foaf:names to incorrectly become foaf:givennames
|
||||
# in OP
|
||||
|
||||
# First name
|
||||
# persoon:gebruikteVoornaam => foaf:givenName
|
||||
# Alternatieve voornaam
|
||||
# foaf:name => persoon:gebruikteVoornaam
|
||||
|
||||
# Test Mock DL
|
||||
# <http://example.org/person> persoon_loket:gebruikteVoornaam "Didier".
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gebruikteVoornaam ?o
|
||||
} e:becomes {
|
||||
?s foaf:givenName ?o
|
||||
}
|
||||
} => {
|
||||
?s foaf:givenName ?o
|
||||
}.
|
||||
|
||||
|
||||
# First name
|
||||
# persoon:gebruikteVoornaam => foaf:givenName (done in pre-processing)
|
||||
# Alternatieve voornaam
|
||||
# foaf:name => persoon:gebruikteVoornaam
|
||||
|
||||
# Test Mock LLB
|
||||
# <http://example.org/person> foaf:name "Didier".
|
||||
{
|
||||
{
|
||||
?s foaf:name ?o
|
||||
} e:becomes {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}.
|
||||
|
||||
# Test
|
||||
# ex:s <http://data.vlaanderen.be/ns/mandaat#start> "2019-01-01T19:32:52+00:00"^^xsd:dateTime.
|
||||
{
|
||||
?s mandaat:start ?startDateTime.
|
||||
# use backward arrow rule defined below
|
||||
?startDateTime :dateFromDateTime ?startDate.
|
||||
{
|
||||
?s mandaat:start ?startDateTime
|
||||
} e:becomes {
|
||||
?s mandaat:start ?startDate
|
||||
}.
|
||||
} => {
|
||||
?s mandaat:start ?startDate
|
||||
}.
|
||||
|
||||
# ex:s <http://data.vlaanderen.be/ns/mandaat#einde> "2019-02-01T10:32:52+00:00"^^xsd:dateTime.
|
||||
{
|
||||
?s mandaat:einde ?eindeDateTime.
|
||||
# use backward arrow rule defined below
|
||||
?eindeDateTime :dateFromDateTime ?eindeDate.
|
||||
{
|
||||
?s mandaat:einde ?eindeDateTime
|
||||
} e:becomes {
|
||||
?s mandaat:einde ?eindeDate
|
||||
}.
|
||||
} => {
|
||||
?s mandaat:einde ?eindeDate
|
||||
}.
|
||||
|
||||
|
||||
# Backward arrow rule is like a function call.
|
||||
# Removes time info in the returned date
|
||||
# The user in DL selects a date via the UI.
|
||||
# These dates are persisted as midnight dateTimes in UTC.
|
||||
# Meaning that 1st of July is stored as
|
||||
# "2022-06-30T22:00:00Z"^^xsd:dateTime
|
||||
# and 1 December
|
||||
# "2022-11-30T23:00:00Z"^^xsd:dateTime
|
||||
# So, the following rule adds 2 hours to the datetime, and then takes the date part of the UTC date time
|
||||
# to come to the date that the DL user selected (in CE(S)T)
|
||||
{
|
||||
?dateTime :dateFromDateTime ?date
|
||||
} <= {
|
||||
(?dateTimeLiteral xsd:dateTime) log:dtlit ?dateTime.
|
||||
(?dateTime "PT2H"^^xsd:dayTimeDuration) func:add-dayTimeDuration-to-dateTime ?localDateTime.
|
||||
(?localDateTimeLiteral xsd:dateTime) log:dtlit ?localDateTime.
|
||||
(?localDateTimeLiteral 0 11) func:substring ?dateLiteral.
|
||||
(?dateLiteral xsd:date) log:dtlit ?date.
|
||||
}.
|
||||
|
||||
|
||||
# ex:orgA besluit:classificatie <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000002>.
|
||||
{
|
||||
{
|
||||
?s besluit:classificatie ?o
|
||||
} e:becomes {
|
||||
?s org:classification ?o
|
||||
}
|
||||
} => {
|
||||
?s org:classification ?o
|
||||
}.
|
||||
|
||||
# fix typo V -> v
|
||||
# <http://data.lblod.info/id/adressen/606D972BC20E70000900001C> <https://data.vlaanderen.be/ns/adres#AdresVoorstelling.huisnummer> "1" .
|
||||
{
|
||||
{
|
||||
?s adres:AdresVoorstelling.huisnummer ?o
|
||||
} e:becomes {
|
||||
?s adres:Adresvoorstelling.huisnummer ?o
|
||||
}
|
||||
} => {
|
||||
?s adres:Adresvoorstelling.huisnummer ?o
|
||||
}.
|
||||
|
||||
|
||||
# Tijdspecialisatie
|
||||
{
|
||||
{
|
||||
?s mandaat:isTijdspecialisatieVan ?o.
|
||||
} e:becomes {
|
||||
?s generiek:isTijdspecialisatieVan ?o.
|
||||
}
|
||||
} => {
|
||||
?s generiek:isTijdspecialisatieVan ?o.
|
||||
}.
|
||||
534
config/reasoner/dl2op/private-info/persoon_http_to_https.n3
Normal file
534
config/reasoner/dl2op/private-info/persoon_http_to_https.n3
Normal file
@@ -0,0 +1,534 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Map from http persoon to https persoon namespace.
|
||||
|
||||
## classes:
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Afstamming
|
||||
} e:becomes {
|
||||
?s a persoon:Afstamming
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Afstamming
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:BurgerlijkeStaat
|
||||
} e:becomes {
|
||||
?s a persoon:BurgerlijkeStaat
|
||||
}
|
||||
} => {
|
||||
?s a persoon:BurgerlijkeStaat
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Domicilie
|
||||
} e:becomes {
|
||||
?s a persoon:Domicilie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Domicilie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Geboorte
|
||||
} e:becomes {
|
||||
?s a persoon:Geboorte
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Geboorte
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:GeenInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:GeenInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:GeenInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:GeregistreerdPersoon
|
||||
} e:becomes {
|
||||
?s a persoon:GeregistreerdPersoon
|
||||
}
|
||||
} => {
|
||||
?s a persoon:GeregistreerdPersoon
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Gezin
|
||||
} e:becomes {
|
||||
?s a persoon:Gezin
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Gezin
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Gezinsrelatie
|
||||
} e:becomes {
|
||||
?s a persoon:Gezinsrelatie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Gezinsrelatie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Huwelijk
|
||||
} e:becomes {
|
||||
?s a persoon:Huwelijk
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Huwelijk
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Inwoner
|
||||
} e:becomes {
|
||||
?s a persoon:Inwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Inwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Inwonerschap
|
||||
} e:becomes {
|
||||
?s a persoon:Inwonerschap
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Inwonerschap
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Nationaliteit
|
||||
} e:becomes {
|
||||
?s a persoon:Nationaliteit
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Nationaliteit
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Overlijden
|
||||
} e:becomes {
|
||||
?s a persoon:Overlijden
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Overlijden
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:PermanentInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:PermanentInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:PermanentInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Persoonsgebeurtenis
|
||||
} e:becomes {
|
||||
?s a persoon:Persoonsgebeurtenis
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Persoonsgebeurtenis
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Persoonsrelatie
|
||||
} e:becomes {
|
||||
?s a persoon:Persoonsrelatie
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Persoonsrelatie
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Samenwonen
|
||||
} e:becomes {
|
||||
?s a persoon:Samenwonen
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Samenwonen
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Staatsburger
|
||||
} e:becomes {
|
||||
?s a persoon:Staatsburger
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Staatsburger
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Staatsburgerschap
|
||||
} e:becomes {
|
||||
?s a persoon:Staatsburgerschap
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Staatsburgerschap
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:TijdelijkInwoner
|
||||
} e:becomes {
|
||||
?s a persoon:TijdelijkInwoner
|
||||
}
|
||||
} => {
|
||||
?s a persoon:TijdelijkInwoner
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Verblijfplaats
|
||||
} e:becomes {
|
||||
?s a persoon:Verblijfplaats
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Verblijfplaats
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Voogdij
|
||||
} e:becomes {
|
||||
?s a persoon:Voogdij
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Voogdij
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s a persoon_loket:Vreemdeling
|
||||
} e:becomes {
|
||||
?s a persoon:Vreemdeling
|
||||
}
|
||||
} => {
|
||||
?s a persoon:Vreemdeling
|
||||
}.
|
||||
|
||||
## properties
|
||||
{
|
||||
{
|
||||
?s persoon_loket:afstammingsType ?o
|
||||
} e:becomes {
|
||||
?s persoon:afstammingsType ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:afstammingsType ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:alternatieveNaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:alternatieveNaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:alternatieveNaam ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:datum ?o
|
||||
} e:becomes {
|
||||
?s persoon:datum ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:datum ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:datumVanAfstamming ?o
|
||||
} e:becomes {
|
||||
?s persoon:datumVanAfstamming ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:datumVanAfstamming ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gebruikteVoornaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gebruikteVoornaam ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:geslacht ?o
|
||||
} e:becomes {
|
||||
?s persoon:geslacht ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:geslacht ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gezinsadres ?o
|
||||
} e:becomes {
|
||||
?s persoon:gezinsadres ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gezinsadres ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:gezinsrelatietype ?o
|
||||
} e:becomes {
|
||||
?s persoon:gezinsrelatietype ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:gezinsrelatietype ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftBurgerlijkeStaat ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftBurgerlijkeStaat ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftBurgerlijkeStaat ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftGeboorte ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftInwonerschap ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftInwonerschap ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftInwonerschap ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftNationaliteit ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftOverlijden ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftOverlijden ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftOverlijden ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftPersoonsrelatie ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftPersoonsrelatie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftPersoonsrelatie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftStaatsburgerschap ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftStaatsburgerschap ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftStaatsburgerschap ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:heeftVerblijfplaats ?o
|
||||
} e:becomes {
|
||||
?s persoon:heeftVerblijfplaats ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:heeftVerblijfplaats ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:Inwonerschap.binnenJurisdictie ?o
|
||||
} e:becomes {
|
||||
?s persoon:Inwonerschap.binnenJurisdictie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:Inwonerschap.binnenJurisdictie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isHoofdVan ?o
|
||||
} e:becomes {
|
||||
?s persoon:isHoofdVan ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isHoofdVan ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isLidVan ?o
|
||||
} e:becomes {
|
||||
?s persoon:isLidVan ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isLidVan ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:isRelatieMet ?o
|
||||
} e:becomes {
|
||||
?s persoon:isRelatieMet ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:isRelatieMet ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:land ?o
|
||||
} e:becomes {
|
||||
?s persoon:land ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:land ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:nationaliteit ?o
|
||||
} e:becomes {
|
||||
?s persoon:nationaliteit ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:nationaliteit ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:plaats ?o
|
||||
} e:becomes {
|
||||
?s persoon:plaats ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:plaats ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:registratie ?o
|
||||
} e:becomes {
|
||||
?s persoon:registratie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:Staatsburgerschap.binnenJurisdictie ?o
|
||||
} e:becomes {
|
||||
?s persoon:Staatsburgerschap.binnenJurisdictie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:Staatsburgerschap.binnenJurisdictie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:type ?o
|
||||
} e:becomes {
|
||||
?s persoon:type ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:type ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:verblijfsadres ?o
|
||||
} e:becomes {
|
||||
?s persoon:verblijfsadres ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:verblijfsadres ?o
|
||||
}.
|
||||
|
||||
{
|
||||
{
|
||||
?s persoon_loket:volledigeNaam ?o
|
||||
} e:becomes {
|
||||
?s persoon:volledigeNaam ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:volledigeNaam ?o
|
||||
}.
|
||||
90
config/reasoner/dl2op/private-info/query.n3q
Normal file
90
config/reasoner/dl2op/private-info/query.n3q
Normal file
@@ -0,0 +1,90 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
|
||||
# Rijksregisternummer
|
||||
# Extend identifiers to match OP's model
|
||||
# <http://example.org/tst#subject> skos:notation "00010100105".
|
||||
{
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
|
||||
?structuredIdentifier a generiek:GestructureerdeIdentificator ;
|
||||
mu:uuid ?uuid ;
|
||||
generiek:lokaleIdentificator ?notation
|
||||
} => {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
|
||||
?structuredIdentifier a generiek:GestructureerdeIdentificator ;
|
||||
mu:uuid ?uuid ;
|
||||
generiek:lokaleIdentificator ?notation
|
||||
}.
|
||||
|
||||
# identifier property in the export is only used for RRN.
|
||||
{
|
||||
?s persoon:registratie ?o
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s a <http://www.w3.org/ns/adms#Identifier>
|
||||
} => {
|
||||
?s a <http://www.w3.org/ns/adms#Identifier>
|
||||
}.
|
||||
|
||||
# Nationality
|
||||
{
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
} => {
|
||||
?s persoon:heeftNationaliteit ?o
|
||||
}.
|
||||
|
||||
|
||||
# Birth and related attributes
|
||||
{
|
||||
?s a persoon:Geboorte;
|
||||
?p ?o.
|
||||
} => {
|
||||
?s a persoon:Geboorte;
|
||||
?p ?o.
|
||||
}.
|
||||
|
||||
{
|
||||
?s persoon:heeftGeboorte ?o
|
||||
} => {
|
||||
?s persoon:heeftGeboorte ?o
|
||||
}.
|
||||
|
||||
{
|
||||
?s persoon:datum ?o
|
||||
} => {
|
||||
?s persoon:datum ?o
|
||||
}.
|
||||
|
||||
# Gender
|
||||
{
|
||||
?s persoon:geslacht ?o
|
||||
} => {
|
||||
?s persoon:geslacht ?o
|
||||
}.
|
||||
27
config/reasoner/dl2op/private-info/retract_empty_strings.n3
Normal file
27
config/reasoner/dl2op/private-info/retract_empty_strings.n3
Normal file
@@ -0,0 +1,27 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
# Retract empty strings
|
||||
{
|
||||
{
|
||||
?s ?p ""
|
||||
} e:becomes {}.
|
||||
} => {}.
|
||||
62
config/reasoner/dl2op/private-info/rrn.n3
Normal file
62
config/reasoner/dl2op/private-info/rrn.n3
Normal file
@@ -0,0 +1,62 @@
|
||||
PREFIX : <#>
|
||||
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 crypto: <http://www.w3.org/2000/10/swap/crypto#>
|
||||
PREFIX e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>
|
||||
PREFIX ex: <http://example.org/test#>
|
||||
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
|
||||
PREFIX func: <http://www.w3.org/2007/rif-builtin-function#>
|
||||
PREFIX generiek: <https://data.vlaanderen.be/ns/generiek#>
|
||||
PREFIX log: <http://www.w3.org/2000/10/swap/log#>
|
||||
PREFIX mandaat: <http://data.vlaanderen.be/ns/mandaat#>
|
||||
PREFIX mu: <http://mu.semte.ch/vocabularies/core/>
|
||||
PREFIX org: <http://www.w3.org/ns/org#>
|
||||
PREFIX persoon: <https://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX persoon_loket: <http://data.vlaanderen.be/ns/persoon#>
|
||||
PREFIX skos:<http://www.w3.org/2004/02/skos/core#>
|
||||
PREFIX string: <http://www.w3.org/2000/10/swap/string#>
|
||||
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
||||
|
||||
|
||||
|
||||
# Rijksregisternummer
|
||||
# Extend identifiers to match OP's model
|
||||
# <http://example.org/tst#subject> skos:notation "00010100105".
|
||||
{
|
||||
?identifier skos:notation ?notation.
|
||||
?notation string:notEqualIgnoringCase "Rijksregisternummer".
|
||||
?identifier log:uri ?identifierString.
|
||||
(?identifierString "STRUCTURED_IDENTIFIER") string:concatenation ?hashInput.
|
||||
?hashInput crypto:md5 ?uuid.
|
||||
("http://data.lblod.info/id/gestructureerdeIdentificatoren/" ?uuid) string:concatenation ?structuredIdString.
|
||||
?structuredIdentifier log:uri ?structuredIdString.
|
||||
|
||||
{
|
||||
?identifier skos:notation ?notation.
|
||||
} e:becomes {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
}.
|
||||
|
||||
} => {
|
||||
?identifier
|
||||
generiek:gestructureerdeIdentificator ?structuredIdentifier ;
|
||||
skos:notation "Rijksregisternummer" .
|
||||
|
||||
?structuredIdentifier a generiek:GestructureerdeIdentificator ;
|
||||
mu:uuid ?uuid ;
|
||||
generiek:lokaleIdentificator ?notation
|
||||
}.
|
||||
|
||||
# identifier property in the export is only used for RRN.
|
||||
{
|
||||
{
|
||||
?s adms:identifier ?o
|
||||
} e:becomes {
|
||||
?s persoon:registratie ?o
|
||||
}
|
||||
} => {
|
||||
?s persoon:registratie ?o
|
||||
}.
|
||||
@@ -141,8 +141,8 @@
|
||||
{
|
||||
"type": "mandatory",
|
||||
"on_path": "mandatories",
|
||||
"rdf_type": "http://data.vlaanderen.be/ns/mandaat#Mandataris",
|
||||
"sub_types": [
|
||||
"rdf_type": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#Mandataris",
|
||||
"http://data.lblod.info/vocabularies/erediensten/EredienstMandataris"
|
||||
],
|
||||
"properties": {
|
||||
@@ -150,11 +150,11 @@
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://xmlns.com/foaf/0.1/givenName"
|
||||
],
|
||||
"id": [
|
||||
"person_id": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
"uuid": [
|
||||
"person_uuid": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
@@ -312,11 +312,11 @@
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://xmlns.com/foaf/0.1/givenName"
|
||||
],
|
||||
"id": [
|
||||
"person_id": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
"uuid": [
|
||||
"person_uuid": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
@@ -468,8 +468,8 @@
|
||||
{
|
||||
"type": "minister",
|
||||
"on_path": "ministers",
|
||||
"rdf_type": "http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
|
||||
"sub_types": [
|
||||
"rdf_type": [
|
||||
"http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
|
||||
"http://data.lblod.info/vocabularies/contacthub/AgentInPositie"
|
||||
],
|
||||
"properties": {
|
||||
@@ -477,11 +477,11 @@
|
||||
"http://www.w3.org/ns/org#heldBy",
|
||||
"http://xmlns.com/foaf/0.1/givenName"
|
||||
],
|
||||
"id": [
|
||||
"person_id": [
|
||||
"http://www.w3.org/ns/org#heldBy",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
"uuid": [
|
||||
"person_uuid": [
|
||||
"http://www.w3.org/ns/org#heldBy",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
@@ -546,7 +546,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"person_id": {
|
||||
"type": "text",
|
||||
"fields": {
|
||||
"field": {
|
||||
@@ -638,11 +638,11 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "id",
|
||||
"name": "person_id",
|
||||
"mappings": {
|
||||
"minister": "id",
|
||||
"agent": "id",
|
||||
"mandatory": "id"
|
||||
"minister": "person_id",
|
||||
"agent": "person_id",
|
||||
"mandatory": "person_id"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -814,8 +814,8 @@
|
||||
{
|
||||
"type": "unit",
|
||||
"on_path": "units",
|
||||
"rdf_type": "http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
|
||||
"sub_types": [
|
||||
"rdf_type": [
|
||||
"http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
|
||||
"http://data.lblod.info/vocabularies/erediensten/EredienstBestuurseenheid",
|
||||
"http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst",
|
||||
"http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"automatic_index_updates": true,
|
||||
"persist_indexes": true,
|
||||
"number_of_threads": 11,
|
||||
"number_of_threads": 8,
|
||||
"eager_indexing_groups": [
|
||||
[
|
||||
{
|
||||
@@ -46,27 +46,27 @@
|
||||
}
|
||||
]
|
||||
],
|
||||
"default_settings" : {
|
||||
"default_settings": {
|
||||
"analysis": {
|
||||
"normalizer": {
|
||||
"custom_sort_normalizer": {
|
||||
"type": "custom",
|
||||
"char_filter": [],
|
||||
"filter": [
|
||||
"lowercase",
|
||||
"trim",
|
||||
"asciifolding"
|
||||
]
|
||||
"type": "custom",
|
||||
"char_filter": [],
|
||||
"filter": [
|
||||
"lowercase",
|
||||
"trim",
|
||||
"asciifolding"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"types": [
|
||||
{
|
||||
"type": "mandatory",
|
||||
"on_path": "mandatories",
|
||||
"rdf_type": "http://data.vlaanderen.be/ns/mandaat#Mandataris",
|
||||
"sub_types": [
|
||||
"rdf_type": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#Mandataris",
|
||||
"http://data.lblod.info/vocabularies/erediensten/EredienstMandataris"
|
||||
],
|
||||
"properties": {
|
||||
@@ -74,11 +74,11 @@
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://xmlns.com/foaf/0.1/givenName"
|
||||
],
|
||||
"id": [
|
||||
"person_id": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
"uuid": [
|
||||
"person_uuid": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
@@ -153,7 +153,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"person_id": {
|
||||
"type": "text",
|
||||
"fields": {
|
||||
"field": {
|
||||
@@ -236,11 +236,11 @@
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://xmlns.com/foaf/0.1/givenName"
|
||||
],
|
||||
"id": [
|
||||
"person_id": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
"uuid": [
|
||||
"person_uuid": [
|
||||
"http://data.vlaanderen.be/ns/mandaat#isBestuurlijkeAliasVan",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
@@ -315,7 +315,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"person_id": {
|
||||
"type": "text",
|
||||
"fields": {
|
||||
"field": {
|
||||
@@ -392,8 +392,8 @@
|
||||
{
|
||||
"type": "minister",
|
||||
"on_path": "ministers",
|
||||
"rdf_type": "http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
|
||||
"sub_types": [
|
||||
"rdf_type": [
|
||||
"http://data.lblod.info/vocabularies/erediensten/RolBedienaar",
|
||||
"http://data.lblod.info/vocabularies/contacthub/AgentInPositie"
|
||||
],
|
||||
"properties": {
|
||||
@@ -401,11 +401,11 @@
|
||||
"http://www.w3.org/ns/org#heldBy",
|
||||
"http://xmlns.com/foaf/0.1/givenName"
|
||||
],
|
||||
"id": [
|
||||
"person_id": [
|
||||
"http://www.w3.org/ns/org#heldBy",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
"uuid": [
|
||||
"person_uuid": [
|
||||
"http://www.w3.org/ns/org#heldBy",
|
||||
"http://mu.semte.ch/vocabularies/core/uuid"
|
||||
],
|
||||
@@ -470,7 +470,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"person_id": {
|
||||
"type": "text",
|
||||
"fields": {
|
||||
"field": {
|
||||
@@ -562,11 +562,11 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "id",
|
||||
"name": "person_id",
|
||||
"mappings": {
|
||||
"minister": "id",
|
||||
"agent": "id",
|
||||
"mandatory": "id"
|
||||
"minister": "person_id",
|
||||
"agent": "person_id",
|
||||
"mandatory": "person_id"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -661,7 +661,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"id": {
|
||||
"person_id": {
|
||||
"type": "text",
|
||||
"fields": {
|
||||
"field": {
|
||||
@@ -739,8 +739,8 @@
|
||||
{
|
||||
"type": "unit",
|
||||
"on_path": "units",
|
||||
"rdf_type": "http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
|
||||
"sub_types": [
|
||||
"rdf_type": [
|
||||
"http://data.vlaanderen.be/ns/besluit#Bestuurseenheid",
|
||||
"http://data.lblod.info/vocabularies/erediensten/EredienstBestuurseenheid",
|
||||
"http://data.lblod.info/vocabularies/erediensten/CentraalBestuurVanDeEredienst",
|
||||
"http://data.lblod.info/vocabularies/erediensten/BestuurVanDeEredienst"
|
||||
|
||||
@@ -68,4 +68,10 @@ services:
|
||||
file:
|
||||
restart: "no"
|
||||
delta-producer-dump-file-publisher:
|
||||
restart: "no"
|
||||
restart: "no"
|
||||
construct-administrative-unit-relationships:
|
||||
restart: "no"
|
||||
delta-producer-bg-jobs-initiator-worship-posts:
|
||||
restart: "no"
|
||||
delta-producer-pub-graph-maintainer-worship-posts:
|
||||
restart: "no"
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
version: '3.4'
|
||||
version: "3.4"
|
||||
|
||||
x-logging:
|
||||
&default-logging
|
||||
x-logging: &default-logging
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "10m"
|
||||
@@ -11,7 +10,7 @@ services:
|
||||
identifier:
|
||||
image: semtech/mu-identifier:1.9.1
|
||||
environment:
|
||||
DEFAULT_MU_AUTH_ALLOWED_GROUPS_HEADER: "[{\"variables\":[],\"name\":\"public\"}]"
|
||||
DEFAULT_MU_AUTH_ALLOWED_GROUPS_HEADER: '[{"variables":[],"name":"public"}]'
|
||||
SESSION_COOKIE_SECURE: "on"
|
||||
labels:
|
||||
- "logging=true"
|
||||
@@ -36,7 +35,7 @@ services:
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
db:
|
||||
image: cecemel/mu-authorization:0.6.0-beta.8
|
||||
image: semtech/mu-authorization:feature-service-roam-r1
|
||||
environment:
|
||||
MU_SPARQL_ENDPOINT: "http://triplestore:8890/sparql"
|
||||
LOG_OUTGOING_SPARQL_QUERIES: "true"
|
||||
@@ -92,7 +91,7 @@ services:
|
||||
LOGGING_LEVEL: "INFO"
|
||||
SPARQL_ENDPOINT: "http://db:8890/sparql"
|
||||
LIMIT_SIZE: "10000"
|
||||
MU_AUTH_SUDO: "false"
|
||||
MU_AUTH_SUDO: "true"
|
||||
labels:
|
||||
- "logging=true"
|
||||
restart: always
|
||||
@@ -152,13 +151,13 @@ services:
|
||||
links:
|
||||
- db:database
|
||||
adressenregister:
|
||||
image: lblod/adressenregister-fuzzy-search-service:0.6.0
|
||||
image: lblod/adressenregister-fuzzy-search-service:0.6.2
|
||||
labels:
|
||||
- "logging=true"
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
frontend:
|
||||
image: lblod/frontend-organization-portal:1.11.0
|
||||
image: lblod/frontend-organization-portal:1.14.0-0
|
||||
volumes:
|
||||
- ./config/frontend/add-x-frame-options-header.conf:/config/add-x-frame-options.conf
|
||||
environment:
|
||||
@@ -195,34 +194,41 @@ services:
|
||||
- db:database
|
||||
volumes:
|
||||
- ./config/jobs-controller/:/config/
|
||||
################################################################################
|
||||
# DELTA GENERAL
|
||||
################################################################################
|
||||
delta-producer-dump-file-publisher:
|
||||
image: bdevloed/delta-producer-dump-file-publisher:0.8.0-beta
|
||||
volumes:
|
||||
- ./config/delta-producer/dump-file-publisher:/config
|
||||
- ./data/files:/share
|
||||
environment:
|
||||
FILES_GRAPH: 'http://mu.semte.ch/graphs/public' # Note: this will be extracted in a config per job one day
|
||||
DCAT_DATASET_GRAPH: 'http://mu.semte.ch/graphs/public'
|
||||
construct-administrative-unit-relationships:
|
||||
image: lblod/construct-administrative-unit-relationships-service:0.1.0
|
||||
links:
|
||||
- db:database
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
################################################################################
|
||||
# DELTA ADMINISTRATIVE-UNITS: START
|
||||
################################################################################
|
||||
reasoner:
|
||||
image: eyereasoner/reasoning-service:1.0.1
|
||||
volumes:
|
||||
- ./config/reasoner:/config
|
||||
################################################################################
|
||||
# DELTA GENERAL
|
||||
################################################################################
|
||||
delta-producer-dump-file-publisher:
|
||||
image: lblod/delta-producer-dump-file-publisher:0.9.0
|
||||
volumes:
|
||||
- ./config/delta-producer/dump-file-publisher:/config
|
||||
- ./data/files:/share
|
||||
links:
|
||||
- db:database
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
################################################################################
|
||||
# DELTA ADMINISTRATIVE-UNITS: START
|
||||
################################################################################
|
||||
delta-producer-bg-jobs-initiator-administrative-units:
|
||||
image: lblod/delta-producer-background-jobs-initiator:0.3.1
|
||||
environment:
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/administrative-units'
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units'
|
||||
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units'
|
||||
CRON_PATTERN_DUMP_JOB: '0 0 4 * * 6' # weekly on saturday
|
||||
CRON_PATTERN_HEALING_JOB: '0 0 4 * * *' # everyday at 4 AM
|
||||
START_INITIAL_SYNC: 'false' # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/administrative-units"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units"
|
||||
CRON_PATTERN_DUMP_JOB: "0 0 4 * * 6" # weekly on saturday
|
||||
CRON_PATTERN_HEALING_JOB: "0 0 4 * * *" # everyday at 4 AM
|
||||
START_INITIAL_SYNC: "false" # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
@@ -235,12 +241,12 @@ services:
|
||||
MAX_BODY_SIZE: "50mb"
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/administrative-units"
|
||||
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/administrative-units'
|
||||
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units'
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units'
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/administrative-units"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/administrative-units"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/administrative-units"
|
||||
QUEUE_POLL_INTERVAL: 3000
|
||||
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: 'true'
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: "true"
|
||||
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
|
||||
volumes:
|
||||
- ./config/delta-producer/administrative-units:/config
|
||||
@@ -257,7 +263,7 @@ services:
|
||||
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/administrative-units"
|
||||
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/administrative-units"
|
||||
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/administrative-units'
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/administrative-units"
|
||||
DELTA_INTERVAL_MS: 10000
|
||||
PRETTY_PRINT_DIFF_JSON: "true"
|
||||
volumes:
|
||||
@@ -268,22 +274,22 @@ services:
|
||||
- db:database
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
################################################################################
|
||||
# DELTA ADMINISTRATIVE-UNITS: END
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA ORGANIZATIONS: START
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA ADMINISTRATIVE-UNITS: END
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA ORGANIZATIONS: START
|
||||
################################################################################
|
||||
delta-producer-bg-jobs-initiator-organizations:
|
||||
image: lblod/delta-producer-background-jobs-initiator:0.3.1
|
||||
environment:
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/organizations'
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations'
|
||||
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/organizations'
|
||||
CRON_PATTERN_DUMP_JOB: '42 * * * *' # At minute 42 every hour
|
||||
CRON_PATTERN_HEALING_JOB: '0 0 4 * * *' # everyday at 4 AM
|
||||
START_INITIAL_SYNC: 'false' # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/organizations"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/organizations"
|
||||
CRON_PATTERN_DUMP_JOB: "42 * * * *" # At minute 42 every hour
|
||||
CRON_PATTERN_HEALING_JOB: "0 0 4 * * *" # everyday at 4 AM
|
||||
START_INITIAL_SYNC: "false" # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
@@ -296,13 +302,15 @@ services:
|
||||
MAX_BODY_SIZE: "50mb"
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/organizations"
|
||||
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/organizations'
|
||||
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/organizations'
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations'
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/organizations"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/organizations"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/organizations"
|
||||
QUEUE_POLL_INTERVAL: 3000
|
||||
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: 'true'
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: "true"
|
||||
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
|
||||
FILES_GRAPH: "http://redpencil.data.gift/id/deltas/producer/organizations-deltas"
|
||||
ACCOUNT: "http://data.lblod.info/foaf/account/id/8df6f1e4-869f-4223-9834-961b01a7bd48"
|
||||
volumes:
|
||||
- ./config/delta-producer/organizations:/config
|
||||
- ./data/files/:/share
|
||||
@@ -318,7 +326,7 @@ services:
|
||||
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/organizations"
|
||||
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/organizations"
|
||||
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/organizations'
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/organizations"
|
||||
DELTA_INTERVAL_MS: 10000
|
||||
PRETTY_PRINT_DIFF_JSON: "true"
|
||||
volumes:
|
||||
@@ -329,24 +337,23 @@ services:
|
||||
- db:database
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
################################################################################
|
||||
# DELTA ORGANIZATIONS: END
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA ORGANIZATIONS: END
|
||||
################################################################################
|
||||
|
||||
|
||||
################################################################################
|
||||
# DELTA PUBLIC INFORMATION: START
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA PUBLIC INFORMATION: START
|
||||
################################################################################
|
||||
delta-producer-bg-jobs-initiator-public:
|
||||
image: lblod/delta-producer-background-jobs-initiator:0.3.1
|
||||
environment:
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/public'
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public'
|
||||
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/public'
|
||||
CRON_PATTERN_DUMP_JOB: '11 */4 * * *' # At minute 11 every 4 hours
|
||||
CRON_PATTERN_HEALING_JOB: '0 0 4 * * *' # everyday at 4 AM
|
||||
START_INITIAL_SYNC: 'false' # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/public"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/public"
|
||||
CRON_PATTERN_DUMP_JOB: "11 */4 * * *" # At minute 11 every 4 hours
|
||||
CRON_PATTERN_HEALING_JOB: "0 0 4 * * *" # everyday at 4 AM
|
||||
START_INITIAL_SYNC: "false" # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
@@ -359,12 +366,12 @@ services:
|
||||
MAX_BODY_SIZE: "50mb"
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/public"
|
||||
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/public'
|
||||
HEALING_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/public'
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: 'http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public'
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/public"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/public"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/public"
|
||||
QUEUE_POLL_INTERVAL: 3000
|
||||
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: 'true'
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: "true"
|
||||
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
|
||||
volumes:
|
||||
- ./config/delta-producer/public:/config
|
||||
@@ -381,7 +388,7 @@ services:
|
||||
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/public"
|
||||
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/public"
|
||||
PUBLICATION_GRAPH: 'http://redpencil.data.gift/id/deltas/producer/public'
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/public"
|
||||
DELTA_INTERVAL_MS: 10000
|
||||
PRETTY_PRINT_DIFF_JSON: "true"
|
||||
volumes:
|
||||
@@ -392,16 +399,156 @@ services:
|
||||
- db:database
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
################################################################################
|
||||
# DELTA PUBLIC INFORMATION: END
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA PUBLIC INFORMATION: END
|
||||
################################################################################
|
||||
|
||||
################################################################################
|
||||
# DELTA WORSHIP POSTS: START
|
||||
################################################################################
|
||||
delta-producer-bg-jobs-initiator-worship-posts:
|
||||
image: lblod/delta-producer-background-jobs-initiator:0.3.1
|
||||
environment:
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
DUMP_FILE_CREATION_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/deltaDumpFileCreation/worship-posts"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts"
|
||||
CRON_PATTERN_DUMP_JOB: "17 */4 * * *" # At minute 17 every 4 hours
|
||||
CRON_PATTERN_HEALING_JOB: "0 0 3 * * *" # everyday at 3 AM
|
||||
START_INITIAL_SYNC: "false" # prefer to disable it now. We want to have feeling with how the DB acts.
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
- db:database
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
delta-producer-pub-graph-maintainer-worship-posts:
|
||||
image: lblod/delta-producer-publication-graph-maintainer:0.15.1
|
||||
environment:
|
||||
MAX_BODY_SIZE: "50mb"
|
||||
JOBS_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
RELATIVE_FILE_PATH: "deltas/worship-posts"
|
||||
PUBLICATION_GRAPH: "http://redpencil.data.gift/id/deltas/producer/worship-posts"
|
||||
HEALING_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/healingOperation/worship-posts"
|
||||
INITIAL_PUBLICATION_GRAPH_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/initialPublicationGraphSyncing/worship-posts"
|
||||
QUEUE_POLL_INTERVAL: 3000
|
||||
USE_VIRTUOSO_FOR_EXPENSIVE_SELECTS: "true" # some queries are just too expensive
|
||||
SKIP_MU_AUTH_INITIAL_SYNC: "true"
|
||||
HEALING_PATCH_GRAPH_BATCH_SIZE: 500
|
||||
SERVE_DELTA_FILES: "true"
|
||||
PUBLISHER_URI: "http://data.lblod.info/services/delta-production-json-diff-file-manager/worship-posts"
|
||||
DELTA_INTERVAL_MS: 10000
|
||||
PRETTY_PRINT_DIFF_JSON: "true"
|
||||
ERROR_GRAPH: "http://mu.semte.ch/graphs/organisatieportaal"
|
||||
volumes:
|
||||
- ./config/delta-producer/worship-posts:/config
|
||||
- ./data/files/:/share
|
||||
links:
|
||||
- db:database
|
||||
- triplestore:virtuoso
|
||||
restart: always
|
||||
logging: *default-logging
|
||||
################################################################################
|
||||
# DELTA WORSHIP POSTS: END
|
||||
################################################################################
|
||||
|
||||
################################################################################
|
||||
# MU SEARCH - TODO USE THE CORRECT IMAGE ONCE INHERITANCE IS IN MU SEARCH
|
||||
################################################################################
|
||||
################################################################################
|
||||
# DELTA CONSUMERS
|
||||
################################################################################
|
||||
################################################################################
|
||||
# LOKET MANDATEN CONSUMERS
|
||||
################################################################################
|
||||
mandaten-consumer:
|
||||
image: lblod/delta-consumer:0.0.14
|
||||
environment:
|
||||
DCR_SERVICE_NAME: "mandatendatabank-consumer"
|
||||
DCR_SYNC_BASE_URL: "https://loket.lblod.info" # replace with link to Loket API
|
||||
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/MandatarissenCacheGraphDump"
|
||||
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/initialSync/mandatarissen"
|
||||
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/deltaSync/mandatarissen"
|
||||
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/mandatendatabank-consumer"
|
||||
DCR_DISABLE_INITIAL_SYNC: "true"
|
||||
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "true"
|
||||
DCR_SYNC_FILES_PATH: "/sync/mandatarissen/files"
|
||||
FILE_SYNC_GRAPH: "http://mu.semte.ch/graphs/temp/original-physical-files-data"
|
||||
KEEP_DELTA_FILES: "true"
|
||||
volumes:
|
||||
- ./config/loket-consumer/mandate-dispatching:/config/triples-dispatching/custom-dispatching
|
||||
- ./data/files/consumer-files/mandaten:/consumer-files/
|
||||
restart: always
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
- db:database
|
||||
- triplestore:virtuoso
|
||||
logging: *default-logging
|
||||
|
||||
################################################################################
|
||||
# LOKET LEIDINGGEVENDEN CONSUMERS
|
||||
################################################################################
|
||||
leidinggevenden-consumer:
|
||||
image: lblod/delta-consumer:0.0.14
|
||||
environment:
|
||||
DCR_SERVICE_NAME: "leidinggevenden-consumer"
|
||||
DCR_SYNC_BASE_URL: "https://loket.lblod.info" # replace with link to Loket API
|
||||
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/LeidinggevendenCacheGraphDump"
|
||||
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/initialSync/leidinggevenden"
|
||||
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/deltaSync/leidinggevenden"
|
||||
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/leidinggevenden-consumer"
|
||||
DCR_DISABLE_INITIAL_SYNC: "true"
|
||||
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "true"
|
||||
DCR_SYNC_FILES_PATH: "/sync/leidinggevenden/files"
|
||||
FILE_SYNC_GRAPH: "http://mu.semte.ch/graphs/temp/original-physical-files-data"
|
||||
KEEP_DELTA_FILES: "true"
|
||||
volumes:
|
||||
- ./config/loket-consumer/leidinggevenden-dispatching:/config/triples-dispatching/custom-dispatching
|
||||
- ./data/files/consumer-files/leidinggevenden:/consumer-files/
|
||||
restart: always
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
- db:database
|
||||
- triplestore:virtuoso
|
||||
logging: *default-logging
|
||||
|
||||
################################################################################
|
||||
# LOKET WORSHIP SENSITIVE CONSUMERS
|
||||
################################################################################
|
||||
worship-services-sensitive-consumer:
|
||||
image: lblod/delta-consumer:0.0.14
|
||||
environment:
|
||||
DCR_SYNC_BASE_URL: "https://loket.lblod.info/"
|
||||
DCR_SERVICE_NAME: "worship-services-sensitive-consumer"
|
||||
DCR_SYNC_FILES_PATH: "/sync/worship-services-sensitive/files"
|
||||
DCR_SYNC_DATASET_SUBJECT: "http://data.lblod.info/datasets/delta-producer/dumps/WorshipServicesSensitiveCacheGraphDump"
|
||||
DCR_INITIAL_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/wsSensitive"
|
||||
DCR_DELTA_SYNC_JOB_OPERATION: "http://redpencil.data.gift/id/jobs/concept/JobOperation/deltas/consumer/wsSensitiveDeltaFileSyncing"
|
||||
DCR_JOB_CREATOR_URI: "http://data.lblod.info/services/id/worship-services-sensitive-consumer"
|
||||
DCR_DISABLE_INITIAL_SYNC: "true"
|
||||
FILE_SYNC_GRAPH: "http://mu.semte.ch/graphs/temp/original-physical-files-data"
|
||||
DCR_KEEP_DELTA_FILES: "true"
|
||||
DCR_DELTA_FILE_FOLDER: "/consumer-files"
|
||||
BYPASS_MU_AUTH_FOR_EXPENSIVE_QUERIES: "false"
|
||||
volumes:
|
||||
- ./config/loket-consumer/positions-dispatching:/config/triples-dispatching/custom-dispatching
|
||||
- ./data/files/consumer-files/worship-services-sensitive:/consumer-files/
|
||||
restart: always
|
||||
labels:
|
||||
- "logging=true"
|
||||
links:
|
||||
- db:database
|
||||
- triplestore:virtuoso
|
||||
logging: *default-logging
|
||||
|
||||
################################################################################
|
||||
# DELTA CONSUMERS: END
|
||||
################################################################################
|
||||
|
||||
################################################################################
|
||||
# MU SEARCH
|
||||
################################################################################
|
||||
search:
|
||||
image: nbittich/mu-search:wip-inheritance-alpha2 # Bump to fixed version when merged and release to the original repo
|
||||
image: semtech/mu-search:0.9.0-beta.1
|
||||
links:
|
||||
- db:database
|
||||
restart: always
|
||||
@@ -412,7 +559,7 @@ services:
|
||||
volumes:
|
||||
- ./data/elasticsearch/:/usr/share/elasticsearch/data
|
||||
environment:
|
||||
- discovery.type=single-node
|
||||
- discovery.type=single-node
|
||||
restart: always
|
||||
|
||||
error-report-service:
|
||||
|
||||
Reference in New Issue
Block a user