code: @Override
      public boolean isSatisfiable(OWLClassExpression classExpression)
              throws ReasonerInterruptedException, TimeOutException,
              ClassExpressionNotInProfileException, FreshEntitiesException,
              InconsistentOntologyException {
          if (classExpression.isAnonymous()) {
              return false;
          } else {
              // If the node that contains OWLNothing contains this OWLClass then
              // it is not satisfiable
              Object id = getId(classExpression.asOWLClass());
              au.csiro.ontology.Node bottom = getTaxonomy().getBottomNode();
              return !bottom.getEquivalentConcepts().contains(id);
          }
      }
docs: A convenience method that determines if the specified class expression is
  satisfiable with respect to the reasoner axioms.
  
  @param classExpression
  The class expression
  @return <code>true</code> if classExpression is satisfiable with respect
  to the set of axioms, or <code>false</code> if classExpression is
  unsatisfiable with respect to the axioms.
  
  @throws InconsistentOntologyException
  if the set of reasoner axioms is inconsistent
  @throws ClassExpressionNotInProfileException
  if <code>classExpression</code> is not within the profile
  that is supported by this reasoner.
  @throws FreshEntitiesException
  if the signature of the classExpression is not contained
  within the signature of the set of reasoner axioms.
  @throws ReasonerInterruptedException
  if the reasoning process was interrupted for any particular
  reason (for example if reasoning was cancelled by a client
  process)
  @throws TimeOutException
  if the reasoner timed out during a basic reasoning operation.
  See {@link #getTimeOut()}.