UPDATE March 5, 2008: I've gotten a few requests for the source code. It was released as part of the SwitchWare project, namely, as part of PLAN. Ocaml, the implementation language, has changed a bit since then, so I've dusted it off and made sure it compiles with the current version (ocaml 3.10). Here it is. Note that at some point I removed support for non-cryptographic principals, so only the examples with cryptographic principals are working; I've left the others in place for reference.
I implemented two versions of QCM. The first was based on the relational algebra; the second was based on the relational calculus. Of course, by Codd's Theorem, these are just syntactic variants of the same language; they are equivalent to non-recursive Datalog.
The main limitation of QCM was that it did not have good support for recursive policies. I addressed this in QCM's successor, SD3. SD3 is essentially QCM extended with while-loops, using a syntax based on Datalog.
There are several papers describing QCM:
There is also an old QCM home page.