On Nov 28, 2006, at 12:03 AM, Gerhard Austaller wrote:

> Hi

>

> Could somebody give me an example where it makes sense to create

> subproperties and what benefit could gained from it? E.g. if I have a

> property hasSibling, I could further create subproperties hasBrother

> and hasSister. Would that make sense? If so, why?

Because it gives you more flexibility in querying as well as asserting.

On the query side, you can use more general relationships to get

information, in other words you might want to get all siblings and

use the superproperty to get that.

On the more specific side, a proper definition of the subproperty

with appropriate range restrictions gives you additional inferences.

The filler of hasBrother would be a MalePerson, which is information

that you would not directly have with just a hasSibling property.

You would have to assert that separately.

>

> Further, how can I decide if a candiate for a subproperty is really a

> proper subproperty? With subclasses I always can ask myself, if the

> subclass "is-also-a" superclass but what's the question to ask myself

> with subproperties?

Pretty much the same question. If the subproperty is a narrower,

more specialized version of the superproperty, then it is correctly

defined as a subproperty. This can be thought of in terms of logical

implication. "If R-sub always implies R, then it is likely to be a

subproperty." In your example, hasBrother always implies hasSibling,

but not vice versa.

If it helps, you can think about this in terms of sets. A property

defines a set of binary tuples. If another property defines a set of

binary tuples that is always a subset of the first set, then you have

a subproperty. This is true of the sets <x,y: brother(x,y)> is a

subset of <x,y: sibling(x,y)>.

_______________________________________________

protege-owl mailing list

[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owlInstructions for unsubscribing:

http://protege.stanford.edu/doc/faq.html#01a.03