title: Disjoint Object Properties vs Disjoint Classes
body: <p>If you look at the <a href="http://www.w3.org/TR/owl2-syntax/" rel="nofollow">OWL 2 specification</a>, the following axioms have been defined:</p>
  
  <p><strong>Disjoint Properties</strong></p>
  
  <blockquote>
    <p>DisjointObjectProperties( a:hasFather a:hasMother ) Fatherhood is disjoint with motherhood.
    ObjectPropertyAssertion( a:hasFather a:Stewie a:Peter ) Peter is Stewie's father.
    ObjectPropertyAssertion( a:hasMother a:Stewie a:Lois )  Lois is the mother of Stewie.</p>
  </blockquote>
  
  <p><strong>Disjoint Classes</strong></p>
  
  <blockquote>
    <p>DisjointClasses( a:Boy a:Girl ) Nothing can be both a boy and a girl.<br>
    ClassAssertion( a:Boy a:Stewie )    Stewie is a boy.</p>
  </blockquote>
  
  <p>So my question is that if I want define the following:</p>
  
  <pre><code>Declaration( NamedIndividual( a:Peter ) )
  Declaration( NamedIndividual( a:Lois ) )
  ClassAssertion( a:Father a:Peter )
  ClassAssertion( a:Mother a:Lois )
  </code></pre>
  
  <p>and then to define disjointness, do I need (1) or (2) or both at the same time:</p>
  
  <pre><code>(1) DisjointObjectProperties( a:hasFather a:hasMother )
  (2) DisjointClasses( a:Mother a:Father )
  </code></pre>
  
  <p>to be able to make the reasoner aware that <strong>No mother can be father</strong>? Isn't it the case that defining both would just be redundant?</p>