相关疑难解决方法(0)

设置SPARQL的差异

在一些FILTER我最终得到2套之后,让我们说A1和A2,我想SELECT只在A1中那些没有出现在A2中的元素.我试图使用MINUS但没有成功.

当我们有类似的东西:

MINUS { ?s foaf:givenName "Bob" }
Run Code Online (Sandbox Code Playgroud)

我们需要事先知道我们想要减去什么.在我的情况下,我不知道任何属性如`foaf:givenName1,除了它们属于集合A2.(这是一个财产思想).

我很迷惑.有任何想法吗?

使用CLARITY示例编辑:

SELECT DISTINCT ?x ?y WHERE { 

?x swrc:listAuthor ?y.
?x swrc:author ?w.
FILTER (!regex(?y, " and ")).
?a swrc:listAuthor ?b.
?a swrc:author ?c.
FILTER regex(?b, " and ").
FILTER(?c != ?w).}
Run Code Online (Sandbox Code Playgroud)

所以我想对此做的是以下内容.使用listAuthor,我可以在"John Doe和John Nipper"这样的字符串中获取作者.利用这种格式,我希望让作者单独写一篇论文(在他们的作者列表中没有"和").前3行足够了.但也有一些作者撰写了2篇论文,其中1篇是论文,1篇是共同作者.我尝试以某种方式从第一个中减去它们.有任何想法吗?

sparql

2
推荐指数
1
解决办法
980
查看次数

标签 统计

sparql ×1