W3C home > Mailing lists > Public > public-rif-wg@w3.org > February 2010

Re: [RIF-RDF-OWL/Core] ## vs. rdfs:subClassOf (Fwd: A technical RIF question)

From: Michael Kifer <kifer@cs.sunysb.edu>
Date: Thu, 25 Feb 2010 05:20:17 -0500
To: Axel Polleres <axel.polleres@deri.org>
Cc: RIF <public-rif-wg@w3.org>
Message-ID: <20100225052017.20f68d30@kiferserv>
I believe that the PRD group (or some subset of it) felt that it complicates the
life for PRD.
michael


On Thu, 25 Feb 2010 10:02:09 +0000
Axel Polleres <axel.polleres@deri.org> wrote:

> Hi all,
> 
> Ivan raised the question why ## was not in RIF Core... I tried to exploit my memories on this as good as I can, but I am not 100% sure whether I got everything right and would seek confirmation of the group. Also, there's a small issue which I don't like and want to raise here...
> 
> 
> since from the mails below, the thread may be hard to grasp, let me summarise:
> 
> Ivan asked for the reason of the absence of ## in RIF Core - in the context of modelling rdfs:subclassOf .
> I didn't really remember precisely the details why we dropped ## from Core, but pointed Ivan to the difference 
> between ## and rdfs:subclassOf , that is, ## not being reflexive.
> 
> However, what then still worried me a bit is following:
> Note that http://www.w3.org/TR/rif-rdf-owl/ restricts RDF-OWL interpretations 
> in such a way that ## implies rdfs:subclass but not the other way around.
> The Embedding of RIF combinations in Section 9.1.3 of
> http://www.w3.org/TR/rif-rdf-owl/ enforces this by a rule... which then makes even the 
> embedding of simple RDF entailment go outside RIF Core... I am not sure whether I like this. :-|
> 
> Ivan, suspected even a "bug" here, by the assumption that if I talk about simple and RDF interpretations,
> I shouldn't worry about the RDFS vocabulary, but I wouldn't go that far:
> 
> As far as I can see, this is not problematic. We just restrict that when you throw RIF and RDF stuff together,
> a link is made from ## to rdf:subclasss... that implies that anything which is stated as ## in RIF is 
> exported to rdfs:subclassOf (but NOT the other way around!) only in RIF-RDFS-entailment this would have 
> cross-effects (since RDFS interpretations imply reflexivity on rdfs:subclass), but not in RIF-Simple and RIF-RDF.
> 
> Still, and here I think Ivan's concern plays a role, I don't like that now for embedding simple 
> RDF or RDF in RIF, I need non-core rules... in fact, it seems to me that the rule
> in Section 9.1.3 of http://www.w3.org/TR/rif-rdf-owl/ 
> 
>  Forall ?x ?y (?x[rdfs:subClassOf -> ?y] :- ?x ## ?y]) ))
> 
> is irrelevant for Simple and RDF entailments. Particularly, this is the case as long as the  RIF ruleset in the combination does not use ##.
> Can you confirm this?
> 
> If I had a wishlist, I would opt for moving the semantic condition on 
> 
> "7. IEXT(IS(rdfs:subClassOf)) is a superset of the set of all pairs (a, b) in Dind x Dind such that Itruth(Isub(a,b))=t;"
> 
> to just apply for RIF-RDFS-models "upwards"
> 
> Can we still change this?
> 
> Axel
> 
> 
> Begin forwarded message:
> 
> > From: "Ivan Herman" <ivan@w3.org>
> > Date: 25 February 2010 09:46:04 GMT
> > To: "Polleres, Axel" <axel.polleres@deri.org>
> > Cc: "Sandro Hawke" <sandro@w3.org>
> > Subject: Re: A technical RIF question
> > 
> > 
> > 
> > On 2010-2-25 10:10 , Axel Polleres wrote:
> >> 
> >> On 25 Feb 2010, at 09:03, Ivan Herman wrote:
> >> 
> >>> 
> >>> On Feb 25, 2010, at 09:56 , Axel Polleres wrote:
> >>> 
> >>>> Phew, IIRC this has some historic reasons, which I don't really remember.
> >>>> 
> >>>> Firstly, ## is not the same as rdfs:subclass (e.g. ## is NOT reflexive, IIRC)
> >>>> 
> >>>> The simple solution is, similar to what I answered to Dan on owl:sameAs:
> >>>> 
> >>>> just use rdfs:subclass in your rules and don't bother about ## they are not the same thing...
> >>>> 
> >>> 
> >>> Well, o.k. I will try to avoid referring to ## in my tutorial part then...:-(
> >>> 
> >>>> What worries me a bit more:
> >>>> Note that http://www.w3.org/TR/rif-rdf-owl/ restricts RDF-OWL interpretations 
> >>>> in such a way that ## implies rdfs:subclass but not the other way around.
> >>>> The Embedding of RIF combinations in Section 9.1.3 of
> >>>> http://www.w3.org/TR/rif-rdf-owl/ enforces this by a rule... which then makes even the 
> >>>> embedding of simple RDF entailment go outside RIF Core... I am not sure whether I like this. :-|
> >>>> 
> >>> 
> >>> Oops. But isn't this a bug? If I talk about an RDF interpretation, than the RDFS vocabulary is immaterial. and subClassOf is in the RDFS vocabulary and _not_ in the RDF vocabulary!
> >> 
> >> As far as I can see, this is not problematic. We just restrict that when you throw RIF and RDF stuff together,
> >> a link is made from ## to rdf:subclasss... that implies that anything which is stated as ## in RIF is exportet to rdfs:subclassOf (but NOT the other way around!) 
> >> only in RIF-RDFS-entailment this would have cross-effects (since RDFS interpretations imply reflexivity on rdfs:subclass), but not in RIF-Simple and RIF-RDF
> >> 
> >> If you agree, I should carry this discussion to the RIF group...
> >> 
> > 
> > Sure
> > 
> > Ivan
> > 
> > 
> >> HTH,
> >> Axel
> >> 
> >> 
> >>> 
> >>> I think this is a bug that you should report before this goes to PR:-(
> >>> 
> >>> Ivan
> >>> 
> >>> 
> >>>> I am not really swapped in on that at the moment, and for more details and clarifications, 
> >>>> I'd prefer to get back to the group... 
> >>>> 
> >>>> Axel
> >>>> 
> >>>> On 25 Feb 2010, at 08:22, Ivan Herman wrote:
> >>>> 
> >>>>> (background: I try to update my tutorial slide set...)
> >>>>> 
> >>>>> Question: what is the background of the fact that '#' is defined for
> >>>>> Core and '##' is not?
> >>>>> 
> >>>>> For many RDF users I would think Core (or maybe strongly safe Core)
> >>>>> would be the natural rule set to use in the sense that would cover most
> >>>>> of their needs (at least I believe). The fact of having '#' is fine, it
> >>>>> is the equivalent of rdf:type. But, for RDFS users, so to say, suddenly
> >>>>> there is this gap of '##'; either they have to keep to Core and use
> >>>>> explicitly rdfs:subClassOf, or they use '##', thereby getting into BLD...
> >>>>> 
> >>>>> So: what is the technical reason for this?
> >>>>> 
> >>>>> Thanks
> >>>>> 
> >>>>> Ivan
> >>>>> -- 
> >>>>> 
> >>>>> Ivan Herman, W3C Semantic Web Activity Lead
> >>>>> Home: http://www.w3.org/People/Ivan/
> >>>>> mobile: +31-641044153
> >>>>> PGP Key: http://www.ivan-herman.net/pgpkey.html
> >>>>> FOAF   : http://www.ivan-herman.net/foaf.rdf
> >>>>> vCard  : http://www.ivan-herman.net/HermanIvan.vcf
> >>>>> 
> >>>> 
> >>> 
> >>> 
> >>> ----
> >>> Ivan Herman, W3C Semantic Web Activity Lead
> >>> Home: http://www.w3.org/People/Ivan/
> >>> mobile: +31-641044153
> >>> PGP Key: http://www.ivan-herman.net/pgpkey.html
> >>> FOAF: http://www.ivan-herman.net/foaf.rdf
> >>> 
> >>> 
> >>> 
> >>> 
> >>> 
> >> 
> > 
> > -- 
> > 
> > Ivan Herman, W3C Semantic Web Activity Lead
> > Home: http://www.w3.org/People/Ivan/
> > mobile: +31-641044153
> > PGP Key: http://www.ivan-herman.net/pgpkey.html
> > FOAF   : http://www.ivan-herman.net/foaf.rdf
> > vCard  : http://www.ivan-herman.net/HermanIvan.vcf
> > 
> 
> 
> 
> 
Received on Thursday, 25 February 2010 10:20:47 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 25 February 2010 10:20:48 GMT