2013-06-21 4 views
2

Я хочу запросить всех получателей Нобелевской премии мира и даты (года) от Freebase. Я посмотрел на site, который показывает мне всех победителей, но если я сделаю запрос here, я получаю только «нулевые» результаты!Запрос для всех получателей Нобелевской премии мира в Freebase

То, что я до сих пор: [{ "Идентификатор": "/ м/05f3q", "/ награды/award_category/победителей": [] }]

ответ

2

Если вы посмотрите на schema для информации, которую вы пытаетесь запросить, вы можете видеть, что то, что вы возвращаете, на самом деле является объектом премии Honor, у которого есть схема, такая как this. У него есть куча разных свойств, но у него нет никакого значимого имени, поэтому он возвращается как нуль.

попробовать что-то больше вдоль линий the below (добавить дополнительные свойства в случае необходимости):

[{ 
    "type": "/award/award_honor", 
    "award": { 
    "id": "/m/05f3q" 
    }, 
    "award_winner": [{ 
    "id": null, 
    "name": null 
    }], 
    "year": null 
}] 
+0

Ah Спасибо! Вы знаете, почему запрос возвращает только 97 результатов, где сайт показывает мне 101? –

+0

Второй вопрос, прежде чем вы даже приняли первый ответ? –

+0

Ну, ваш запрос может быть неправильным, если он возвращает меньше результатов, чем показано в графическом интерфейсе Freebase. Конечно, я приму свой ответ, если это не так. –

0
[{ 
    "id": "/en/nobel_prize_in_economics", 
    "/award/award_category/winners": [{ 
    "/award/award_honor/award_winner": [], 
    "/award/award_honor/year": null, 
    "/award/award_honor/award": null, 
    "/award/award_honor/honored_for": [] 
    }] 
}] 

Я не могу сделать это всего лишь один звонок, так что я сделать то же самое для «/ ен/nobel_prize_in_physiology_or_medicine ","/en/nobel_prize_in_chemistry ","/en/nobel_peace_prize ","/en/nobel_prize_in_literature ".