Sparql 如何以编程方式从Wikidata实体获取所有可用信息?

Sparql 如何以编程方式从Wikidata实体获取所有可用信息?,sparql,dbpedia,wikidata,wikidata-api,Sparql,Dbpedia,Wikidata,Wikidata Api,我对维基数据真的很陌生。我只是觉得维基数据使用了很多具体化 假设我们想为奥巴马提供所有信息。如果要从DBpedia执行此操作,我们只需使用一个简单的查询: select*where{?p?o.}这将返回以Obama为主题的所有属性和值。基本上,结果与此页面相同:http://dbpedia.org/page/Barack_Obama而查询结果是我需要的格式 我想知道如何用Wikidata做同样的事情。这是奥巴马的维基数据页面:https://www.wikidata.org/wiki/Q76。假

我对维基数据真的很陌生。我只是觉得维基数据使用了很多具体化

假设我们想为奥巴马提供所有信息。如果要从DBpedia执行此操作,我们只需使用一个简单的查询:
select*where{?p?o.}
这将返回以Obama为主题的所有属性和值。基本上,结果与此页面相同:
http://dbpedia.org/page/Barack_Obama
而查询结果是我需要的格式

我想知道如何用Wikidata做同样的事情。这是奥巴马的维基数据页面:
https://www.wikidata.org/wiki/Q76
。假设我想要这一页上的所有语句。但这一页上几乎所有的陈述都具体化了,因为它们都有等级和限定符等。例如,对于“教育时间”部分,它不仅有学校,还有“开始时间”和“结束时间”,所有学校的排名都是正常的,因为奥巴马已经不在这些学校了

我可以通过得到真实的陈述(使用)得到所有学校:

上述查询将返回所有学校

如果我想获得学校的开始时间和结束时间,我需要这样做:

SELECT ?school ?schoolLabel ?start ?end WHERE {
wd:Q76 p:P69 ?school_statement .
?school_statement ps:P69 ?school .
?school_statement pq:P580 ?start .
?school_statement pq:P582 ?end .
   SERVICE wikibase:label {
    bd:serviceParam wikibase:language "en" .
   }
 }
但问题是,不看实际页面,我怎么知道?school_语句有pq:P580和pq:P582,即“开始时间”和“结束时间”?这一切归结为一个问题,我如何从
https://www.wikidata.org/wiki/Q76

最终,我希望有这样一张桌子:
| | | | | | | | | | | |谓词| | |对象| |对象标签| | |限定符1 | | |限定符1值| | | | |限定符2 | | | |

就你而言:

您应该找到您要查找的所有限定符数据:例如
entities.Q76.claims.P69.1

{ mainsnak: 
   { snaktype: 'value',
     property: 'P69',
     datavalue: 
      { value: { 'entity-type': 'item', 'numeric-id': 3273124, id: 'Q3273124' },
        type: 'wikibase-entityid' },
     datatype: 'wikibase-item' },
  type: 'statement',
  qualifiers: 
   { P580: 
      [ { snaktype: 'value',
          property: 'P580',
          hash: 'a1db249baf916bb22da7fa5666d426954435256c',
          datavalue: 
           { value: 
              { time: '+1971-01-01T00:00:00Z',
                timezone: 0,
                before: 0,
                after: 0,
                precision: 9,
                calendarmodel: 'http://www.wikidata.org/entity/Q1985727' },
             type: 'time' },
          datatype: 'time' } ],
     P582: 
      [ { snaktype: 'value',
          property: 'P582',
          hash: 'a065bff95f5cb3026ebad306b3df7587c8daa2e9',
          datavalue: 
           { value: 
              { time: '+1979-01-01T00:00:00Z',
                timezone: 0,
                before: 0,
                after: 0,
                precision: 9,
                calendarmodel: 'http://www.wikidata.org/entity/Q1985727' },
             type: 'time' },
          datatype: 'time' } ] },
  'qualifiers-order': [ 'P580', 'P582' ],
  id: 'q76$464382F6-E090-409E-B7B9-CB913F1C2166',
  rank: 'normal' }
那么你可能会有兴趣

{ mainsnak: 
   { snaktype: 'value',
     property: 'P69',
     datavalue: 
      { value: { 'entity-type': 'item', 'numeric-id': 3273124, id: 'Q3273124' },
        type: 'wikibase-entityid' },
     datatype: 'wikibase-item' },
  type: 'statement',
  qualifiers: 
   { P580: 
      [ { snaktype: 'value',
          property: 'P580',
          hash: 'a1db249baf916bb22da7fa5666d426954435256c',
          datavalue: 
           { value: 
              { time: '+1971-01-01T00:00:00Z',
                timezone: 0,
                before: 0,
                after: 0,
                precision: 9,
                calendarmodel: 'http://www.wikidata.org/entity/Q1985727' },
             type: 'time' },
          datatype: 'time' } ],
     P582: 
      [ { snaktype: 'value',
          property: 'P582',
          hash: 'a065bff95f5cb3026ebad306b3df7587c8daa2e9',
          datavalue: 
           { value: 
              { time: '+1979-01-01T00:00:00Z',
                timezone: 0,
                before: 0,
                after: 0,
                precision: 9,
                calendarmodel: 'http://www.wikidata.org/entity/Q1985727' },
             type: 'time' },
          datatype: 'time' } ] },
  'qualifiers-order': [ 'P580', 'P582' ],
  id: 'q76$464382F6-E090-409E-B7B9-CB913F1C2166',
  rank: 'normal' }