class_docstr: Handles parameter management for estimators composed of named estimators.
  
  Partly adapted from sklearn utils.metaestimator.py.
docstr: Check if _tagchain_is_linked, then set self left_tag_name and mid_tag_name.
  
  Writes to self:
  tag with name left_tag_name, sets to left_tag_val if _tag_chain_is_linked[0]
      otherwise sets to left_tag_val_not
  tag with name mid_tag_name, sets to mid_tag_val if _tag_chain_is_linked[1]
      otherwise sets to mid_tag_val_not
  
  Parameters
  ----------
  left_tag_name : str, name of the left tag
  mid_tag_name : str, name of the middle tag
  estimators : list of (str, estimator) pairs to query for the tag/value
  left_tag_val : value of the left tag, optional, default=True
  mid_tag_val : value of the middle tag, optional, default=True
  left_tag_val_not : value to set if not linked, optional, default=False
  mid_tag_val_not : value to set if not linked, optional, default=False
docstr_tok: ["Check","if","_tagchain_is_linked",",","then","set","self","left_tag_name","and","mid_tag_name",".","Writes","to","self",":","tag","with","name","left_tag_name",",","sets","to","left_tag_val","if","_tag_chain_is_linked","[","0","]","otherwise","sets","to","left_tag_val_not","tag","with","name","mid_tag_name",",","sets","to","mid_tag_val","if","_tag_chain_is_linked","[","1","]","otherwise","sets","to","mid_tag_val_not","Parameters","--","--","--","--","--","left_tag_name",":","str",",","name","of","the","left","tag","mid_tag_name",":","str",",","name","of","the","middle","tag","estimators",":","list","of","(","str",",","estimator",")","pairs","to","query","for","the","tag\/value","left_tag_val",":","value","of","the","left","tag",",","optional",",","default=True","mid_tag_val",":","value","of","the","middle","tag",",","optional",",","default=True","left_tag_val_not",":","value","to","set","if","not","linked",",","optional",",","default=False","mid_tag_val_not",":","value","to","set","if","not","linked",",","optional",",","default=False"]
code: def _tagchain_is_linked_set(
      self,
      left_tag_name,
      mid_tag_name,
      estimators,
      left_tag_val=True,
      mid_tag_val=True,
      left_tag_val_not=False,
      mid_tag_val_not=False,
  ):
      """Check if _tagchain_is_linked, then set self left_tag_name and mid_tag_name.
  
      Writes to self:
      tag with name left_tag_name, sets to left_tag_val if _tag_chain_is_linked[0]
          otherwise sets to left_tag_val_not
      tag with name mid_tag_name, sets to mid_tag_val if _tag_chain_is_linked[1]
          otherwise sets to mid_tag_val_not
  
      Parameters
      ----------
      left_tag_name : str, name of the left tag
      mid_tag_name : str, name of the middle tag
      estimators : list of (str, estimator) pairs to query for the tag/value
      left_tag_val : value of the left tag, optional, default=True
      mid_tag_val : value of the middle tag, optional, default=True
      left_tag_val_not : value to set if not linked, optional, default=False
      mid_tag_val_not : value to set if not linked, optional, default=False
      """
      linked, complete = self._tagchain_is_linked(
          left_tag_name=left_tag_name,
          mid_tag_name=mid_tag_name,
          estimators=estimators,
          left_tag_val=left_tag_val,
          mid_tag_val=mid_tag_val,
      )
      if linked:
          self.set_tags(**{left_tag_name: left_tag_val})
      else:
          self.set_tags(**{left_tag_name: left_tag_val_not})
      if complete:
          self.set_tags(**{mid_tag_name: mid_tag_val})
      else:
          self.set_tags(**{mid_tag_name: mid_tag_val_not})
  
imports: from inspect import isclass
  import numpy
  import pandas
  from sktime.base import BaseEstimator
label_desc: Use image node_id 23 for calling the _HeterogenousMetaEstimator obj's underlying member method code with example usage: obj._tagchain_is_linked_set(left_tag_name, mid_tag_name, estimators, left_tag_val, mid_tag_val, left_tag_val_not, mid_tag_val_not) without return types