- From: Axel Polleres <axel.polleres@deri.org>
- Date: Thu, 27 Sep 2007 17:33:09 -0400
- To: "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>
http://www.w3.org/2005/rules/wg/track/actions/350 The class membership notation '#' is intended to reflect the common feature of many rule and object oriented languages for being able to express memebership of a class (or type?) A possible use for this is for RDF's rdf:type construct... To reflect this in the current RDF/RDFS embeddings, one could add to 1) Add to RDF embedding: Forall ?c,?o ?o#?c :- ?o[rdf:type -> ?c] ------- ACTION done, what follows is additional discussion ;-) -------- This alone, obviously doesn't make too much sense, but in connection with the additional subclass notation '##' one could safe two rules in the RDFS embedding: 2) Add to RDFs embedding: Forall ?c1,?c2 ?c1##?c2 :- ?c1[rdfs:subclassOf-> ?c2] and remove: Forall ?x,?y,?z ?z[rdf:type -> ?y] :- And (?x[rdfs:subClassOf -> ?y] ?z[rdf:type -> ?x]), Forall ?x,?y,?z ?x[rdfs:subClassOf -> ?z] :- And (?x[rdfs:subClassOf -> ?y] ?y[rdfs:subClassOf -> ?z]), In total, the use of the special notation adds two rules and saves us two rules in the RDF/RDFS embedding. Pretty much equals out ;-) That's why I am absolutely neutral on whether we chould keep that feature or no. Axel -- Dr. Axel Polleres email: axel@polleres.net url: http://www.polleres.net/
Received on Thursday, 27 September 2007 21:33:56 UTC