public function resolvePath($str, $model, $model_map = array())
	{
		$parsed = $this->parseInterpolationString($str);

		foreach ($parsed as $key => $directive_with_filters)
		{
			$directive = reset($directive_with_filters);

			$field = isset($model_map[$directive]) ? $model_map[$directive] : $directive;

			$result = $this->handleSubdirectives($directive_with_filters,
				$model[$field], $this->handlers_filters);

			$str = str_replace($key, $result, $str);
		}

		return new InterpolatorResult($model, $str);
	}