question about frames

I'm wondering how to write some simple rules using frames because frames 
map to the Java beans that Oracle Business Rules uses as its facts 
better than relations.  Or so I hoped.  The problem I seem to be having 
is with frame OIDs.  I don't want to have to specify them in a rule 
conclusion.  For example, consider the simple rule using relations p and q:

forall(?x) Q(?x) :- P(?x)

How do I do this using frames instead of relations?  I think I want

forall(?x, ?p) and(exists(?q) ?q#Q[x->?x]) :- ?p#P[x->?x]

Unfortunately this is illegal in BLD because heads cannot be formulas, 
only atomic.  How can I conclude (assert) that frame a instance exists 
without giving its OID?  Or do we need some kind of gensym builtin for 

Received on Wednesday, 7 May 2008 07:14:55 UTC