protected Set<? extends Node<ElkClass>> queryDirectSubClasses(
			final ElkClassExpression classExpression)
			throws ElkInconsistentOntologyException, ElkException {

		final Set<? extends Node<ElkClass>> result;

		if (computeQuery(classExpression, false)) {

			final Taxonomy<ElkClass> taxonomy = classTaxonomyState
					.getTaxonomy();

			final Set<? extends Node<ElkClass>> r = classExpressionQueryState_
					.getDirectSubClasses(classExpression, taxonomy);

			if (r == null) {
				result = taxonomy.getBottomNode().getDirectSubNodes();
			} else {
				result = r;
			}

		} else {
			// classExpression couldn't be indexed; pretend it is a fresh class

			result = Collections.singleton(
					classTaxonomyState.getTaxonomy().getBottomNode());
		}

		incompleteness_.log(
				incompleteness_.getIncompletenessMonitorForClassExpressionQuery(
						classExpressionQueryState_
								.getOccurrenceStore(classExpression)));
		return result;
	}
protected Set < ? extends Node < ElkClass > > queryDirectSubClasses ( final ElkClassExpression classExpression ) throws ElkInconsistentOntologyException , ElkException { final Set < ? extends Node < ElkClass > > result ; if ( computeQuery ( classExpression , false ) ) { final Taxonomy < ElkClass > taxonomy = classTaxonomyState . getTaxonomy ( ) ; final Set < ? extends Node < ElkClass > > r = classExpressionQueryState_ . getDirectSubClasses ( classExpression , taxonomy ) ; if ( r == null ) { result = taxonomy . getBottomNode ( ) . getDirectSubNodes ( ) ; } else { result = r ; } } else { result = Collections . singleton ( classTaxonomyState . getTaxonomy ( ) . getBottomNode ( ) ) ; } incompleteness_ . log ( incompleteness_ . getIncompletenessMonitorForClassExpressionQuery ( classExpressionQueryState_ . getOccurrenceStore ( classExpression ) ) ) ; return result ; }
Computes all atomic direct sub-classes of the supplied (possibly complex)
class expression. The query state is updated accordingly.

@param classExpression
The queried class expression.
@return all atomic direct sub-classes of the supplied class expression.
@throws ElkInconsistentOntologyException
if the ontology is inconsistent
@throws ElkException
if the reasoning process cannot be completed successfully