code: def get_task_id(task, base_path_or_url):
      
      name = task.get('name')
      if base_path_or_url:
          if Util.is_url(base_path_or_url):
              name = urllib.parse.urljoin(base_path_or_url, name)
          else:
              name = os.path.normpath(os.path.join(os.path.dirname(base_path_or_url), name))
      task_id = [name,
                 task.get('properties'),
                 task.get('runset'),
                 ]
      return tuple(task_id)
docs: Return a unique identifier for a given task.
      @param task: the XML element that represents a task
      @return a tuple with filename of task as first element