获取作为给定项目实例的所有维基数据项目

Nic*_*oul 7 mediawiki-api wikidata wikidata-api

维基数据有一个名为智能手机模型的项目.
我想得到它的所有实例.

问题:如何使用实时服务器以编程方式获取实例的标识符?

最好不要包含在WhatLinksHere中显示但在"Wikidata:"命名空间而不是主命名空间中的误报.

Add*_*ore 10

您的问题指定了"Mediawiki API",但这是不可能的.

Wikidata在https://query.wikidata.org上有一个SPARQL查询服务

您想要的查询是:

PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>

SELECT DISTINCT ?item
WHERE {
    ?item wdt:P31/wdt:P279* wd:Q19723451
}
Run Code Online (Sandbox Code Playgroud)

这将列出作为'(P31)'智能手机型号'实例的项目(Q19723451)或'(P279)'智能手机型号'(Q19723451)的'a'子类实例.

  • 直接查询链接:https://query.wikidata.org/#PREFIX%20wd%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fentity%2F%3E%0APREFIX%20wdt%3A%20% 3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fdirect%2F%3E%0A%0ASELECT%20DISTINCT%20%3Fitem%0AWHERE%20%7B%0A%20%20%20%20%3Fitem%20wdt% 3AP31%2Fwdt%3AP279%2a%20wd%3AQ19723451%0A%7D%0A (3认同)
  • 为了便于阅读,您能否阐明 P31、Q19723451、P279 和 Q19723451 代表什么? (2认同)

Ain*_*ali 7

这还不可能.(如果您想跟进开发,这是任务.)

你今天能到MediaWiki的API,最好是使用action=queryprops=linkshere对这样的命名空间和筛选:

http://www.wikidata.org/w/api.php?action=query&prop=linkshere&format=json&lhprop=title&lhnamespace=0&lhlimit=500&titles=Q19723451

但是,有一个外部查询工具,Wikidata查询,它可以完全满足您对此查询的要求:

http://wdq.wmflabs.org/api?q=CLAIM[31:19723451]

只需在数字前添加Q即可获得商品ID.