Dataset SPARQL具有空节点的多数据集

Dataset SPARQL具有空节点的多数据集,dataset,sparql,blank-nodes,Dataset,Sparql,Blank Nodes,我最近一直在学习sparql,并对空白节点感到困惑。是否可以使用空白节点链接来自多个数据集的数据?还是只用于一个数据集?那么这个空白节点的具体用途是什么 PREFIX dbo: <http://dbpedia.org/ontology/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX foaf: <http://xmlns.com/foaf/0-1/> SELECT

我最近一直在学习sparql,并对空白节点感到困惑。是否可以使用空白节点链接来自多个数据集的数据?还是只用于一个数据集?那么这个空白节点的具体用途是什么

PREFIX dbo: <http://dbpedia.org/ontology/>    
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX foaf: <http://xmlns.com/foaf/0-1/>


SELECT DISTINCT ?class
WHERE {[] a ?class}
前缀dbo:
前缀rdf:
前缀foaf:
选择不同的?类
其中{[]a?类}

上面的查询是否已经使用了不同的数据集或多个数据集?

空白节点基本上是代词

当你知道一个实体存在,你可以说一些关于它的事情,但是你不知道它的绝对标识符,它的URI,它的名字,所以你可以用代词来引用它

在您的示例查询中,您并没有真正使用空白节点,因为
[]
只是取代了公共
?s
或任何其他变量。此处是空白节点的更好示例--

我们对这个“东西”一无所知,所以我们间接地提到它


增加--

还要注意的是,在查询中,
前缀
声明是毫无意义的,因为声明的前缀在查询中的任何位置都不会出现。它们不会导致包含列出的数据集(因为在这种情况下,它们不是数据集列表;它们只是语法上的糖,使查询中的其他URI更容易作为前缀URI编写,如
foaf:Person
,而不是完全限定的URI,如
),也不会排除其他URI

(切向——您的
foaf:
前缀不正确,因为它有一个连字符,“
-
”,其中应该有一个点,“
”)

此查询与您的相同--


空白节点基本上是代词

当你知道一个实体存在,你可以说一些关于它的事情,但是你不知道它的绝对标识符,它的URI,它的名字,所以你可以用代词来引用它

在您的示例查询中,您并没有真正使用空白节点,因为
[]
只是取代了公共
?s
或任何其他变量。此处是空白节点的更好示例--

我们对这个“东西”一无所知,所以我们间接地提到它


增加--

还要注意的是,在查询中,
前缀
声明是毫无意义的,因为声明的前缀在查询中的任何位置都不会出现。它们不会导致包含列出的数据集(因为在这种情况下,它们不是数据集列表;它们只是语法上的糖,使查询中的其他URI更容易作为前缀URI编写,如
foaf:Person
,而不是完全限定的URI,如
),也不会排除其他URI

(切向——您的
foaf:
前缀不正确,因为它有一个连字符,“
-
”,其中应该有一个点,“
”)

此查询与您的相同--


是的,可以使用。为什么不呢?具体用法?匿名实体?N元关系?另请参见“空白节点”标记信息:在SPARQL中,语法空白节点是变量。感谢您提供的信息@AndySYes,可以使用。为什么不呢?具体用法?匿名实体?N元关系?另请参见“blank nodes”标记信息:在SPARQL中,语法空白节点是变量。谢谢您提供的信息@AndyS@SintaAnjelina-请,如果满意。@SintaAnjelina-请,如果满意。
:Fred :hasThing [ :hasColor :Blue ]
SELECT DISTINCT ?class
WHERE { ?s a ?class }