docs: def check_data_flow_id(self, data_flow_id):
          """ Check the data flow id and calculate a new one if its None
  
          :param data_flow_id: The data flow id to check
          :return: The new data flow id
          :raises exceptions.AttributeError: if data_flow.data_flow_id already exists
          """
          if data_flow_id is not None:
              if data_flow_id in self._data_flows.keys():
                  raise AttributeError("The data_flow id %s already exists. Cannot add data_flow!", data_flow_id)
          else:
              data_flow_id = generate_data_flow_id()
              while data_flow_id in self._data_flows.keys():
                  data_flow_id = generate_data_flow_id()
          return data_flow_id