checking data property on every individual in a transitive object property

hello everyone,

I want to model things being connected, ie reachable from each other.
For this i have a transitive "reachable" property which works fine alone.

For the reachability to be valid in certain cases i must also check if every
individual in the transitive chain has a certain dataproperty like
"canHoldMaximumWeight > 5".
Example:
A -reaches-> B -reaches-> C
A hasMaximumWeight 3
B hasMaximumWeight 2
C hasMaximumWeight 4

So i want to ask all individuals that are reachable from A, but only using
individuals that can hold a weight of 3 or greater.
If i try to write this in DL: hasMaximumWeight some integer [>=3] and
reaches some Thing.
I get the answer of C, but the only way to reach C is through B, which i
want to exclude from the "transitivity" because of the weight issue

Is this possible in OWL (using Protege?)? Am I going all wrong about the
modelling of this?
I have found property chains, but as far as i see i can only combine object
properties this way and not mix them with data properties!?

Thanks,
Jonathan

Received on Tuesday, 5 July 2011 11:57:46 UTC