W3C home > Mailing lists > Public > public-rif-wg@w3.org > September 2007

ACTION-350: Write up use case on membership-formula

From: Axel Polleres <axel.polleres@deri.org>
Date: Thu, 27 Sep 2007 17:33:09 -0400
Message-ID: <46FC2195.5090908@deri.org>
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 GMT

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