1

たとえば、Freebase API を使用して都市を検索するとします。たとえば、サンフランシスコ:

https://www.googleapis.com/freebase/v1/topic/m/0d6lp?limit=20&filter=/common/topic/description&filter=/common/topic/article&filter=/location/location/geolocation&filter=/location/location/ containsby&filter=/travel/travel_destination/tourist_attractions

「/location/location/containedby」を含む一連のデータを取得します。これは、このエンティティが含まれている他のエンティティを参照します。これは、都市がどの州と国に属しているかを調べる方法です。

問題は、これらのエンティティの name と mid のみを取得し、'/common/topic/notable_for' を取得しないことです。したがって、エンティティごとに個別のクエリを作成し、notable_for プロパティだけを要求して、それらのどれがどれであるかを調べる必要があります。国、州、または私が必要としないその他のもの。

たとえば、これはアメリカ合衆国が国であると判断するクエリの 1 つです: https://www.googleapis.com/freebase/v1/topic/m/09c7w0?filter=/common/topic/notable_for これは各都市で 3 回から 6 回実行されます。

特定のトピックにこれらのリンクされたエンティティに関する詳細情報を含めるように API に指示する方法はありますか? この場合のように、リンクされたエンティティに「/common/topic/notable_for」を含めます。私の場合、大量のクエリとエンドユーザーの時間を節約できます。

お時間をいただきありがとうございます!

4

2 に答える 2

0

返される情報をより適切に制御したい場合は、MQL Read API を使用することをお勧めします。次に、contained_by の場所がそのタイプとともに返されるように要求するネストされたクエリを指定できます (または、国または州のみを明示的にフィルター処理できます)。

于 2013-04-10T19:42:12.147 に答える
0

これらの結果は、Freebase Search APIの新しい出力パラメーターを使用して実際に取得できます。このような:

query=/m/0d6lp
output=(description /location/location/geolocation (/location/location/containedby notable))

やってみて

于 2013-04-11T03:12:32.363 に答える