SPARQL DbPedia foaf:name

SPARQL DbPedia foaf:name

正在尝试执行一些查询,但在搜索时 foaf:name 结果集为空。这是我的代码:

SELECT DISTINCT ?uri ?string 
WHERE {
    ?uri rdf:type ?x.       
        ?uri foaf:name 'Cavallo domestico'@it   .
        OPTIONAL { ?uri rdfs:label ?string . FILTER (lang(?string) = 'it') }
}

页面存在 http://it.dbpedia.org/resource/Equus_caballus/html

显然它与英语以外的语言无关,但与 foaf:name 请求无关。如果我执行以下操作,检索通用 foaf:givenName,它会起作用:

SELECT DISTINCT ?uri ?string 
WHERE {
    ?uri rdf:type ?x.       
        ?uri foaf:givenName 'Jimmy'@en   .
        OPTIONAL { ?uri rdfs:label ?string . FILTER (lang(?string) = 'en') }
}

当我第一次提到它不起作用时,我认为它不起作用 in a comment, but, as AKSW points out,现在似乎起作用了。 rdfs:label 属性 有各种语言的文章标题,而不是 foaf:name,所以你可以这样做来获取马的类型:

select ?x ?type {
  ?x a ?type ;
     rdfs:label "Equus caballus"@it
}

SPARQL results