计入SPARQL

ip.*_*ip. 10 rdf sparql dbpedia semantics

好的,所以我有这个查询

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 

SELECT DISTINCT (COUNT(?instance) AS ?count) WHERE {
?instance a <http://dbpedia.org/ontology/Ambassador> . 
}
Run Code Online (Sandbox Code Playgroud)

结果是286.很酷.现在我想获得拥有http://dbpedia.org/property/name属性的大使数量.但

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 

SELECT DISTINCT (COUNT(?instance) AS ?count) WHERE {
?instance a <http://dbpedia.org/ontology/Ambassador> . 
?instance <http://dbpedia.org/property/name> ?name
}
Run Code Online (Sandbox Code Playgroud)

结果在533 :(.所以它的数量更多是因为有人有这个属性一次或多次.但是我怎么得到拥有这个属性的大使的数量,无论他们有多少次.你能做到这一点吗?在一个查询?

谢谢.

Jon*_*han 14

你可能想试试这个:

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 

SELECT (COUNT(DISTINCT ?instance) AS ?count) WHERE {
?instance a <http://dbpedia.org/ontology/Ambassador>; 
          <http://dbpedia.org/property/name> ?name
}
Run Code Online (Sandbox Code Playgroud)

它给了我283的结果,这可能是也可能不对:).

  • 请注意,这是使用SPARQL 1.1功能:COUNT() - 聚合 - 以及SELECT中的变量. (2认同)