如何从 DBPedia 中检索不同语言版本的人名?
How to retrieve person names from DBPedia in different language versions?
我目前正在使用 R 中的 SPARQL 包查询 DBPedia 以获取人名列表。我注意到当我使用 SPARQL 查询 English DBPedia 时,如下所示:
endpoint = "http://live.dbpedia.org/sparql"
query= "SELECT *{
dbpedia:Veit_Dietrich ?p ?o
}"
qd=SPARQL(endpoint,query)
df=qd$results
一切正常,但如果我想查询 German DBPedia 并更改 endpoint,结果出错了:
endpoint = "http://de.dbpedia.org/sparql"
query= "SELECT *{
dbpedia:Veit_Dietrich ?p ?o
}"
qd=SPARQL(endpoint,query)
df=qd$results
我认为问题可能与"dbpedia:Veit_Dietrich"有关,但我不知道如何修改它。
不同语言的dbpeida的namespaces是不一样的。因此你需要改变你的命名空间:
SELECT *{
dbpedia-de:Veit_Dietrich ?p ?o
}
似乎是命名空间问题。在德语 DBpedia 端点中,您必须使用命名空间 http://de.dbpedia.org/resource/ . And it seems that the prefix dbpedia ist still reserved for the common http://dbpedia.org/resource/ namespace.
尝试
select * where {<http://de.dbpedia.org/resource/Veit_Dietrich> ?p ?o}
我目前正在使用 R 中的 SPARQL 包查询 DBPedia 以获取人名列表。我注意到当我使用 SPARQL 查询 English DBPedia 时,如下所示:
endpoint = "http://live.dbpedia.org/sparql"
query= "SELECT *{
dbpedia:Veit_Dietrich ?p ?o
}"
qd=SPARQL(endpoint,query)
df=qd$results
一切正常,但如果我想查询 German DBPedia 并更改 endpoint,结果出错了:
endpoint = "http://de.dbpedia.org/sparql"
query= "SELECT *{
dbpedia:Veit_Dietrich ?p ?o
}"
qd=SPARQL(endpoint,query)
df=qd$results
我认为问题可能与"dbpedia:Veit_Dietrich"有关,但我不知道如何修改它。
不同语言的dbpeida的namespaces是不一样的。因此你需要改变你的命名空间:
SELECT *{
dbpedia-de:Veit_Dietrich ?p ?o
}
似乎是命名空间问题。在德语 DBpedia 端点中,您必须使用命名空间 http://de.dbpedia.org/resource/ . And it seems that the prefix dbpedia ist still reserved for the common http://dbpedia.org/resource/ namespace.
尝试
select * where {<http://de.dbpedia.org/resource/Veit_Dietrich> ?p ?o}