void printOperator(ISparqlPrinter p, String op, List <IResource> args) { if (p.isNested()) { p.print("("); } bool set = isSetOperator(op); if (args.Count == 1 && !set) { p.print(op); printNestedExpressionString(p, args[0]); } else { // assuming parameters.size() == 2 printNestedExpressionString(p, args[0]); p.print(" "); p.print(op); p.print(" "); if (set) { p.print("("); for (int i = 1; i < args.Count; i++) { if (i > 1) { p.print(", "); } printNestedExpressionString(p, args[i]); } p.print(")"); } else { printNestedExpressionString(p, args[1]); } } if (p.isNested()) { p.print(")"); } }