- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Tue, 04 May 2004 12:23:13 -0400 (EDT)
- To: pdawes@users.sourceforge.net
- Cc: www-rdf-interest@w3.org
From: "Phil Dawes" <pdawes@users.sourceforge.net> Subject: less-restrictive range and domain terms Date: Tue, 4 May 2004 15:51:52 +0100 > Hi All, > > I've recently found myself wanting a less-restrictive version of > rdfs:range (or owl:allValuesFrom) and rdfs:domain. I want to say > 'property *can* have range of class foo' rather than 'property *must* > have range of class foo'. Hmm. First of all, there is no 'property *must* have range of class foo' in RDF or OWL. All there is is ``property *has* range class foo''. Second, what do you mean by 'property *may* have range of class foo'? There is a very wide variety of interpretations for this phrase, including ``adding a range of foo for property would not produce an inconsistency'' and ``it would make sense to add a range of foo for property''. > I first came across this requirement with my veudas RDF browser when > consuming RDF without schema information. Hints like 'can have range' > help when rendering the editing UI. They can also be inferred easily > from the RDF. So, show us the inferences! In general, I am very skeptical of this sort of claim. Without some sense of the meaning you want, there is no way to determine whether the inferences you would provide are correct. > The second example was attempting to implement a cross-store querying > mechanism - I want to make statements like 'in the context of store A, > property canHaveRange class' This works as a useful hint for the query > chopper-upper to decide which patterns to run against which stores. > > Does such a term exist anywhere or shall i make one up? There have been some attempts to incorporate some sort of pragmatic range information into KR laguages. I believe that the Galen project had this sort of construct in some early versions of its representation language. > (or is there a better way? :-) Well, yes. :-) 1/ Let us know what you think this construct means informally. The above description is much too vague to serve, by the way. Intuitive examples would help, especially if they include both positive and negative versions of the construct. 2/ Provide a proof or model theory for a language that includes this construct. (I would prefer a model theory, of course.) Only once that is done can your proposal can be truely evaluated. (Yes, this is not a trivial request.) > Many thanks, > > Phil Peter F. Patel-Schneider Bell Labs Research PS: In some sense this construct exists already. Just use rdfs:canhaverange and make statements like ex:foo rdfs:canhaverange ex:bar . Inferences are easy - no special inferences are provided!
Received on Tuesday, 4 May 2004 12:24:24 UTC