code: def get_field_datum_value_defs(
      propschema: SchemaInfo, root: dict
  ) -> dict:
      def_dict: Dict[str, Optional[str]] = {
          k: None for k in ("field", "datum", "value")
      }
      schema = propschema.schema
      if propschema.is_reference() and "properties" in schema:
          if "field" in schema["properties"]:
              def_dict["field"] = propschema.ref
          else:
              raise ValueError("Unexpected schema structure")
      else:
          recursive_dict_update(schema, root, def_dict)
  
      return {i: j for i, j in def_dict.items() if j}
  
imports: import argparse
  import copy
  import json
  import os
  import re
  import sys
  import textwrap
  from dataclasses import dataclass
  from os.path import abspath, dirname, join
  from typing import Dict, Final, List, Literal, Optional, Tuple, Type, Union
  from urllib import request
  import m2r
  from schemapi import codegen
  from schemapi.codegen import CodeSnippet
  from schemapi.utils import SchemaInfo, get_valid_identifier, resolve_references, ruff_format_str, rst_syntax_for_class, indent_docstring
label_desc: Use image node_id 9 for calling a global function with example usage: get_field_datum_value_defs(propschema, root) and returns: unknown