+def url_infer_protocol(ref_url, target_url):
+ """ Infer protocol for protocol independent target urls """
+ parsed_target_url = list(compat_urllib_parse_urlparse(target_url))
+ if parsed_target_url[0]:
+ return target_url
+
+ parsed_target_url[0] = compat_urllib_parse_urlparse(ref_url).scheme
+
+ return compat_urlparse.urlunparse(parsed_target_url)
+
+