diff --git a/config/migrations/2023/20230503143253-organen-start-and-end-should-be-datetimes-part-one.sparql b/config/migrations/2023/20230503143253-organen-start-and-end-should-be-datetimes-part-one.sparql new file mode 100644 index 0000000..04475f9 --- /dev/null +++ b/config/migrations/2023/20230503143253-organen-start-and-end-should-be-datetimes-part-one.sparql @@ -0,0 +1,58 @@ +PREFIX mandaat: +PREFIX ere: +PREFIX besluit: +PREFIX generiek: + +DELETE { + GRAPH ?g { + ?orgaanInTime mandaat:bindingEinde ?end . + } +} INSERT { + GRAPH ?g { + ?orgaanInTime mandaat:bindingEinde ?endDateTime . + } +} WHERE { + VALUES ?g { + + + } + GRAPH ?g { + ?bestuurseenheid a ?type . + + ?bestuursorgaan besluit:bestuurt ?bestuurseenheid . + + ?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan . + + ?orgaanInTime mandaat:bindingEinde ?end . + FILTER (datatype(?end) = xsd:date) + BIND(strdt(concat(str(?end), 'T01:00:00'), xsd:dateTime) as ?endDateTime) + } +} + +; + +DELETE { + GRAPH ?g { + ?orgaanInTime mandaat:bindingStart ?start . + } +} INSERT { + GRAPH ?g { + ?orgaanInTime mandaat:bindingStart ?startDateTime . + } +} WHERE { + VALUES ?g { + + + } + 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) + } +} diff --git a/config/migrations/2023/20230503143421-organen-start-and-end-should-be-datetimes-part-two.sparql b/config/migrations/2023/20230503143421-organen-start-and-end-should-be-datetimes-part-two.sparql new file mode 100644 index 0000000..5a361ba --- /dev/null +++ b/config/migrations/2023/20230503143421-organen-start-and-end-should-be-datetimes-part-two.sparql @@ -0,0 +1,60 @@ +PREFIX mandaat: +PREFIX ere: +PREFIX besluit: +PREFIX generiek: + +DELETE { + GRAPH ?g { + ?orgaanInTime mandaat:bindingEinde ?end . + } +} INSERT { + GRAPH ?g { + ?orgaanInTime mandaat:bindingEinde ?endDateTime . + } +} WHERE { + VALUES ?g { + + + } + GRAPH ?g { + ?bestuurseenheid a ?type . + + ?bestuursorgaan besluit:bestuurt ?bestuurseenheid . + + ?orgaanInTime generiek:isTijdspecialisatieVan ?bestuursorgaan . + + ?orgaanInTime mandaat:bindingEinde ?end . + + FILTER (HOURS(?end) = 1) + BIND(strdt(concat(xsd:date(?end), 'T00:00:00'), xsd:dateTime) as ?endDateTime) + } +} + +; + +DELETE { + GRAPH ?g { + ?orgaanInTime mandaat:bindingStart ?start . + } +} INSERT { + GRAPH ?g { + ?orgaanInTime mandaat:bindingStart ?startDateTime . + } +} WHERE { + VALUES ?g { + + + } + 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) + } +} diff --git a/config/resources/domain.json b/config/resources/domain.json index 4eba5e7..b1897c7 100644 --- a/config/resources/domain.json +++ b/config/resources/domain.json @@ -578,11 +578,11 @@ "class": "besluit:Bestuursorgaan", "attributes": { "start-date": { - "type": "date", + "type": "datetime", "predicate": "mandaat:bindingStart" }, "end-date": { - "type": "date", + "type": "datetime", "predicate": "mandaat:bindingEinde" } },