try {
URI absoluteURI = new URI(base, true);
if (!absoluteURI.isAbsolute()) {
URI relativeURI = new URI(relative, true);
if (relativeURI.isAbsolute()) {
return new AnyURIValue(relative);
}
dynamicError(msgBase + "in resolve-uri(): Base URI " + Err.wrap(base) + " is not an absolute URI", "FORG0002", context);
return null;
}
URI resolved = makeAbsolute(relative, base);
return new AnyURIValue(resolved.toString());
} catch (URI.URISyntaxException err) {
dynamicError(msgBase + "Base URI " + Err.wrap(base) + " is invalid: " + err.getMessage(),
"FORG0002", context);
return null;
}