Я сделал один запрос, который возвращает дату бомбардировки Хиросимы.
SELECT ?date
WHERE {
history:the_bombing_of_hiroshima history:hasStartDate ?date .
}
Результат: 1945-08-06T:00:00:00
И еще один запрос, который возвращает всю администрацию, которая управлялаСоветский Союз.
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
}
Теперь мне интересно.Администрация в нашей онтологии имеет свойство данных startDate и endDate.Оба содержат xsd:dateTime
значений.Я хочу передать дату, полученную из первого запроса, во второй запрос, чтобы мы могли получить администрацию, которая управляла Советским Союзом во время бомбардировки Хиросимы.
Я пытался прочитать некоторые примеры подзапросов SPARQLно ни один из них не относится к фильтрации dateTime (проверьте, попадает ли дата между двумя другими), и многие из них меня немного смущают.
Я подозреваю, что запрос должен выглядеть примерно так:
SELECT ?administration
WHERE {
?administration history:rulesCountry "The Soviet Union"^^xsd:string .
?administration history:hasStartDate > [RESULT FROM QUERY1 HERE] && history:hasEndDate < [RESULT FROM QUERY1 HERE]
}
Буду очень признателен за любые ответы или ссылки на ресурсы и учебные пособия, которые я смогу прочитать, чтобы этот запрос работал.