为什么DBpedia对同一属性使用多个词汇表? 我必须得到所有可能电影的数据。 对于每部电影,我观察到它有生成器,导演等的dbpedia-owl和dbpprop词汇表。我使用以下查询检索属性:
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?star_name
WHERE {
<http://dbpedia.org/resource/Goal_III:_Taking_on_the_World> dbpedia-owl:starring ?star.
?star foaf:name ?star_name
}
我将获得每部电影的页面ID,然后我将检索星星和制作人。对于一些我认为 dbpedia-owl适用于某些dbpprop工作。
我很困惑。我必须用Python编写代码来为每部电影运行此查询。因此,每次我必须检查结果是否为null,然后运行其他词汇表的代码。
答案 0 :(得分:1)
DBPedia的数据是使用您在相应维基百科页面上看到的信息框中的基于地图的语言提取的。不同的映射用于不同的信息框,因此可以完全不同地映射两种不同类型的资源,如果您考虑它,这是完全合乎逻辑的。
现在你要讨论的问题是两个相同类型的资源具有不同的相同数据映射。我怀疑(虽然无法确认,因为你没有给出两部不同地映射属性的电影的例子),这里的问题是维基百科中的数据。可能有多种方法在信息框中表达您感兴趣的信息,并且信息框的映射以不同的方式进行不同的映射。这并不理想,但维基百科没有可爱的干净数据,因此您不应期望DBPedia拥有干净的数据。
您可以考虑在dbpedia-discussion@lists.sf.net上的DBPedia邮件列表中询问有关此问题的问题,以尝试找出这种情况发生的原因,因为它们可以更好地帮助您。