protected @Nullable Operation createExpandOperation(@NotNull JsonSchemaObject schema,
                                                      @NotNull JsonSchemaService service,
                                                      @Nullable JsonSchemaNodeExpansionRequest expansionRequest) {
    Operation forConflict = getOperationForConflict(schema, service, expansionRequest);
    if (forConflict != null) return forConflict;
    if (Registry.is("json.schema.object.v2") && schema.hasChildNode(ANY_OF) || schema.getAnyOf() != null) return new AnyOfOperation(schema, service, expansionRequest);
    if (Registry.is("json.schema.object.v2") && schema.hasChildNode(ONE_OF) || schema.getOneOf() != null) return new OneOfOperation(schema, service, expansionRequest);
    if (Registry.is("json.schema.object.v2") && schema.hasChildNode(ALL_OF) || schema.getAllOf() != null) return new AllOfOperation(schema, service, expansionRequest);
    if (Registry.is("json.schema.object.v2") && schema.hasChildNode(IF) || schema.getIfThenElse() != null) return new IfThenElseBranchOperation(schema, expansionRequest, service);
    return null;
  }
protected @Nullable Operation createExpandOperation(@NotNull JsonSchemaObject schema,
                                                      @NotNull JsonSchemaService service,
                                                      @Nullable JsonSchemaNodeExpansionRequest expansionRequest)