- From: Sean B. Palmer <sean@mysterylights.com>
- Date: Thu, 7 Jun 2001 14:49:12 +0100
- To: "David Martin" <martin@ai.sri.com>, <www-rdf-logic@w3.org>
> I want to declare a property that will take a class as its value
(rather
> than an instance of a class).
Use daml:hasValue on a DAML restriction for that.
> For instance, I want to declare class MyClass with property
> myProperty, and say that the range of myProperty is Class,
> so that an instance of MyClass can have myProperty with,
> say, class Person as its value.
Er... that's not what you're asking for above. Why would the range of
myProperty be Class, e.g. if you want it to take Person as a value? Is
Person the only instance of Class?
If you want Person to be the only *value* that myProperty can take,
try:-
:MyClass rdfs:subClassOf
[ daml:onProperty :myProperty;
daml:hasValue :Person ] .
> (2) Now, what if I want to say that the range of myPropery is
> Class (as above), AND that its values are restricted to the
> subclasses of some particular class, say, Animal. Is this doable?
> And if so, how would this range be declared?
That would be an intersectionOf, I think... you want to say that the
range is the intersection of Class and a subClassOf Animal?
:x rdfs:range
[ daml:intersectionOf
(:Class [ rdfs:subClassOf :Animal ]) ] .
XML RDF of these things available upon request...
--
Kindest Regards,
Sean B. Palmer
@prefix : <http://webns.net/roughterms/> .
:Sean :hasHomepage <http://purl.org/net/sbp/> .
Received on Thursday, 7 June 2001 09:48:29 UTC