Noob Doob
Noob Doob

Reputation: 1917

Protege - Create inferred data property value

What I want to do is that, having a specific ontology, to create a new Class and make it so that every instance of the class has a property with a specific value. What I was thinking is, for example, if I have the class MoviesOf1994 and the data property productionYear, I could make MoviesOf1994 a subclass of productionYear value 1994, and from the inferred knowledge every member of MoviesOf1994 will acquire a data property productionYear with a value of 1994. Is there a way to achieve this?

Upvotes: 0

Views: 917

Answers (1)

Kunal Khaladkar
Kunal Khaladkar

Reputation: 493

Well yes, but not in the terms you are thinking. Inheritance in OWL doesn't work the way you may be used to in traditional object oriented languages.

Say you have created a class MoviesOf1994 as the subclass of productionYear value 1994. Because of the open world assumption if you create an individual of type MoviesOf1994 it does not add the dataproperty productionYear 1994 to it. However if you create an individual and give it the property productionYear 1994, it is inferred to be a part of class MoviesOf1994

To do what you were asking, you need to be able to explicitly state that anything without the property productionYear 1994 is not MoviesOf1994, which is a very difficult task (impossible I think, but I may be wrong).

Hope this helps.

Upvotes: 0

Related Questions