This is an attempt to make it easy to query across different services: the Freebase graph, the Content database, the Relevance (Text Search) service, the Geosearch service, and possibly external services as well.
It is best if you first go to this uMql query editor and try the examples out yourself.
To use the uMql query engine inside your own ACRE app, you'd need something like this:
var qe = acre.require("/user/dfhuynh/umql/engine").createQueryEngine();
var result = qe.read(aUmqlQuery).result;
You can extend the queryEngine with your own external services as follows:
var qe = acre.require("/user/dfhuynh/umql/engine").createQueryEngine()
.extend("serviceName1", handler1)
.extend("serviceName2", handler2);
var result = qe.read(aUmqlQuery).result;
See the implementation of the relevance service handler for a simple example of how to write a service handler, and the geosearch service handler for a more complex example.