-let constants_only uri = not (String.sub uri (String.length uri - 4) 4 = ".var")
-let uri_predicate = ref constants_only
+let constants_only ~prefix =
+ let test_prefix =
+ if prefix = "" then
+ (fun _ -> true)
+ else
+ (fun uri -> Pcre.pmatch ~rex:(Pcre.regexp ("^" ^ prefix)) uri)
+ in
+ fun uri ->
+ test_prefix uri && (not (String.sub uri (String.length uri - 4) 4 = ".var"))
+
+let uri_predicate = ref (constants_only ~prefix:"")