protected function getReferenceValue(Model $model, $strategy = null, $source = null)
    {
        $strategy = $this->determineModelReferenceStrategy($model, $strategy);

        // If we have no strategy at all to fall back on, use a hard-coded reference
        if ( ! $strategy) {
            return $this->getReferenceFallback($model);
        }

        if ( ! $source) {
            $source = $this->determineModelReferenceSource($model);
        }

        return $strategy->render($model, $source);
    }