elk-reasoner/src/main/java/org/semanticweb/elk/reasoner/Reasoner.java
public synchronized Set<? extends Node<ElkClass>> getTypes(
			ElkNamedIndividual elkNamedIndividual, boolean direct)
			throws ElkException {
		InstanceNode<ElkClass, ElkNamedIndividual> node = getInstanceNode(
				elkNamedIndividual);
		return direct ? node.getDirectTypeNodes() : node.getAllTypeNodes();
	}
public synchronized Set<? extends Node<ElkClass>> getTypes(
			ElkNamedIndividual elkNamedIndividual, boolean direct)
			throws ElkException {
		InstanceNode<ElkClass, ElkNamedIndividual> node = getInstanceNode(
				elkNamedIndividual);
		return direct ? node.getDirectTypeNodes() : node.getAllTypeNodes();
	}
Return the (direct or indirect) types of the given
{@link ElkNamedIndividual}. The method returns a set of {@link Node}s,
each of which representing an equivalent class of types. Calling of this
method may trigger the computation of the realization, if it has not been
done yet.

@param elkNamedIndividual
the {@link ElkNamedIndividual} for which to return the types
{@link Node}s
@param direct
if {@code true}, only direct types are returned
@return the set of {@link Node}s for the direct or indirect types of the
given {@link ElkNamedIndividual} according to the specified
parameter
@throws ElkException
if the result cannot be computed