code: def _get_output_node(
      source_node_id: str, operator_version: str, schema: Dict
  ):
      """A helper function to generate output node, for internal use only
  
      Args:
          source_node_id (str): source node id
          operator_version: (str): the version of the operator
          schema: (typing.Dict): the schema for the data to be ingested
      Returns:
          dict (typing.Dict): output node
      """
      return {
          "node_id": str(uuid4()),
          "type": "TRANSFORM",
          "operator": f"sagemaker.spark.infer_and_cast_type_{operator_version}",
          "trained_parameters": {} if schema is None else schema,
          "parameters": {},
          "inputs": [
              {
                  "name": "default",
                  "node_id": source_node_id,
                  "output_name": "default",
              }
          ],
          "outputs": [{"name": "default"}],
      }
  
imports: from __future__ import absolute_import
  from typing import Dict
  from uuid import uuid4
  from sagemaker.dataset_definition.inputs import RedshiftDatasetDefinition, AthenaDatasetDefinition
label_desc: Use image node_id 4 for calling a global function with example usage: _get_output_node(source_node_id, operator_version, schema) and returns: dict