У меня есть запрос SPARQL, в котором я хочу выбрать все реки, которые не протекают через штаты Миссисипи или Нью-Йорк.Первый работает нормально, а второй выбирает все реки.Может кто-нибудь объяснить, почему
запрос 1
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?y ?k
WHERE
{
?y owl:flow_through ?k
MINUS
{
{?y owl:flow_through <file://c/fakepath/geo.owl#Newyork_state>}
UNION
{?y owl:flow_through <file://c/fakepath/geo.owl#Mississippi_state>}
}
запрос 2
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?y ?k
WHERE
{
?y owl:flow_through ?k
MINUS
{
FILTER (?k IN (<file://c/fakepath/geo.owl#Newyork_state>,
<file://c/fakepath/geo.owl#Alaska_state>))
}
}