/**
  * The parser fires this each time one path is going to be parsed
  *
  * @param string $path xml path which parsing has started
  */
 public function before_path($path)
 {
     if ($this->path_is_grouped($path) and !isset($this->currentdata[$path])) {
         // If the grouped element itself does not contain any final tags,
         // we would not get any chunk data for it. So we add an artificial
         // empty data chunk here that will be eventually replaced with
         // real data later in {@link self::postprocess_chunk()}.
         $this->currentdata[$path] = array('path' => $path, 'level' => substr_count($path, '/') + 1, 'tags' => array());
     }
     if (!$this->grouped_parent_exists($path)) {
         parent::before_path($path);
     }
 }
 /**
  * Notify start of path if selected and not under grouped
  */
 public function before_path($path)
 {
     if ($this->path_is_selected($path) && !$this->grouped_parent_exists($path)) {
         parent::before_path($path);
     }
 }
 /**
  * The parser fires this each time one path is going to be parsed
  *
  * @param string $path xml path which parsing has started
  */
 public function before_path($path)
 {
     if (!$this->grouped_parent_exists($path)) {
         parent::before_path($path);
     }
 }