class_docstr: Node that represents a dict of Node values.
class_docstr_tok: ["Node","that","represents","a","dict","of","Node","values","."]
code: def __init__(self, nodes: Mapping[str, Node]):
      if not typing_utils.is_compatible(
          nodes, Mapping[str, Node]
      ) or any(
          v.output_data_type != DataType.ARTIFACT_LIST
          for v in nodes.values()
      ):
          raise ValueError(
              "Expected dict[str, Node] s.t. all node.output_data_type == "
              f"ARTIFACT_LIST, but got {nodes}."
          )
      self.nodes = nodes
  
imports: from __future__ import annotations
  import abc
  from typing import Any, Generic, Literal, Mapping, Optional, Sequence, Set, Type, TypeVar, Union
  import attr
  from tfx import types
  from tfx.proto.orchestration import pipeline_pb2
  from tfx.utils import json_utils
  from tfx.utils import typing_utils
  import ml_metadata
label_desc: Use image node_id 1 to create a new DictNode object from inherited base classes: Node with example: obj = DictNode(nodes)