code: def _enforce_datatype(data: Any, dtype: DataType):
      if not isinstance(dtype, DataType):
          raise MlflowException(
              f"Expected dtype to be DataType, got {type(dtype).__name__}"
          )
      if not np.isscalar(data):
          raise MlflowException(
              f"Expected data to be scalar, got {type(data).__name__}"
          )
      # Reuse logic in _enforce_mlflow_datatype for type conversion
      pd_series = pd.Series(data)
      try:
          pd_series = _enforce_mlflow_datatype("", pd_series, dtype)
      except MlflowException:
          raise MlflowException(
              f"Failed to enforce schema of data `{data}` with dtype `{dtype.name}`"
          )
      return pd_series[0]
  
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 16 for calling a global function with example usage: _enforce_datatype(data, dtype) and returns: pd_series