}
// Process role queue
if (!roleQueue.isEmpty()) {
done = false;
final IRoleQueueEntry entry = roleQueue.remove();
if (!succ.lookupConcept(entry.getR()).contains(entry.getB())) {
processNewEdgeTracking(entry.getR(), entry.getB());
}
}
if (!externalQueue.isEmpty()) {
done = false;
final IRoleQueueEntry entry = externalQueue.remove();
processNewEdgeTracking(entry.getR(), entry.getB());
}
} while (!done);
}