Inheriting property restrictions

Hi everyone,

I have a two-part question that the OWL specs don't seem to address.

1. Does a subClass inherit its parents' property restrictions? I  
assume it does, but what if the subclass declares a restriction of  
its own for the same property? Which restriction should be paid  
attention to?

For example, say I have a class "Car" which restricts the property  
"PaintColor" to the class "Colors":
<owl:Class rdf:ID="Car">
	<rdfs:subClassOf>
		<owl:Restriction>
			<owl:onProperty rdf:resource="#PaintColor" />
			<owl:allValuesFrom rdf:resource="#Colors" />
		</owl:Restriction>
	</rdfs:subClassOf>
</owl:Class>

But then a subclass of "Car" is added, named "WebCar," and it  
restricts the same property (PaintColor) to "HTMLColors," which is a  
totally different class than "Colors."
<owl:Class rdf:ID="WebCar">
	<rdfs:subClassOf rdf:resource="#Car" />
	<rdfs:subClassOf>
		<owl:Restriction>
			<owl:onProperty rdf:resource="#PaintColor" />
			<owl:allValuesFrom rdf:resource="#HTMLColors" />
		</owl:Restriction>
	</rdfs:subClassOf>
</owl:Class>

I'm not even sure if that's the correct way to express what I'm  
saying in RDF/XML, but you get the picture.

Which restriction on PaintColor should be heeded?

2. If you were building a tool that output OWL, would it make sense  
to prevent the user from creating the restriction that "WebCar's  
PaintColor must be from HTMLColors," if we knew that a parent of  
WebCar already had a restriction on PaintColor?

Thanks in advance!

- ben syverson
likn.org

Received on Wednesday, 6 September 2006 21:23:48 UTC