【问题标题】:Wikidata property statement and property direct维基数据财产声明和财产直接
【发布时间】:2022-03-07 18:02:15
【问题描述】:

我正在尝试检索与金门大桥相关的实体及其属性。我使用了这个查询(https://query.wikidata.org/#SELECT%20%3Fp2%20%3Fs%0AWHERE%0A%7B%0A%20%20%09%3Fs%20%3Fp2%20wd%3AQ44440%20.%0A%7D):

SELECT ?p2 ?s
WHERE
{
    ?s ?p2 wd:Q44440 .
}

但我注意到,在结果中,属性“p:statement/P800”和属性“wdt:P800”实际上指向同一个东西。他们有相同的id。我想知道为什么它会同时返回。他们有什么区别?我如何才能得到一个?

我经常使用 DBpedia,所以我对 Wikidata 中的 uri 方案不熟悉,这很混乱。

【问题讨论】:

  • 我没有完整的答案给你,但它们实际上不是同一个属性(即使你在单击链接时最终在同一页面上)。 p:statement/P800 扩展为http://www.wikidata.org/prop/statement/P800,而wdt:P800 扩展为http://www.wikidata.org/prop/direct/P800

标签: sparql wikidata-query-service


【解决方案1】:

我想这与对语句本身进行具体化的选项有关,至少这是我从这里的文档中理解的:https://www.wikidata.org/wiki/Wikidata:Glossary#Claims_and_statements 这就是为什么他们对同一属性使用多个命名空间的原因。如果您将查询更改为

,您会更好地看到它
SELECT ?s ?p
WHERE
{
    ?s ?p wd:Q44440 .
    ?p a owl:ObjectProperty
}

它返回,除其他外,

+-------------------------------------------------------------+------------------+
|                              s                              |        p         |
+-------------------------------------------------------------+------------------+
| wd:Q16803333                                                | wdt:P301         |
| wd:Q261174                                                  | wdt:P800         |
| wd:Q950029                                                  | wdt:P921         |
| wd:statement/Q16803333-12EFD280-98AF-4CA1-BEA3-5C142674827D | p:statement/P301 |
| wd:statement/Q261174-4B53E291-A47B-48E3-AE28-7FDE75849E28   | p:statement/P800 |
| wd:statement/Q950029-fd9f357a-45ff-403a-86ba-b462acb2ffbd   | p:statement/P921 |
+-------------------------------------------------------------+------------------+

在这种情况下,您可以看到主题也具有不同的命名空间,其中 statement 作为关键字。关于这些陈述,你也可以做出陈述,称为具体化。

【讨论】:

  • 所以我可以这样说,如果我不关心具体化或关于语句的陈述,我可以只使用命名空间 wd 的项目和命名空间 wdt 的属性?
  • 还有为什么我需要添加“?p a owl:ObjectProperty”才能将结果显示到更易读的表格中?
  • 我认为你可以这样做,但老实说我不是维基数据专家。我建议在 Wikidata 社区询问澄清,也许通过邮件列表。
  • 顺便说一句,有没有办法获取属性的标签?例如,如果我使用SELECT ?s ?sLabel ?p ?pLabel WHERE { ?s ?p wd:Q44440 . ?p a owl:ObjectProperty . SERVICE wikibase:label { bd:serviceParam wikibase:language "en" . } },我只会获得属性的 url。对于 P800 属性,标签应为“值得注意的工作”
  • 根据您的第二条评论:这只是为了摆脱具有 schema:about 属性的三元组(这只是 schema.org 本体中的 rdf:Property。在这种情况下更容易表明主题也是陈述的独立资源。
猜你喜欢
  • 1970-01-01
  • 2014-12-10
  • 2012-01-24
  • 1970-01-01
  • 2012-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多