Search Mailing List Archives
[protege-owl] Object vs. Datatype Properties
std01092 at di.uoa.gr
Fri Sep 22 11:43:02 PDT 2006
I think you have confused the role of a subclass relationship with that
of an Object Property.
The Division would inherit the businessName property from the
superclass, NOT the Business instance with which it is connected with
You can't expect a datatype property to be inherited by a Business
instance that is connected through an object property. It is still
possible to infer the business name of a division but it is not
Properties are inherited by subclassing. That means that, according to
your specifications, when you create a Divison instance you must also
define a businessName for it (as a property inherited by the superclass
Again, the inherited (abstract) properties of the superclass have
nothing to do with the values of the properties of the instance of
Business which is connected through the object property to the instance
of the Division.
To be honest I don't think defining the Division as a subclass of
Business is correct. Doing that means the Division is a Business with
certain properties (like a Man is a Person with certain properties).
I hope I've somehow helped to make this clear.
John Feeney wrote:
> I've been plugging away at an ontology that includes as part of it an
> organization chart. The are a bunch of other things what will utilized
> the information in the org chart for making decision in Jess.
> For a simple org chart I have a class of Business with a subclass of
> Division that has a subclass Section. Business is a subclass of owl:Thing
> For these classes I set up both Object and Datatype Properties:
> The Object Properties are hasDivision and isPartOfBusiness, hasSection
> and is PartOfDivision. Essentially a parent child relationship. This
> looks like these are getting inherited in the Properties View.
> I also setup Datatype Properties for each class for their names
> businessName, divisionName, sectionName thinking that they would be
> inherited based on the class structure. It looks like these Datatype
> Properties are inherited when I look at the properties view of the classes.
> But when I go create an instance of Business and give it a businessName
> - why doesn't the value of the Superclasses Datatype Properties get put
> into the instance of a Division - and like wise why doesn't both
> businessName and sectionName come into the instance of a Section when I
> link them with the above Object Properties?
More information about the protege-owl