code: def _modify_schema(self, data_schema, model, logger):
      if not data_schema:
          return data_schema
  
      for k in data_schema[0]:
          old_schema = data_schema[0][k]
          if k == "op_types" or (
              isinstance(k, Schema) and k._schema == "op_types"
          ):
              new_schema = And(
                  old_schema,
                  lambda n: validate_op_types(model, n, logger),
              )
              data_schema[0][k] = new_schema
          if k == "op_names" or (
              isinstance(k, Schema) and k._schema == "op_names"
          ):
              new_schema = And(
                  old_schema,
                  lambda n: validate_op_names(model, n, logger),
              )
              data_schema[0][k] = new_schema
  
      data_schema[0] = And(
          data_schema[0], lambda d: validate_op_types_op_names(d)
      )
  
      return data_schema
  
file_path: auptimizer/src/aup/compression/torch/utils/config_validation.py
imports: from schema import Schema, And, SchemaError
label_desc: Use image node_id 2 for calling the CompressorSchema obj's underlying member method code with example usage: obj._modify_schema(data_schema, model, logger) and returns: data_schema, data_schema