- From: Gary Hallmark <gary.hallmark@oracle.com>
- Date: Thu, 25 Feb 2010 11:06:05 -0800
- To: kifer@cs.sunysb.edu
- CC: Axel Polleres <axel.polleres@deri.org>, RIF <public-rif-wg@w3.org>
In many PR languages, # and ## are builtin (have a fixed interpretation). So oddly we restrict # to occur in conditions only but restrict ## to occur nowhere. I would have preferred to restrict both # and ## to occur in conditions only, but that's ancient history now. Michael Kifer wrote: > 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 19:07:30 UTC