[Developers] freebase-suggest modification
Dae Park
daepark at metaweb.com
Thu May 15 19:50:20 UTC 2008
freebase-suggest uses the search API (http://www.freebase.com/view/
guid/9202a8c04000641f8000000006ad84c9).The search API only returns
topic, type, image and article ids (e.g. http://www.freebase.com/api/
service/search?query=w&type=/people/person). It does not return any
wikipedia keys in which you can filter on.
The freebase-suggest library (freebase-controls.js) also contains a
"select" control (like the html select tag) that does do a MQL query
to get all instances of a particular type. Take a look at
SelectControl (in freebase-controls.js) on how you can pass an
arbitrary MQL query and modify freebase-suggest to invoke the mqlread
service instead of the search service.
-dae
On May 15, 2008, at 12:41 PM, Faye Li wrote:
> Freebase suggest has a filter option (see fbs.filter) for filtering
> items out of the result list. That sounds like the most promising
> place
> to start digging. I'm hoping someone who has worked directly with that
> area can chime in.
>
> -- Faye
>
>
> Zodiac Seven wrote:
>> Yes, that sounds like what I need, where should i start modifying
>> freebase suggest to do this?
>>
>> On 5/16/08, *Faye Li* <faye at metaweb.com <mailto:faye at metaweb.com>>
>> wrote:
>>
>> Since many articles are entered/edited by the Freebase community
>> and not
>> imported from Wikipedia, Wikipedia keys are a better indicator
>> for
>> identifying those that are. Sounds like the query you want is
>> asking for
>> only things that have wiki keys.
>>
>> -- Faye
>>
>>
>> Zodiac Seven wrote:
>>> Thanks,
>>>
>>> Would there be a way to tweak freebase suggest to only show topics
>>> which exist in wikipedia - I guess I have to not get results which
>>> have article:null? I can't find the MQL query which it uses
>> anywhere...
>>>
>>> On 5/15/08, *Brian Karlak* <zenkat at metaweb.com
>> <mailto:zenkat at metaweb.com>
>>
>>> <mailto:zenkat at metaweb.com <mailto:zenkat at metaweb.com>>> wrote:
>>>
>>>
>>> The wikipedia title and ID are stored as the /wikipedia/en and
>>> /wikipedia/en_id keys on the topic, and can be retrieved by the
>>> following MQL:
>>>
>>> {
>>> "a:key" : [
>>> {
>>> "namespace" : "/wikipedia/en",
>>> "value" : null
>>> }
>>> ],
>>> "b:key" : {
>>> "namespace" : "/wikipedia/en_id",
>>> "value" : null
>>> },
>>> "guid" : "#9202a8c04000641f800000000009216a"
>>> }
>>>
>>> Currently, all valid titles and redirects for an article are
>>> stored in /wikipedia/en. The /wikipedia/en_id key, however,
>>> should point to the most recent wikipedia ID for the topic. You
>>> can access the wikipedia page with this ID using the
>> following URL:
>>>
>>> http://en.wikipedia.org/wiki/index.html?curid=82976
>>>
>>> Brian
>>>
>>> On May 15, 2008, at 4:11 AM, Zodiac Seven wrote:
>>>
>>>> Okay, i guess i will make the results var global and access it
>>>> from the callback.
>>>>
>>>> Is there a freebase api to get the name of the article in
>> wikipedia?
>>>> so if I have the id as "/en/taj_mahal" and the guid as
>>>> "#9202a8c04000641f800000000009216a", name as "Taj Mahal"
>>>> I guess there must be a way to find out the wikipedia article
>>>> name which is http://en.wikipedia.org/wiki/Taj_mahal
>>>>
>>>> On 5/15/08, *Dae Park* <daepark at metaweb.com
>> <mailto:daepark at metaweb.com>
>>
>>>> <mailto:daepark at metaweb.com <mailto:daepark at metaweb.com>>>
>> wrote:
>>>>
>>>> I am unaware of any methods invoking something cross domain
>>>> synchronously. Even if it's possible, I doubt you want the
>>>> browser to
>>>> be "blocked" while you are waiting for your response.
>>>>
>>>>
>>>> -dae
>>>>
>>>>
>>>>
>>>> On May 14, 2008, at 8:25 AM, Zodiac Seven wrote:
>>>>
>>>>> Dae,
>>>>>
>>>>> $.ajax is using a async callback too. Isn't there an
>>>> approach which
>>>>> will
>>>>> work synchronously like XmlHttpRequest?
>>>>>
>>>>> On 5/14/08, Dae Park <daepark at metaweb.com
>> <mailto:daepark at metaweb.com>
>>
>>>> <mailto:daepark at metaweb.com
>> <mailto:daepark at metaweb.com>>> wrote:
>>>>>>
>>>>>> You should be able to $.ajax with "jsonp" as the
>> dataType to
>>>>>> accomplish what you want.
>>>>>>
>>>>>> -dae
>>>>>>
>>>>>>
>>>>>>
>>>>>> On May 13, 2008, at 11:09 AM, Zodiac Seven wrote:
>>>>>>
>>>>>>> This is more of a javascript question then a
>> freebase one but
>>>>>>> hoping someone here can help.
>>>>>>>
>>>>>>> I am trying to make a call to a webservice in
>> freebase suggest
>>>>>>> (http://code.google.com/p/freebase-suggest/)
>>>>>>> This means I call a web service for every
>> suggestion and
>>>> depending
>>>>>>> on that i display the suggestion.
>>>>>>>
>>>>>>> freebase.suggest.js Line 528.
>>>>>>>
>>>>>>> p.list_receive = function(input, txt, o)
>>>> {//fb.log("list_receive",
>>>>>>> input, query, o);
>>>>>>> // handle errors
>>>>>>> if (o.status !== '200 OK') {
>>>>>>> fb.error("list_receive", o.code, o.messages, o);
>>>>>>> return;
>>>>>>> }
>>>>>>> ...
>>>>>>> var url = 'http://somesite/webservice?
>>>>>>> callback=mycheckfunction&term=' + suggestKeyWord;
>>>>>>>
>>>>>>> // Create a script tag, set its src attribute and
>> add it
>>>> to the
>>>>>>> document
>>>>>>> // This triggers the HTTP request and submits the query
>>>>>>> var script = document.createElement("script");
>>>>>>> script.src = url;
>>>>>>> document.body.appendChild(script);
>>>>>>> ...
>>>>>>> // further logic to add/remove the item
>>>>>>>
>>>>>>> My problem is that i'm using
>>>> document.createElement("script" and
>>>>>>> since that is async i have no idea of knowing the
>> response
>>>> of my
>>>>>>> web service.
>>>>>>> I could move the further logic into the callback but is
>>>> there a
>>>>>>> 'synchronous' way to wait until i get a response
>> from my web
>>>>>>> service.
>>>>>>> I can't use xmlHttpRequest because of the cross domain
>>>> restriction.
>>>>>>>
>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Developers mailing list
>>
>>>>>>> Developers at freebase.com
>> <mailto:Developers at freebase.com> <mailto:Developers at freebase.com
>> <mailto:Developers at freebase.com>>
>>
>>>>>>> http://lists.freebase.com/mailman/listinfo/developers
>>>>>>
>>>>>> _______________________________________________
>>>>>> Developers mailing list
>>
>>>>>> Developers at freebase.com
>> <mailto:Developers at freebase.com> <mailto:Developers at freebase.com
>> <mailto:Developers at freebase.com>>
>>
>>>>>> http://lists.freebase.com/mailman/listinfo/developers
>>>>>>
>>>>> _______________________________________________
>>>>> Developers mailing list
>>
>>>>> Developers at freebase.com
>> <mailto:Developers at freebase.com> <mailto:Developers at freebase.com
>> <mailto:Developers at freebase.com>>
>>
>>>>> http://lists.freebase.com/mailman/listinfo/developers
>>>>
>>>> _______________________________________________
>>>> Developers mailing list
>>
>>>> Developers at freebase.com
>> <mailto:Developers at freebase.com> <mailto:Developers at freebase.com
>> <mailto:Developers at freebase.com>>
>>
>>>> http://lists.freebase.com/mailman/listinfo/developers
>>>>
>>>>
>>>> _______________________________________________
>>>> Developers mailing list
>>
>>>> Developers at freebase.com <mailto:Developers at freebase.com>
>> <mailto:Developers at freebase.com <mailto:Developers at freebase.com>>
>>
>>>> http://lists.freebase.com/mailman/listinfo/developers
>>>
>>>
>>> _______________________________________________
>>> Developers mailing list
>>
>>> Developers at freebase.com <mailto:Developers at freebase.com>
>> <mailto:Developers at freebase.com <mailto:Developers at freebase.com>>
>>
>>> http://lists.freebase.com/mailman/listinfo/developers
>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> ---
>>>
>>> _______________________________________________
>>> Developers mailing list
>>> Developers at freebase.com <mailto:Developers at freebase.com>
>>> http://lists.freebase.com/mailman/listinfo/developers
>>>
>>
>> _______________________________________________
>> Developers mailing list
>> Developers at freebase.com <mailto:Developers at freebase.com>
>> http://lists.freebase.com/mailman/listinfo/developers
>>
>>
>> ---------------------------------------------------------------------
>> ---
>>
>> _______________________________________________
>> Developers mailing list
>> Developers at freebase.com
>> http://lists.freebase.com/mailman/listinfo/developers
>>
>
> _______________________________________________
> Developers mailing list
> Developers at freebase.com
> http://lists.freebase.com/mailman/listinfo/developers
More information about the Developers
mailing list