New EXPERIMENTAL Freebase Reconciliation Service

951 views
Skip to first unread message

Tom Morris

unread,
Feb 28, 2013, 12:01:37 AM2/28/13
to openr...@googlegroups.com
As some of you have noticed, reconciliation against Freebase, one of Refine's most awesome (among many awesome) features, has gone to hell in a handbasket recently. (In other words, it no longer works).

We weren't really counting on having to transition on a moment's notice, but I've patched together an *experimental* service which will hopefully help bridge the gap.


You should be able to add it as a standard reconciliation service in either Google Refine 2.5 or OpenRefine (soon to be) 2.6 (aka the current development version)..

The new service is intended to be API compatible with the old service, but it doesn't use any of the old Freebase APIs with their consequent performance issues.  It should be 10x (at least!) faster.

Having said that, it's not without issues.  I coded it up in a hurry to bridge the gap.  It's untested.  It's got some known issues.

*IN PARTICULAR*, it has a hard filter on the type that you're reconciling against.  There's a fix in the pipe for this, but in the mean time, if you're not sure that all of your candidates are, say, /people/person you should instead reconcile against /common/topic.

On the plus side, our previous warnings about not including additional columns in your reconciliation no long apply.  If you want to include the person's birth date, death date, whatever, ..., you won't get vectored off to the land of the 18 month stale indexes.

I'm going to continue to tweak this over the next few days, but I'll try to make sure that the published version doesn't break.  If you run into any problems, please file a bug report on Github.

Sorry about the recent instabilities in this space!

Tom

Nuno Bettencourt

unread,
Feb 28, 2013, 7:54:21 AM2/28/13
to openr...@googlegroups.com
Hi Tom,

regarding this email, I've noticed the following.

On 28/02/2013, at 05:01, Tom Morris <tfmo...@gmail.com> wrote:

The new service is intended to be API compatible with the old service, but it doesn't use any of the old Freebase APIs with their consequent performance issues.  It should be 10x (at least!) faster.

Having said that, it's not without issues.  I coded it up in a hurry to bridge the gap.  It's untested.  It's got some known issues.

*IN PARTICULAR*, it has a hard filter on the type that you're reconciling against.  There's a fix in the pipe for this, but in the mean time, if you're not sure that all of your candidates are, say, /people/person you should instead reconcile against /common/topic.

I've been using reconcile specifically against items from the /music/genre type. 

Nevertheless, results differ from the first service to this new service. 

For example, when reconciling the term "hiphop" using the old freebaseapp, I would get the following candidates:
Hip hop music (76) type: [ "/common/topic", "/broadcast/genre", "/broadcast/radio_format", "/base/socialdance/topic", "/base/christianrapmusic/topic", "/base/radiostations/radio_station_format", "/music/genre", "/award/award_discipline", "/film/film_subject", "/book/book_subject", "/base/arasmuzic/topic", "/base/papoiteskingboys/topic", "/freebase/task", "/base/choppedandscrewedmusic/topic", "/music/compositional_form", "/tv/tv_subject", "/base/webvideo/topic", "/media_common/media_genre", "/base/webvideo/internet_video_genre", "/music/music_video_genre" ]
Underground hip hop (50) type: [ "/music/genre" ]
Alternative hip hop (50) type: [ "/music/genre" ]

With the new service I get the following candidates:
Adverse (0.013) type: [ "/m/0hpcdn2" ] (comment: this should not be a type)
Anthony Ian Berkeley (0.006) type: [ "/m/0hpcdn2" ] (comment: this should not be a type)
Hip Hop is Dead (0.005) type: [ "/music/album" ] (comment: this is a type, but not of type /music/genre, which I asked for) 

As a result, I guess the results should be same, independently of the service being used (in this particular matter); that the service is not reconciling against the specified type and even returning results from other types.

If you need any more information, I'm glad to help in whatever I can, because the old service it taking too long to reconcile my whole batch.

Best regards,

Nuno Bettencourt

Tom Morris

unread,
Feb 28, 2013, 4:23:03 PM2/28/13
to openr...@googlegroups.com
Hi Nuno,

Thanks for the testing and feedback.  That's definitely not a good result!  When I was testing yesterday, things were being overly constrained and now it seems like they've gone the opposite direction.

This is built on some new backend Google services which are still being fine tuned and I heavily modified the old reconciliation service, so there are likely bugs in both pieces.  That's why I labeled it experimental :-).  Having said that, the results for this query are much worse than I'd expect.

For simple queries like this, I'd actually just like to use the Search API, but there are some technical limitations to doing multiple search queries in a batch, which is what we'd like to do here.

I'll see what I can do to improve things and report back to the list.

Tom

--
You received this message because you are subscribed to the Google Groups "Open Refine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openrefine+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Will

unread,
Mar 21, 2013, 3:42:54 PM3/21/13
to openr...@googlegroups.com
Tom, I successfully added this to my G-Refine 2.5 and it seems running well.  I have a set of titles I want to load to a single author and I put the FreebaseID in the Author column ... this used to recon quickly, can this new service snap fbids?

Tom Morris

unread,
May 9, 2013, 4:47:11 PM5/9/13
to openr...@googlegroups.com
Will - I apologize for missing your question when it was originally posted!  For the benefit of the archives and anyone else who's wondering (including you, if you didn't already figure it out):

On Thu, Mar 21, 2013 at 3:42 PM, Will <wdsn...@gmail.com> wrote:
Tom, I successfully added this to my G-Refine 2.5 and it seems running well.  I have a set of titles I want to load to a single author and I put the FreebaseID in the Author column ... this used to recon quickly, can this new service snap fbids?

The best way to reconcile Freebase IDs as well as other strong identifiers from Wikipedia, IMDB, the Library of Congress, etc is to use the very first service in the reconciliation dialog which is called something like "Query-based Freebase reconciliation."  The default is to reconcile Freebase identifiers, but it can also lookup keys in any other namespace.  For example, The namespace /wikipedia/en contains keys which are based on the URL of English Wikipedia articles and /wikipedia/en_id contains keys which are the numeric article numbers of Wikipedia articles.

There are lots of other interesting namespaces in the tree rooted at /authority.

Tom

Will

unread,
May 21, 2013, 2:44:18 PM5/21/13
to openr...@googlegroups.com
Tom - thanks for the kind reply about "Query-based Freebase reconciliation"   Is it still working?  This worked great a month ago but today trying to use this service to Reconcile a column of fbids does not recon.  

Tom Morris

unread,
May 21, 2013, 7:32:41 PM5/21/13
to openr...@googlegroups.com
Hi Will.  I think perhaps the old reconciliation service has stopped working.  I'll try to write up directions tonight on installing the new reconcilation service so that it does query based lookups as well.

Tom


Thad Guidry

unread,
May 21, 2013, 9:01:41 PM5/21/13
to openr...@googlegroups.com
Much appreciated ,Tom.  I would like to see that write up as well.

Tom Morris

unread,
May 24, 2013, 5:41:30 PM5/24/13
to openr...@googlegroups.com
Sorry for the delay.  It wasn't where I thought it was and it took me a little while to find the time to really dig into it.

The bad news is that the "Freebase Query-based Reconciliation" isn't a real reconciliation service but is instead implemented as part of the Freebase extension that we bundled with Google Refine 2.5.  Sorry about that!

I'll look into tweaking the existing reconciliation service or creating a new one that'll do the job, but since other stuff like Add Column from Freebase is broken, it might be better to just focus on getting a release out the door.  

Anyone want to donate a Mac for kit builds? :-)

Tom

Thad Guidry

unread,
Aug 3, 2013, 10:32:47 AM8/3/13
to openr...@googlegroups.com
Tom,

What's the status now on the Reconcile feature in 2.6 , if I add the new service endpoint as a Standard Service ?  I was able to see it auto hint for a Type in my column of musical artists... but when I tried to launch the reconcile...there was no spinner along the top banner and all I got in console was:

refine] POST /command/core/reconcile (20075ms)

Tom Morris

unread,
Aug 3, 2013, 1:16:36 PM8/3/13
to openr...@googlegroups.com
That's a bug introduced with the new internationalization code and isn't related to the recon service.  Please file a bug report.

One loose end for 2,6 though is that I don't think we automatically upgrade existing recon service entries to get rid of the old (non-functional) recon service and replace it with the new one.  The list is stored in the workspace data, so although new users will get pointed to the new service, users who are upgrading will currently need to add the new service manually.  I'll look into improving this.

Tom


--
You received this message because you are subscribed to the Google Groups "OpenRefine" group.

Tom Morris

unread,
Aug 6, 2013, 5:00:34 PM8/6/13
to openr...@googlegroups.com
I've rolled out some improvements to the new reconciliation service.  It should perform give more reasonable type guesses for your columns now and it should also return the types for reconciliation candidates so that you can use the "Facet by best types match" facet among other things.

Previously we were using the "notable" properties, but this isn't guaranteed to return an actual type.  You might get the "Horror film" genre as the most notable, instead of the Film (/film/film) type.

This works with both Refine 2.5 and Refine 2.6 (which should have beta kits available in the next day or two -- thanks to our alpha testers).

Tom

Thad Guidry

unread,
Aug 6, 2013, 5:19:48 PM8/6/13
to openr...@googlegroups.com
Tom,

What is still "TODO" for the EXPERIMENTAL Reconcile Service ?


--
You received this message because you are subscribed to the Google Groups "OpenRefine" group.

To unsubscribe from this group and stop receiving emails from it, send an email to openrefine+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Tom Morris

unread,
Aug 6, 2013, 5:40:35 PM8/6/13
to openr...@googlegroups.com
On Tue, Aug 6, 2013 at 5:19 PM, Thad Guidry <thadg...@gmail.com> wrote:

What is still "TODO" for the EXPERIMENTAL Reconcile Service ?

There aren't really any open issues that I'm aware of for our implementation, but we'll be tracking changes to the underlying service and providing feedback to the Google engineers on ways it could be improved.

One of the reasons it was experimental when I first announced it is that the underlying Freebase API was unannounced and we were using it as part of the trusted tester program.  Now the service is, if not announced, at least publicly documented: https://developers.google.com/freebase/v1/reconciliation-overview

Having said that, it's still early days for the new service, so I suspect there will be various hiccups.  If it doesn't work the way you think it should, please open issues in the issue database and provide example data.  We'll collate all the bug reports and synthesize aggregate issues for the upstream developers.

Tom

Thad Guidry

unread,
Aug 6, 2013, 6:13:12 PM8/6/13
to openr...@googlegroups.com
Sounds like a plan Tom.  I'll try to get some more testing in on Trunk for the reconcile service.

Thanks for all your efforts !

Thad Guidry

unread,
Sep 16, 2013, 4:47:18 PM9/16/13
to openr...@googlegroups.com
Hey Tom,

Is this a bug ? or is the service down ?  Doesn't appear so,  I can reach it on the Google Chrome browser with this URL : http://reconcile.freebaseapps.com/reconcile
which is what I used to Add as a Standard Service... but then get the error in OpenRefine console (with just a forever WORKING... spinner on the gui)


15:24:38.163 [                   refine] POST /command/core/get-rows (7ms)
15:24:42.244 [                   refine] POST /command/core/importing-controller (4081ms)
15:24:43.253 [                   refine] POST /command/core/get-importing-job-status (1009ms)
15:24:43.258 [                   refine] POST /command/core/cancel-importing-job (5ms)
15:24:43.722 [                   refine] POST /command/core/load-language (464ms)
15:24:43.737 [                   refine] GET /command/core/get-preference (15ms)
15:24:43.743 [                   refine] GET /command/core/get-preference (6ms)
15:24:43.747 [                   refine] POST /command/core/load-language (4ms)
15:24:43.754 [                   refine] POST /command/core/load-language (7ms)
15:24:43.790 [                   refine] GET /command/core/get-project-metadata (36ms)
15:24:43.896 [                   refine] GET /command/core/get-models (106ms)
15:24:43.951 [                   refine] GET /command/core/get-history (55ms)
15:24:43.953 [                   refine] POST /command/core/get-rows (2ms)
15:24:53.725 [                   refine] POST /command/core/guess-types-of-column (9772ms)
15:25:14.946 [                  command] Failed to guess cell types for load
{"q0":{"query":"Think","limit":3},"q1":{"query":"50 Popular Beliefs That People Think Are True","limit":3},"q2":{"query":"Bullspotting","limit":3},"q3":{"query"
:"Believing Bullshit","limit":3},"q4":{"query":"How to Become a Really Good Pain in the Ass","limit":3},"q5":{"query":"When Good Thinking Goes Bad","limit":3},"
q6":{"query":"The Art of Deception","limit":3},"q7":{"query":"Don\u2019t Believe Everything You Think","limit":3},"q8":{"query":"Truth, Knowledge, Or Just Plain
 Bull","limit":3},"q9":{"query":"Hoaxes, Myths, and Mayhem","limit":3}} (21221ms)
java.net.ConnectException: Connection timed out: connect
        at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
        at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:579)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:378)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:473)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:203)
        at sun.net.www.http.HttpClient.New(HttpClient.java:290)
        at sun.net.www.http.HttpClient.New(HttpClient.java:306)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849)
        at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1090)
        at com.google.refine.commands.recon.GuessTypesOfColumnCommand.guessTypes(GuessTypesOfColumnCommand.java:174)
        at com.google.refine.commands.recon.GuessTypesOfColumnCommand.doPost(GuessTypesOfColumnCommand.java:89)
        at com.google.refine.RefineServlet.service(RefineServlet.java:177)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
        at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
        at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:132)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
        at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
        at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
        at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
        at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
        at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:724)
15:25:14.960 [                  command] Exception caught (14ms)
java.net.ConnectException: Connection timed out: connect
        at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
        at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:579)
        at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:378)
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:473)
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:203)
        at sun.net.www.http.HttpClient.New(HttpClient.java:290)
        at sun.net.www.http.HttpClient.New(HttpClient.java:306)
        at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995)
        at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
        at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849)
        at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1090)
        at com.google.refine.commands.recon.GuessTypesOfColumnCommand.guessTypes(GuessTypesOfColumnCommand.java:174)
        at com.google.refine.commands.recon.GuessTypesOfColumnCommand.doPost(GuessTypesOfColumnCommand.java:89)
        at com.google.refine.RefineServlet.service(RefineServlet.java:177)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
        at org.mortbay.servlet.UserAgentFilter.doFilter(UserAgentFilter.java:81)
        at org.mortbay.servlet.GzipFilter.doFilter(GzipFilter.java:132)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
        at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
        at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
        at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
        at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
        at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
        at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:724)

Brendan Florez

unread,
Nov 1, 2013, 10:58:01 PM11/1/13
to openr...@googlegroups.com
Hi Everyone,

I'm new to this, so first thanks for taking on such a great project: very worthwhile.  I have another question on the reinterpret() function that I'll post in the appropriate place, but I wanted to follow up on this thread and see if any progress has been made on this front. I tried using this new service two days ago and it actually seemed to work well: it detected the content type I had (\education\institutions), and seemed to work decently well. However, I had only run it on a subset of the data to test it out, but when I tried to run it again about 12 hours later on the full data set, it only gave me the standard options of \people\person and \location\location, and didn't seem to work at all. I thought it might have been because I was running it on a larger set of data, but when I tried it on the original test set it still didn't work, and was giving me issues similar to Thad's above (i.e. just kept working at 100% forever.)

This is obviously an incredibly powerful tool, so I just wanted to check and see if the issues were yet known.

Thanks,
Brendan

Will

unread,
Nov 7, 2013, 6:56:20 PM11/7/13
to openr...@googlegroups.com
Hi Tom,

I have a project that needs the Refine Recon service, I see that it has improved greatly!  I'm using v1 in Refine2.5.  Is there a way to "force" the snap if I know the fbid?

Scenario: I run the Recon service, it finds snaps mostly.  I have a topic that didn't snap, but I can find it by hand in Freebase and get the fbid.  It USED to be that I could paste the fbid into the "Search for Match" dialog and it would force the snap, but now it hangs.

Is there any other way to add the recon info to the cell in Refine?

Great progress,
Will


On Wednesday, February 27, 2013 9:01:37 PM UTC-8, Tom Morris wrote:

John David Smith

unread,
Nov 8, 2013, 3:04:00 PM11/8/13
to openr...@googlegroups.com
Is there a tutorial somewhere that would walk me through the logic of using the reconciliation feature.  I used it once and felt like I REALLY didn't understand what I was doing.

John
--------------------

Tom Morris

unread,
Nov 8, 2013, 4:03:44 PM11/8/13
to openr...@googlegroups.com
There aren't any known issues although sometimes there are issues with the backend Freebase services.  Was this a one-time thing or did it recur?

Tom 

Brendan Florez

unread,
Nov 12, 2013, 11:44:10 PM11/12/13
to openr...@googlegroups.com
Hi Tom,

Thanks for the update. It has happened to me multiple times, although they were all within a relatively small period of time. The latest run seems to have worked, so I will keep you posted. I also had a question on the issues with slow browsing when clustering: https://groups.google.com/forum/#!topic/openrefine/_TBuqhnJm_w

Btw, I'm sure people here probably know about this, but I found this to be a useful intro if people are interested:

Warm Regards,
Brendan

Will Snow

unread,
Nov 13, 2013, 12:15:00 AM11/13/13
to openr...@googlegroups.com
Let me ask it this way :) in Refine after running RECON and fb-suggest for a cell isn’t finding a match, is there a way to FORCE the match if I know the FBID?

post was clearly TLDR, sorry :-P


--
You received this message because you are subscribed to a topic in the Google Groups "OpenRefine" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openrefine/GARvNqvVlqc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openrefine+...@googlegroups.com.

Tom Morris

unread,
Nov 13, 2013, 12:59:22 AM11/13/13
to openr...@googlegroups.com
On Wed, Nov 13, 2013 at 12:15 AM, Will Snow <wdsn...@gmail.com> wrote:
Let me ask it this way :) in Refine after running RECON and fb-suggest for a cell isn’t finding a match, is there a way to FORCE the match if I know the FBID?

Yes, paste the MID (or any other Freebase ID e.g. /en/... or /wikipedia/...) into the Freebase Suggest dialog. 

Tom

Will

unread,
Nov 13, 2013, 1:26:12 PM11/13/13
to openr...@googlegroups.com
Thanks Tom!

If I paste the mid into the "Search For Match" dialog in Refine and paste into the box it just times out and the Match button doesn't function.

I tried filtering single row and  grel:add.cell.recon.match.id="/m/0c4f_z1" but no luck.  Is there a grel expression?

Tom Morris

unread,
Nov 13, 2013, 2:54:51 PM11/13/13
to openr...@googlegroups.com
On Wed, Nov 13, 2013 at 1:26 PM, Will <wdsn...@gmail.com> wrote:

If I paste the mid into the "Search For Match" dialog in Refine and paste into the box it just times out and the Match button doesn't function.

That sounds to me like you might be using the old version of Freebase Suggest.  Google Refine 2.5's bundled Freebase Suggest and all versions of Suggest of that vintage no longer work because Google turned off the APIs.  You'll need to use OpenRefine 2.6 both because it uses the new reconciliation service and because it includes the new Freebase Suggest (as well as using the new Freebase APIs for things like Reconcile by ID which is also broken in Refine 2.5).
 
I tried filtering single row and  grel:add.cell.recon.match.id="/m/0c4f_z1" but no luck.  Is there a grel expression?

No, there's no way to write the reconciliation data from GREL.

Tom

On Tuesday, November 12, 2013 9:59:22 PM UTC-8, Tom Morris wrote:
On Wed, Nov 13, 2013 at 12:15 AM, Will Snow <wdsn...@gmail.com> wrote:
Let me ask it this way :) in Refine after running RECON and fb-suggest for a cell isn’t finding a match, is there a way to FORCE the match if I know the FBID?

Yes, paste the MID (or any other Freebase ID e.g. /en/... or /wikipedia/...) into the Freebase Suggest dialog. 

Tom

--
You received this message because you are subscribed to the Google Groups "OpenRefine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openrefine+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages