如何从dbpedia的某些dbpedia属性中获取一些随机值?

时间:2015-09-23 14:40:30

标签: sparql dbpedia

我正在使用dbpedia。我正在解析dbpedia json文件(例如http://dbpedia.org/data/Germany.json)和信息。由于我是这个领域的新手,我有一个问题。在我的工作中,我需要制作一个测验游戏,数据将来自dbpedia。例如,

 the question what is the capital of Germany? ans:"Berlin"

我可以通过解析dbpedia json文件来提出问题并获得正确的ans。但我需要做出选择,因为它将是多种选择。所以,我的问题是,我怎样才能从dbpedia获得这些选项?这意味着我需要一些来自dbpedia的其他大写名称(例如)。

1 个答案:

答案 0 :(得分:1)

你可以做这样的事情,它返回四行,每一行都有正确的答案(柏林)和一个错误的答案(其他东西是非德国资源的非柏林资本): / p>

select distinct ?rightAnswer ?wrongAnswer where {
  #-- get the capital of Germany
  dbr:Germany dbo:capital ?rightAnswer .

  #-- get the capitials of some other things, as
  #-- long as those things aren't Germany, and the 
  #-- capital isn't Berlin.
  ?s dbo:capital ?wrongAnswer .
  filter ( ?s != dbr:Germany && ?wrongAnswer != ?rightAnswer )
}
limit 4

SPARQL results