У меня есть тройки, организованные следующим образом.
<nc:person1> <nc:hasDate> "201701"
<nc:person2> <nc:hasDate> "201703"
<nc:person3> <nc:hasDate> "201705"
<nc:person4> <nc:hasDate> "201706"
<nc:person5> <nc:hasDate> "201606"
Здесь объектная часть тройки содержит информацию о дате в строковом формате. Первые четыре цифры даты представляют год, а последние две цифры представляют месяц. Например, в «201701» 2017 — это год, а 01 — январь месяц.
Мне нужно написать запрос SPARQL, чтобы найти все даты, которые находятся в диапазоне от марта 2017 года до июня 2017 года. Мой результат должен выглядеть следующим образом.
"201703"
"201705"
"201706"
Я думаю, мне нужно написать запрос SPARQL следующим образом:
SELECT ?date WHERE{
?person nc:hasdate ?date.FILTER(?)
}
Я не уверен, какое условие фильтра мне нужно написать. Не могли бы вы сообщить мне, как проанализировать строку как дату и найти диапазон дат? Заранее спасибо.
FILTER(?date >= "201703" && ?date <= "201706")
- person UninformedUser   schedule 19.11.2017