class_docstr: A mixin providing task fields access functionality 
class_docstr_tok: ["A","mixin","providing","task","fields","access","functionality"]
code: def _set_task_property(
      self, prop_path, value, raise_on_error=True, log_on_error=True
  ):
      props = prop_path.split(".")
      if len(props) > 1:
          obj = self._get_task_property(
              ".".join(props[:-1]),
              raise_on_error=raise_on_error,
              log_on_error=log_on_error,
          )
      else:
          obj = self.data
      if not hasattr(obj, props[-1]) and isinstance(obj, dict):
          obj[props[-1]] = value
      else:
          setattr(obj, props[-1], value)
  
file_path: clearml/clearml/backend_interface/task/access.py
imports: import itertools
  import operator
  from abc import abstractproperty
  import six
  from pathlib2 import Path
label_desc: Use image node_id 3 for calling the AccessMixin obj's underlying member method code with example usage: obj._set_task_property(prop_path, value, raise_on_error, log_on_error) without return types