class_docstr: Auxiliary class that represents the inputs and outputs of Steps.
  
  DataPlaceholders are just minimal, low-weight auxiliary objects whose main
  purpose is to keep track of the input/output connectivity between steps, and
  serve as the keys to map the actual input data to their appropriate Step.
  They are not arrays/tensors, nor contain any shape/type information whatsoever.
  
  Steps are called on and output DataPlaceHolders. DataPlaceholders are
  produced and consumed exclusively by Steps, so you shouldn't need to
  instantiate these yourself.
code: def step(self):
      return self._step
  
file_path: baikal/baikal/_core/data_placeholder.py
imports: from functools import total_ordering
  from baikal._core.utils import make_repr
label_desc: Use image node_id 2 for calling the DataPlaceholder obj's underlying member method code with example usage: obj.step() and returns: self