- From: Ken Baclawski <kenb@ccs.neu.edu>
- Date: Tue, 3 Jul 2001 16:04:02 -0400 (EDT)
- To: Richard Fikes <fikes@KSL.Stanford.EDU>
- cc: www-rdf-logic <www-rdf-logic@w3.org>
On Tue, 3 Jul 2001, Richard Fikes wrote: [portion omitted] > (Type R Restriction) > (onProperty R parent) > (toClass R person) > > We can certainly conclude that the parents of all objects that are type > R are persons. However, how can we legitimately conclude that an object > all of those parents are persons is type R when the very next RDF > statement in the file may be "(hasValue R Joe)"? Those four statements > together mean that in order to be type R an object has to have Joe as a > parent and all of its parents must be persons. Thus, the first three > RDF statements give us a different set of sufficient conditions then do > the four RDF statements. The problem is that if there is no way of > indicating that the definition of a non-primitive class is closed > ("That's all, folks"), then there is no way for that definition to > provide a set of sufficient conditions for membership in the class. Why not use a cardinality constraint to bound the number of toClass (or hasValue) values? (type RtoClass Restriction) (onProperty RtoClass toClass) (cardinality RtoClass "1") (type R RtoClass) This restricts the number of toClass values of the R resource to be exactly 1. Since you know one of them, it follows that you know them all. One can similarly restrict the number of hasValue values to be 0: (type RhasValue Restriction) (onProperty RhasValue hasValue) (cardinality RhasValue "0") (type R RhasValue) Ken Baclawski Versatile Information Systems Ken@Baclawski.com
Received on Tuesday, 3 July 2001 16:04:07 UTC