Also known as
  • Add other possible names for this topic

This example app demonstrates a number of concepts:

  • Using MQL cursors
  • Calling MJT templates with arguments
  • Incremental queries (the page updates without reloading)

Notes

If you start to develop Freebase applications you then at some point you will inevitably see the error message “Query timeout”

For example, if you wanted to get a list of Musical Artists in Freebase you might try this query

{
   “query”:[{
     “id”:null,
     “limit”:0,
     “name”:null,
     “type”:”/music/artist”
   }]
}

But as there are almost 1/3 million artists in the database this query will timeout. That’s just as well, otherwise you would be loading a 30MB JavaScript file!

That was an extreme example, but as more users register with Freebase, my Map of Freebase Users occasionally timeouts. (It’s actually the MJT library which imposes the deadline here, not necessary the database which timeouts). Even if your application isn’t timing out, you find that your browser becomes unresponsive as it loads large JavaScript files from the database.

The solution is to use MQL cursors

Run the demo and then look at the source code for details.

Software Genre
First Released
Latest Version
Latest Release Date
Programming languages used
Compatible Operating Systems
Protocols Used
Protocols Provider
Developed By (user)
user profile
my full name
  • Will Moffat
Oauth Enabled
With the exception of Wikipedia summaries and some images the content on this page is typically distributed under the Creative Commons Attribution license or Public Domain.
Created by willmoffat Aug 20, 2007
Last edited by nix Feb 13, 2008
View topic history »
Gallery add edit
There are no images for this topic yet.

Recent Discussions about MJT Cursor demo

There are no conversations on this topic. Would you like to start one?

Start the Discussion »