private String findParentNodes(final Operator op, String query) {
for (final Operator preOp : op.getPrecedingOperators()) {
if (preOp instanceof Filter) {
query = preOp.serializeOperator() + query;
} else if (preOp instanceof Graph) {
final Graph g = (Graph) preOp;
query = "GRAPH " + g.toString() + " {\n" + query + "}\n";
} else if (preOp instanceof Optional) { // join left subtree...
for (final OperatorIDTuple<Operator> opIDt : preOp
.getSucceedingOperators()) {
if (!opIDt.getOperator().equals(op) && opIDt.getId() == 0) {
query = opIDt