protected function getValidationSchemaUrl()
    {
        $profile = $this->getValidationProfile();
        if ($filename = $this->getJsonSchemaFileFromRegistry($profile)) {
            // known profile id in the registry
            return $this->convertValidationSchemaFilenameToUrl($filename);
        } elseif (Utils::isHttpSource($profile)) {
            // url
            return $profile;
        } elseif (file_exists($filename = $this->basePath.DIRECTORY_SEPARATOR.$profile)) {
            // relative path - prefixed with basePath
            return $this->convertValidationSchemaFilenameToUrl($filename);
        } else {
            // absolute path (or relative to current working directory)
            return $this->convertValidationSchemaFilenameToUrl($profile);
        }
    }