title: OWL Object Property domain/range restrictions to the same level classes
body: <p>I want to design an object property which is always linked only between the same level of classes. For example,</p>
  
  <p><a href="https://i.stack.imgur.com/973FS.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/973FS.png" alt="enter image description here"></a></p>
  
  <p>I want to limit the property <code>isCounterPartOf</code> to be an arc of the sibling nodes which belong to the same upper class, such as</p>
  
  <pre><code>house isCounterPartOf cars
  bad isCounterPartOf good
  slow isCounterPartOf fast
  </code></pre>
  
  <p>and the property should NOT link between classes of different levels (those having different ancestors), like</p>
  
  <pre><code>cars isCounterPartOf bad
  cars isCounterPartOf object
  cars isCounterPartOf Entity
  </code></pre>
  
  <p>Is there a way to do this with defining only one property?</p>