docs: def _process_intersection(self, yes_work, maybe_work, work_dir,
                                ym_results_path, stats):
          """Returns statistics on the intersection between `yes_work` and
          `maybe_work`.
  
          :param yes_work: name of work for which stats are collected
          :type yes_work: `str`
          :param maybe_work: name of work being compared with `yes_work`
          :type maybe_work: `str`
          :param work_dir: directory where generated files are saved
          :type work_dir: `str`
          :param ym_results_path: path to results intersecting
                                  `yes_work` with `maybe_work`
          :type ym_results_path: `str`
          :param stats: data structure to hold the statistical data
          :type stats: `dict`
          :rtype: `dict`
  
          """
          catalogue = {yes_work: self._no_label, maybe_work: self._maybe_label}
          self._run_query(ym_results_path, self._store.intersection, [catalogue],
                          False)
          # Though this is the intersection only between "yes" and
          # "maybe", the percentage of overlap is added to the "common"
          # stat rather than "shared". Then, in _process_diff, the
          # percentage of difference between "yes" and "no" can be
          # removed from "common" and added to "shared".
          return self._update_stats('intersect', work_dir, ym_results_path,
                                    yes_work, maybe_work, stats, COMMON, UNIQUE)