protected function getTargetNode()
    {
        if (null === $target = $this->getTarget()) {
            $segments = explode('/', $this->getPath());
            $target = '';

            while (count($segments) > 0) {
                $segment = array_pop($segments);
                $target = $segment.'/'.$target;

                if (!is_numeric($segment)) {
                    break;
                }
            }

            return rtrim($target, '/');
        }

        return $target;
    }