void () { final List<JsonSchemaObject> oneOf = new SmartList<>(); for (Operation op : myChildOperations) { if (!op.myState.equals(SchemaResolveState.normal)) continue; oneOf.addAll(andGroup(mySourceNode, op.myAnyOfGroup)); oneOf.addAll(andGroup(mySourceNode, mergeOneOf(op))); } // here it is not a mistake - all children of this node come to oneOf group myOneOfGroup.add(oneOf); }