Фильтр в запросе SPARQL не работает при использовании с MINUS - PullRequest
0 голосов
/ 26 октября 2018

У меня есть запрос 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>))  
  }
}
...