- From: Jon Hanna <jon@spin.ie>
- Date: Thu, 22 May 2003 11:00:56 +0100
- To: <www-rdf-interest@w3.org>
> Hi Folks, > > Suppose that I have this class heirarchy: > > River > | > Flueve > | > Blah > > Suppose that the property, emptiesInto, has a domain of River: > > <owl:ObjectProperty rdf:ID="emptiesInto"> > <rdfs:domain rdf:resource="#River"/> > <rdfs:range rdf:resource="#BodyOfWater"/> > </owl:ObjectProperty> > > Suppose the Flueve constrains emptiesInto to have a range of #Sea: > > <owl:Class rdf:ID="Flueve"> > <rdfs:subClassOf rdf:resource="#River"/> > <rdfs:subClassOf> > <owl:Restriction> > <owl:onProperty rdf:resource="#emptiesInto"/> > <owl:allValuesFrom rdf:resource="#Sea"/> > </owl:Restriction> > </rdfs:subClassOf> > </owl:Class> > > Question: what is the range of emptiesInto when used in the Blah > Class? /Roger In the absence of a further restriction then it would be #Sea. It would be possible to further restrict the range for Blah, but that must be compatible with the fact that all Blahs are Flueves and hence it must be either a subClassOf #Sea, or at least not disjoint with #Sea (in which case the union of the two restrictions will apply): Given <#Lake> <owl:disjointWith> <#Sea> . <#InlandSea> <rdfs:subClassOf> <#Sea> . <#Briney> <rdfs:subClassOf> <#BodyOfWater> . Then you would be clearly allowed to restrict the range of #emptiesInto to #InlandSea, and clearly not allowed to restrict it to #Lake. #Briney is less clear. It may be that #Briney is a subClassOf #Sea, but we just don't have the triple stating this, in which case it's clearly allowed. Likewise it may be that #Briney is disjointWith #Sea, in which case it's clearly not allowed. It may also be that #Briney overlaps with #Sea, in which case it is allowed, but the restriction to #Sea still applies. Hence if you restrict #emptiesInto predicates to have a range of #Briney when the object is a #Blah then anything a #Blah empties into must be both a #Briney and also a #Sea. Or alternatively if you are told that a #Blah emptiesInto #JonsRunOutOfExampleNames then you know that <#JonsRunOutOfExampleNames> <rdf:type> <#Briney> . <#JonsRunOutOfExampleNames> <rdf:type> <#Sea> .
Received on Thursday, 22 May 2003 06:01:23 UTC