Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SPARQL:查询以获取共享到第三个类的相同连接的两个类的所有实例_Sparql_Ontology - Fatal编程技术网

SPARQL:查询以获取共享到第三个类的相同连接的两个类的所有实例

SPARQL:查询以获取共享到第三个类的相同连接的两个类的所有实例,sparql,ontology,Sparql,Ontology,我试图了解SPARQL的功能,我想知道这种查询是否可行: (对不起,我还不能发布照片) 我想得到所有与B类实例有连接的A类和B类实例。因此某种: Select ?a, ?c Where { ?a myOntology:ab ?c . ?c myOntology:cb ?B . } 这将给我: A:1 C:1 A:2 C:1 (with B:2) A:2 C:1 (with B:3) (其中字母是类,数字是实例,从顶部开始计算) 但不同的是,我只想要那些与B完全相同的相关实例: A:2 C

我试图了解SPARQL的功能,我想知道这种查询是否可行:

(对不起,我还不能发布照片)

我想得到所有与B类实例有连接的A类和B类实例。因此某种:

Select ?a, ?c
Where
{
 ?a myOntology:ab ?c .
 ?c myOntology:cb ?B .
}
这将给我:

A:1 C:1
A:2 C:1 (with B:2)
A:2 C:1 (with B:3)
(其中字母是类,数字是实例,从顶部开始计算)

但不同的是,我只想要那些与B完全相同的相关实例:

A:2 C:1 (with B:2 and B:3)
这是可能的,还是我必须使用外部逻辑才能做到


如果有任何答案,我都会很高兴…

是的,你可以!如果可以使用,则不存在

SPARQL和SQL一样,没有通用量词,但可以使用嵌套的not EXISTS-s

在伪SPARQL中,您的查询是“给我所有对(a,c),这样a-b-c,这样就没有其他bb,这样a-bb而不是bb-c,反之亦然:bb-c而不是a-bb”:

前缀:
选择a、b、c
哪里
{?a:ab?b。
b:bc?c。
筛选器不存在
{?a:ab?bb。
筛选器不存在
{?bb:bc?c.}
}
##台钳诗:
筛选器不存在
{?bb:bc?c。
筛选器不存在
{?a:ab?bb.}
}
}
运行它

@prefix : <http://test/> .
:a1 :ab :b1 .
:a1 :ab :b2 .
:a2 :ab :b2 .
:a2 :ab :b3 .
:b2 :bc :c1 .
:b3 :bc :c1 .
@前缀:。
:a1:ab:b1。
:a1:ab:b2。
:a2:ab:b2。
:a2:ab:b3。
:b2:bc:c1。
:b3:bc:c1。
给予

----------------------------------------------------------
|a | b | c|
==========================================================
|  |  |  |
|  |  |  |
----------------------------------------------------------
@prefix : <http://test/> .
:a1 :ab :b1 .
:a1 :ab :b2 .
:a2 :ab :b2 .
:a2 :ab :b3 .
:b2 :bc :c1 .
:b3 :bc :c1 .
----------------------------------------------------------
| a                | b                | c                |
==========================================================
| <http://test/a2> | <http://test/b3> | <http://test/c1> |
| <http://test/a2> | <http://test/b2> | <http://test/c1> |
----------------------------------------------------------