我正在尝试将 DBpedia 的 Ontology Infoxbox 属性http://downloads.dbpedia.org/3.8/en/mappingbased_properties_en.ttl.bz2、http://wiki.dbpedia.org/Downloads38#h227-1加载到正在运行的 Fuseki 服务器中在我的机器上。
为此,我做了以下
使用以下命令创建 tdb
java tdb.tdbloader --loc=dbpedia mappingbased_properties_en.ttl
使用以下命令运行服务器
.\fuseki-server.bat --loc=../dbpedia /dbpedia
尝试一个简单的查询,例如
PREFIX dbpedia: <http://dbpedia.org/resource/>
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
select ?s ?p ?o
where
{?s ?p ?o.}
LIMIT 100
效果很好,给出的结果像
| dbpedia:Animal_Farm | foaf:name | "Animal Farm"@en
| dbpedia:Animal_Farm | foaf:name | "Animal Farm: A Fairy Story"@en
| dbpedia:Animal_Farm | dbpedia-owl:author | dbpedia:George_Orwell
当我指定谓词时会出现问题
select ?s ?o
where
{?s foaf:name ?o.}
LIMIT 100
或对象
select ?s ?p
where
{?s ?p dbpedia:George_Orwell.}
LIMIT 100
我得到空结果的地方。
但是,指定主题是有效的
select ?p ?o
where
{dbpedia:Animal ?p ?o.}
LIMIT 100
为什么指定谓词或对象不起作用的任何想法?
注意:确切的查询在 DBpedia 上工作得很好。因此,我怀疑 Fuseki,但我无法确定它不起作用的原因