x.addAllTypes(y.getDepends(), ds);
// for all edges (z, r, y) add an edge (z, r, x)
EdgeList inEdges = y.getInEdges();
for (int e = 0; e < inEdges.size(); e++) {
Edge edge = inEdges.edgeAt(e);
Individual z = edge.getFrom();
Role r = edge.getRole();
DependencySet finalDS = ds.union(edge.getDepends(), abox.doExplanation());