4

フリーベース (検索 API の「出力」パラメーター) で検索結果をフォーマットする MQL クエリを作成しようとしています。私は本質的に、特定の検索結果のすべてのプロパティの (単純な) 値を見つけたいと思っています (結果の型についてアプリオリに何も知らずに)。「単純」とは、値が複雑なオブジェクトである場合の既定のプロパティのみを意味します。

たとえば、「Yo La Tengo」を検索すると、「/en/yo_la_tengo」の結果が表示される場合、グループのメンバー (楽器や開始日ではなく、名前だけが必要です)、アルバムを取得できるようにしたいと考えています。 (再び、名前だけ)、貢献した映画(再び、名前だけ)など。

タイプについて何も知らない場合、検索出力クエリでこれを行う簡単な方法はありますか? 何かリフレクションの魔法が使えそうな気がして、「/type/reflect」をいじってみたのですが、どうにもなりません。私は MQL を初めて使用するので (SQL の経験は豊富ですが)、少し気が遠くなります。何か案は?

編集:明確にするために、私が見ている問題は、「パフォーマンス」(映画の俳優)や「結婚」などの仲介者のタイプによるものだと思います. 例: Yo La Tengoに関するクエリ、興味のあるほとんどの (すべて?) 情報を見ることができますが、[The Muppet Movie]( freebase.com/api/service/search?limit=1&mql_output=%5B%7B%22%2Ftype %2Freflect%2Fany_reverse%22%3A%5B%7B%7D%5D%2C%22%2Ftype%2Freflect%2Fany_master%22%3A%5B%7B%7D%5D%2C%22%2Ftype%2Freflect%2Fany_value%22 %3A%5B%7B%7D%5D%7D%5D&query=The%20Muppet%20Movie -- 申し訳ありませんが、SO は私がスパマーだと思っているので、これをリンクにすることはできません)、Frank Oz の参照が表示されませんまったく(おそらく彼のパフォーマンスが代わりに参照されているため). メディエーターの型を「たどって」、すべてのプロパティを取得する一般的な方法はありますか? 例えば、

4

2 に答える 2

2

すべてのプロパティをクエリするだけでなく、それらのプロパティをたどってすべての検索結果のグラフの奥深くにある別の層をたどるのは、信じられないほどコストのかかる操作になります。これのユースケースは何ですか?ユーザーがこのすべての情報を見て効果的に吸収できる UI は本当にありますか? ただし、質問に直接答えるために、検索 API で mql_output を使用してメディエーター タイプを自動的にアンパックすることはできません。

検索クエリに関する基本的な情報セットと、ユーザーが関心を示したトピックに関するより深い情報セットを組み合わせることをお勧めします (たとえば、カーソルを合わせるなど)。この UI エクスペリエンスは、Freebase Suggest のエクスペリエンスに似ています。

質問が最初に尋ねられてから何年にもわたって、トピックが注目に値するものを確認できる「注目すべき」疑似プロパティなど、いくつかの追加の有用なものが追加されました。

もちろん、誰もが新しい API に移行する必要があるため、クエリは次のようになります

https://www.googleapis.com/freebase/v1/topic/en/the_muppet_movie

于 2012-07-23T19:07:29.617 に答える
1

私の知る限り、完全な MQL でこれを行う方法はありませんが、次のことができます。

  1. オブジェクトまたはオブジェクトのタイプのすべてのプロパティを取得してから、
  2. プログラムで別の MQL クエリを作成して、詳細を知りたいオブジェクトを取得します。

この例を見てください:

[{
  "type|=": [
    "/film/actor",
    "/tv/tv_actor",
    "/celebrities/celebrity"
  ],
  "*": [{}]
}]​

タイプActortv_actor、またはCelebrityを持つすべてのオブジェクトのすべてのプロパティを取得します。実行すると、探索可能なすべての「フォロー」ポイントが表示されます。

これはまさにあなたが望むものではありませんが、あなたを近づけるはずです.

于 2010-11-09T02:24:08.500 に答える