【问题标题】:How to list all different properties in DBPedia如何在 DBPedia 中列出所有不同的属性
【发布时间】:2013-06-12 23:50:57
【问题描述】:

我有一个关于 DBpedia 的迫切问题。也就是说,我想知道如何在每页搜索 DBpedia 中的所有属性。 URI http://nl.dbpedia.org/property/einde 涉及属性“einde”。我想获取所有现有的属性/页面。这似乎并不太难,但我对 SPARQL 一无所知,所以这就是我想寻求帮助的原因。也许有某种转储,但老实说我不知道​​。

【问题讨论】:

    标签: sparql dbpedia non-english


    【解决方案1】:

    我们可以通过询问“?x 的哪些值在 DBpedia 中是否存在三元组 ?x rdf:type rdf:Property?”来表达查询,而不是询问 URL 以 http://nl.dbpedia.org/property/ 开头的页面。这是一个非常简单的 SPARQL 查询。因为我预计 DBPedia 中会有很多属性,所以我先写了一个查询来计算有多少,然后再写一个查询来实际列出它们。

    据此 SPARQL 查询报告,DBpedia 中有 48292 个东西被声明为 rdf:type rdf:Property,与 DBpedia 的 SPARQL endpoints 之一运行:

    select COUNT( ?property ) where {
     ?property a rdf:Property
    }
    

    SPARQL Results

    您可以通过选择?property而不是COUNT( ?property )来获取列表:

    select ?property where {
     ?property a rdf:Property
    }
    

    SPARQL Results

    【讨论】:

    • 谢谢!这正是我所需要的,正如下面的答案!
    【解决方案2】:

    我第二个 Joshua Taylor 的 answer,但是如果您想将属性限制为荷兰语 DBpedia,您需要将 default-graph-uri 查询参数更改为 nl.dbpedia.org 并设置 SPARQL 端点nl.dbpedia.org/sparql,如以下查询中所示。您将获得一个略高于 8000 个元素的结果集。

    SELECT DISTINCT ?pred WHERE {
      ?pred a rdf:Property
    }
    ORDER BY ?pred
    

    run query

    这些是迄今为止从维基百科映射的属性的荷兰语翻译。 full English list 也可用。根据mappings.dbpedia.org 的说法,大约有 1700 处房产缺少荷兰语翻译。

    【讨论】:

    • @kr1 很好地了解了查询的语言特定性质!我与非英语维基百科的合作不多。我不知道the localized datasets的范围。
    • @JoshuaTaylor,是的,这些数据集是一个很好的资源,即使许多语言中缺少很多映射。荷兰语是覆盖率最高的语言之一。然而,仍有数以千计的翻译缺失。我们非常缓慢地走向完整性;-)(我偶尔会帮助意大利和德国的映射)。顺便说一句,感谢您编辑答案!
    • 你为什么把它命名为?pred
    猜你喜欢
    • 2011-10-20
    • 2015-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    • 2018-11-14
    • 1970-01-01
    相关资源
    最近更新 更多