- From: Adrian Paschke <adrian.paschke@gmx.de>
- Date: Sat, 9 May 2009 13:36:38 +0200
- To: "'Gary Hallmark'" <gary.hallmark@gmail.com>, "'Dave Reynolds'" <der@hplb.hpl.hp.com>
- Cc: "'Sandro Hawke'" <sandro@w3.org>, "'RIF WG'" <public-rif-wg@w3.org>
>Gary Hallmark wrote: > >ok, I can implement quantification over property names using Java >reflection, so how about > >Frame ::= TERM '[' ((Const|Var) '->' TERM)* ']' That might lead to problems in round-tripping between frame languages and relation based languages. A typical mapping from frames to relations would be ex:Customer1[ex:name -> "John"] -> ex:name(ex:Customer1 "John") If quantification over properties is allowed, this would lead to higher-order logic. -Adrian On Fri, May 8, 2009 at 9:13 AM, Dave Reynolds <der@hplb.hpl.hp.com> wrote: > Sandro Hawke wrote: >>>> >>>> 2. PRD and Core allow frame properties to be TERMs, i.e. Frame ::= >>>> TERM '[' (TERM '->' TERM)* ']' >>>> >>>> This is likely to be a problem for most production rule engines. It >>>> would be much easier if Frame ::= TERM '[' (Const'->' TERM)* ']' >>> >>> Agreed. >> >> I'm not sure this is a good idea. >> >> Partly for the sake of argument, let me suggest an alternative. Take >> frames out of Core and PRD. If we restrict frames as you're proposing, >> then (as far as I can tell) they don't actually provide any >> functionality. Wherever you were using s[p->o], just use p(s,o). Why >> have two parallel features that provide exactly the same functionality? >> As I understood it, the whole point of frames was to allow for >> quantifying over predicates. >> >> Dave, with this change, how would you implement RDFS (etc) rules? > > Sorry, I was misunderstanding the suggested change and spoke without > thinking clearly. Must have been still asleep. > > I assumed, wrongly, that what Gary was trying to do was to exclude Lists and > external functions from frame slots, not stop you using vars to quantify > over slot names. > > You are right, forcing frame slots to be only constants would be too strong > and would invalidate their use in RDF. > > I withdraw my "Agreed" and will go get some more caffeine to see if I can > get my brain working again. > > Dave > > [Though of course frames are just syntactic sugar for something like > rif:triple(s,p,o), they don't provide any added expressivity.] > > -- > Hewlett-Packard Limited > Registered Office: Cain Road, Bracknell, Berks RG12 1HN > Registered No: 690597 England > > -- Cheers, Gary Hallmark
Received on Saturday, 9 May 2009 11:37:15 UTC