W3C home > Mailing lists > Public > www-rdf-interest@w3.org > October 2000

RE: OIL Class Expressions in RDF

From: Jeen Broekstra <jbroeks@cs.vu.nl>
Date: Fri, 6 Oct 2000 11:34:44 +0200 (CEST)
To: "McBride, Brian" <bwm@hplb.hpl.hp.com>
cc: "'Graham Klyne'" <GK@Dial.pipex.com>, www-rdf-interest@w3.org
Message-ID: <Pine.GSO.4.20.0010061106530.3738-100000@flits.cs.vu.nl>

Hello Brian,

It seems to me the confusion stems from the fact that we use
rdfs:subClassOf to inherit from class expressions. What we
actually did, was extend the range of rdfs:subClassOf to include
class expressions, where the semantics of such an inheritance
would be defined at the OIL level (namely, meaning that the class
to which the expression evaluates subsumes the referring class).

However, this is an error in our specification, one can not
extend the range of a property in such a way. Our alternative
option is to introduce our own subclass statement,
oil:subClassOf, which will be used to model subsumption when
class expressions are involved.

To use the example of the herbivore again[1]:

    <rdfs:Class ID="herbivore">
	...
	<rdfs:subClassOf rdf:resource="#animal"/>
	<oil:subClassOf>
	    <oil:not>
		<oil:hasOperand rdf:resource="#carnivore"/>
	    </oil:not>
	</oil:subClassOf>
	...
    </rdfs:Class>

It is somewhat of a disappointment to have to do it this way,
however, fortunately very little information is lost to the RDF
processor, and we still have the full expressiveness we wanted
for OIL, and a clean direct mapping between the two languages.

It also seems to me that this should solve the problems you saw
with the inheritance mechanism.

There will be a publication about the updated version of our
mapping quite soon I expect.

Regards,

Jeen

[1] Actually, this example of the herbivore definition is not a
    very good one from a logical perspective[2], because the
    disjointness of herbivore and carnivore should be defined
    seperately in OIL, not in the same class definition. However,
    for the illustration of how the syntax works, the example
    will do ;)
    
[2] For the logically correct definition, see the OIL technical
    report (p. 15-16) at http://www.cs.vu.nl/~dieter/oil/TR/oil.pdf
-- 
                               Vrije Universiteit, Faculty of Sciences
Jeen Broekstra              Division of Mathematics & Computer Science
jbroeks@cs.vu.nl                                    de Boelelaan 1081a
http://www.cs.vu.nl/~jbroeks        1081 HV Amsterdam, the Netherlands
Received on Friday, 6 October 2000 06:05:27 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:51:44 GMT