code: def _enforce_property(data: Any, property: Property):
      if isinstance(property.dtype, DataType):
          return _enforce_datatype(data, property.dtype)
      if isinstance(property.dtype, Array):
          return _enforce_array(data, property.dtype)
      if isinstance(property.dtype, Object):
          return _enforce_object(data, property.dtype)
      raise MlflowException(
          f"Failed to enforce schema of data `{data}` with dtype `{property.dtype}`"
      )
  
imports: import datetime
  import decimal
  import json
  import logging
  import os
  from copy import deepcopy
  from typing import Any, Dict, List, Optional, Union
  import numpy
  import pandas
  from mlflow.exceptions import INVALID_PARAMETER_VALUE, MlflowException
  from mlflow.models import Model
  from mlflow.store.artifact.utils.models import get_model_name_and_version
  from mlflow.types import DataType, ParamSchema, ParamSpec, Schema, TensorSpec
  from mlflow.types.schema import Array, Object, Property
  from mlflow.types.utils import TensorsNotSupportedException, _infer_param_schema, clean_tensor_type
  from mlflow.utils.annotations import experimental
  from mlflow.utils.proto_json_utils import NumpyEncoder, dataframe_from_parsed_json, parse_tf_serving_input
  from mlflow.utils.uri import get_databricks_profile_uri_from_artifact_uri
label_desc: Use image node_id 18 for calling a global function with example usage: _enforce_property(data, property) and returns: _enforce_datatype, _enforce_array, _enforce_object