Sparql 为什么查询子类的所有实例比查询;“家长”;上课?
根据维基数据,战斗是军事行动的一个子类。然而,当我查询所有军事行动的实例时,我得到699个结果,而对于所有战斗,我得到7399个结果 军事行动查询Sparql 为什么查询子类的所有实例比查询;“家长”;上课?,sparql,wikidata,Sparql,Wikidata,根据维基数据,战斗是军事行动的一个子类。然而,当我查询所有军事行动的实例时,我得到699个结果,而对于所有战斗,我得到7399个结果 军事行动查询 SELECT ?label WHERE { ?subj wdt:P31* wd:Q645883. ?subj rdfs:label ?label. FILTER((LANG(?label)) = "en") } 对战斗的质疑 SELECT ?label WHERE { ?subj wdt:P31* wd:Q178561. ?su
SELECT ?label WHERE {
?subj wdt:P31* wd:Q645883.
?subj rdfs:label ?label.
FILTER((LANG(?label)) = "en")
}
对战斗的质疑
SELECT ?label WHERE {
?subj wdt:P31* wd:Q178561.
?subj rdfs:label ?label.
FILTER((LANG(?label)) = "en")
}
军事行动:
战斗:因为您的SPARQL查询,特别是属性路径,是错误的。 类型通过子类(
wdt:P279
)连接,但在使用wdt:P31*
它必须是wdt:P31/wdt:P279*
请参见和以了解差异。谢谢!所以基本上,我对军事行动的查询只返回那些不属于子类的军事行动,所以也属于子类battle的条目不会被返回。这是正确的吗?