SPARQL удаляет тройки, если существует другое направление - PullRequest
0 голосов
/ 07 мая 2019

Я хочу сделать обновление для следующего: Удалить тройку (o,p,s), если существует другое направление (s,p,o).Мой запрос выглядит следующим образом:

DELETE {?s ?p ?o} where {
?s <http://n1> ?o .
FILTER (EXISTS {?o <http://n1> ?s } && (str(?s) > str(?o) ))  
}

Моя модель выглядит следующим образом:

<http://0> <http://n1> <http://1> .
<http://1> <http://n1> <http://0> .

Мое намерение состоит в том, чтобы удалить только одну из двух тройок (не важно, какая из них).Но обновление удаляет обе тройки.Как я могу это изменить?

...