Using Datalog as a common semantics for SQL/RIF-based approaches?

In our specification, it will be important to both specify exactly what
needs to be implemented that users can expect to be portable and have
extensibility mechanisms that work in a principled manner.

The options that we've seen so far both seem to have problems. SPARQL
constructs are not expressive enough, but then RIF is likely too
expressive, and it would be doubtful if we could convince implementers to
implement all of RIF just to map relational data to RDF. Likewise, SQL is
a large language itself that is implemented differently in the details
across vendors, so we'd have to specify exactly what part of SQL we
thought must be implemented. How to do so?

I'm intrigued that we could use another option - specify a common
semantics using Datalog that then could be expressed using some subset of
RIF and SQL. In fact, ideally the language could use Datalog to translate
between the subset of RIF and SQL and vice-versa. Then we could also take
advantage of SQL's power and implementation exprience while having the
nice extensibility mechanisms of RIF.

However, I'd like to know exactly what part of RIF-BLD covers Datalog, and
what exact fragment of SQL maps to Datalog. Examples of mappings are not
enough, we'd have to specify  the kinds of RIF/SQL expressions that would
be allowed and how both expressions mapped to Datalog.

        cheers,
             harry

Received on Sunday, 18 July 2010 15:39:34 UTC