diff --git a/config/reasoner/dl2op/main-info/mapping.n3 b/config/reasoner/dl2op/main-info/mapping.n3 index 088e0bf..36c4585 100644 --- a/config/reasoner/dl2op/main-info/mapping.n3 +++ b/config/reasoner/dl2op/main-info/mapping.n3 @@ -67,6 +67,35 @@ PREFIX ere: ?s persoon:gebruikteVoornaam ?o }. + +# Test +# ex:s "2019-02-01T10:32:52+00:00"^^xsd:dateTime. +{ + ?s mandaat:bindingeinde ?eindeDate. + # use backward arrow rule defined below + ?eindeDate :dateTimeFromDate ?eindeDateTime. + { + ?s mandaat:bindingeinde ?eindeDate + } e:becomes { + ?s mandaat:bindingeinde ?eindeDateTime + }. +} => { + ?s mandaat:bindingeinde ?eindeDateTime +}. + + +{ + ?s mandaat:bindingstart ?startDate. + # use backward arrow rule defined below + ?startDate :dateTimeFromDate ?startDateTime. + { + ?s mandaat:bindingstart ?startDate + } e:becomes { + ?s mandaat:bindingstart ?startDateTime + }. +} => { + ?s mandaat:bindingstart ?startDateTime +}. { ?s ch:startdatum ?startDate. # use backward arrow rule defined below @@ -119,17 +148,7 @@ PREFIX ere: { ?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. - (?dateLiteral xsd:date) log:dtlit ?date. -}. - -#backwards arrow rule for converting date to datetime -{ - ?date :dateTimeFromDate ?dateTime -} <= { - ?date string:notMatches """^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2}).*""" . + ?date string:notMatches """^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2}).*""" . (?date "T00:00:00") string:concatenation ?datePlusTime. (?datePlusTime xsd:dateTime) log:dtlit ?dateTime }. diff --git a/config/reasoner/dl2op/main/mapping.n3 b/config/reasoner/dl2op/main/mapping.n3 index 89ca847..310f9c1 100644 --- a/config/reasoner/dl2op/main/mapping.n3 +++ b/config/reasoner/dl2op/main/mapping.n3 @@ -68,6 +68,32 @@ PREFIX lblodlg: # Test # ex:s "2019-02-01T10:32:52+00:00"^^xsd:dateTime. +{ + ?s mandaat:bindingeinde ?eindeDate. + # use backward arrow rule defined below + ?eindeDate :dateTimeFromDate ?eindeDateTime. + { + ?s mandaat:bindingeinde ?eindeDate + } e:becomes { + ?s mandaat:bindingeinde ?eindeDateTime + }. +} => { + ?s mandaat:bindingeinde ?eindeDateTime +}. + + +{ + ?s mandaat:bindingstart ?startDate. + # use backward arrow rule defined below + ?startDate :dateTimeFromDate ?startDateTime. + { + ?s mandaat:bindingstart ?startDate + } e:becomes { + ?s mandaat:bindingstart ?startDateTime + }. +} => { + ?s mandaat:bindingstart ?startDateTime +}. { ?s ch:startdatum ?startDate. @@ -107,25 +133,13 @@ PREFIX lblodlg: # 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. -}. - -#backwards arrow rule for converting date to datetime -{ - ?date :dateTimeFromDate ?dateTime + ?dateTime :dateTimeFromDate ?date } <= { ?date string:notMatches """^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2}).*""" . (?date "T00:00:00") string:concatenation ?datePlusTime. (?datePlusTime xsd:dateTime) log:dtlit ?dateTime }. - # ex:orgA besluit:classificatie . { {