如果wikipageID不是英文的,使用sparql和dbpedi如何检索wikipageID

2024-06-01 18:57:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我想检索不同语言中相同查询名称的wikipageID。例如:

select * where { <http://dbpedia.org/resource/Mike_Quigley_(footballer)> dbpedia-owl:wikiPageID ?wikiID }
====>Mike_Quigley_(footballer)   17237449   en
select * where { <http://dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts   6831454   en
select * where { <http://de.dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts      de
select * where { <http://fr.dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts      fr
select * where { <http://it.dbpedia.org/resource/Theodore_Roberts> dbpedia-owl:wikiPageID ?wikiID }
====>Theodore_Roberts      it
select * where { <http://ja.dbpedia.org/resource/セオドア・ロバーツ> dbpedia-owl:wikiPageID ?wikiID }
====>セオドア・ロバーツ      ja

在第一个英文查询Mike_Quigley_(footballer)中,我能够检索到它的ID = 17237449,但是当语言如您所见发生变化时,我无法检索wikipageid。在


  • 如何检索这些页面的ID
  • 更复杂的部分是下面的链接German language Theodore_Roberts将引导我进入一个页面,其中wikipageID属性不是dbpedia owl它变得非常复杂。 你知道怎么解决这个问题吗?在

太棒了,当我尝试这个查询时

^{pr2}$

我得到以下结果:

http://dbpedia.org/resource/Lyon 863863


但是当我将uri改为<it.dbpedia.org/resource/Lyon>时,我什么也没有得到。在


Tags: orghttpitwhereselectowlresourcedbpedia
1条回答
网友
1楼 · 发布于 2024-06-01 18:57:00

所以如果我正确理解你想要得到你的URI的意大利语版本。但是问题是你找错了URI。英语DBpedia中的里昂URI的意大利语版本是^{cd1>},我假设您正在使用它。我发现这个是:

SELECT * 
 WHERE {
     ?uri owl:sameAs ?b.
     FILTER (?uri = <http://dbpedia.org/resource/Lyon>) 
 }

我也无法从英语数据库里拿到意大利的网页ID。 当我在Italian DBpedia上尝试时,它起到了作用:

^{pr2}$

但是,如果您查看意大利语页^{cd2>},您可以看到它具有一个属性^{cd3>},该属性等于^{{cd1>}猫头鹰:萨梅斯给你。也许你可以努力克服这一点。

相关问题 更多 >