W3C home > Mailing lists > Public > public-rif-wg@w3.org > March 2009

RE: [RDF+OWL] Problem with coreifying RDFS entailment embedding

From: Paul Vincent <pvincent@tibco.com>
Date: Wed, 4 Mar 2009 06:10:51 -0800
Message-ID: <A92210407BA7004199621BE5F0AC5D8B970ACD@NA-PA-VBE04.na.tibco.com>
To: "Gary Hallmark" <gary.hallmark@oracle.com>, "Jos de Bruijn" <debruijn@inf.unibz.it>
Cc: "RIF" <public-rif-wg@w3.org>
Pragmatically, I support Gary's argument.

>From a generic RIF perspective, though, is not rdfs:Resource simply an
equivalent to "*" (as in SQL select X from *), and therefore desirable
to maximize rule interchangeability?

Cheers
Paul Vincent 
+1 650 206 2493 / mobile +44 781 493 7229 

> -----Original Message-----
> From: public-rif-wg-request@w3.org
[mailto:public-rif-wg-request@w3.org]
> On Behalf Of Gary Hallmark
> Sent: 04 March 2009 05:40
> To: Jos de Bruijn
> Cc: RIF
> Subject: Re: [RDF+OWL] Problem with coreifying RDFS entailment
> embedding
> 
> rdfs:Resource is kind of like java.lang.Object.  My product supports
> ?v#Object for expert use in rules, but we discourage it.  Rules that
> truly apply to every object/resource are very rare.  I support option
> #1
> as the least objectionable of the 3.
> 
> Jos de Bruijn wrote:
> > While trying to prove that the RIF Core version of the RDFS
embedding
> I
> > came up with [1] is correct, I found out that it is not.  In fact, I
> > believe it is not possible to embed all RIF-RDFS combinations into
> RIF
> > Core in a straightforward manner.  The problem is with
rdfs:Resource.
> > According to the semantics, every object in the domain is in the
> class
> > extension of rdfs:Resource. This is naturally expressed using the
> rule
> > Forall ?x (?x[rdf:type -> rdfs:Resource])
> >
> > However, this rule is not safe.  I see three ways of dealing with
> this
> > problem:
> >
> > 1) disallow using rdfs:Resource in the rules and in RDF triples that
> are
> > not of the form xxx rdf:type rdfs:Resource in the embedding
> >
> > 2) extending the embedding to define rules for all predicate symbols
> > appearing in the rule set, e.g., if ex:p is a binary predicate, we
> add
> > the rules
> > Forall ?x ?y (?x[rdf:type -> rdfs:Resource] :- ex:p(?x,?y))
> > Forall ?x ?y (?y[rdf:type -> rdfs:Resource] :- ex:p(?x,?y))
> >
> > 3) we drop the requirement of the rules being safe
> >
> > I would prefer option 1, because option 2 would make the embedding
> very
> > complicated and I guess it is desirable to have the embedding in RIF
> > Core (ruling out option 3).
> >
> > Best, Jos
> >
Received on Wednesday, 4 March 2009 14:11:37 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:34:03 GMT