- From: Dave Reynolds <der@hplb.hpl.hp.com>
- Date: Tue, 11 Dec 2007 11:18:10 +0000
- To: "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>
Michael Kifer wrote: > The reason for having # and ## is that if we introduced frames then we > should complete the cycle and define the most basic object-oriented > concepts as first class citizens (at the cost of only a few lines in the > document). Namely, class membership and hierarchies. This will allow to > round-trip important classes of object-oriented rule-sets. > > What was the reason to include frames if not to allow object-oriented > round-tripping? After all, all these things are syntactic sugars. An > alternative would be to define a bare-bones Datalog and let other people > worry about embedding their languages into Datalog. I think that is a good basis for reframing the discussion. Apart from F-logic are there other object-oriented logic rule languages, and thus a case for RIF supporting inter-operation between them? If the answer is yes then I suggest that should be a separate dialect which would include frames, #/## and presumably the domain/range declarations that Michael previously proposed. We would then have: Core --> BLD --> BLD + OO | `----> PRD Presumably BLD + OO is pretty much an F-Logic dialect. I suggest that this is a phase 2 dialect. The question then is whether frames are needed in Core or in BLD or whether, given Michael's argument that it makes little sense to have them on their own, it would be better to remove them. Currently frames are used as the basis of the RDF embedding. This is simply syntactic sugar and we could drop frames and introduce a three place predicate rif:frame(s, p, o) for the RDF embedding to use instead. One question would then be what parts of the OO extension are needed in PRD. Does PRD need frames or would a simple predicate suffice? As an aside I think this example highlights a problem we have with our linear notion of extension. The OO extension is just one example of a component which might be wanted in multiple dialects. An extensibility notion that is more like "mixins" than "extensions" might be better - but not in the remaining time! Dave -- Hewlett-Packard Limited Registered Office: Cain Road, Bracknell, Berks RG12 1HN Registered No: 690597 England
Received on Tuesday, 11 December 2007 11:18:44 UTC