sem.resolveIri

sem.resolveIri(
   relative as String,
   [base as String]
) as sem.iri

Summary

Resolves a relative URI against an absolute URI. If $base is specified, the URI is resolved relative to that base. If $base is not specified, the base is set to the base-uri property from the static context, if the property exists; if it does not exist, an error is thrown. This XQuery function backs up the SPARQL IRI() function.

Parameters
relative A URI reference to resolve against the base.
base An absolute URI to use as the base of the resolution.

Usage Notes

If $base is specified, it is assumed to be an absolute URI and $relative is assumed to be an absolute or a relative URI reference. If $relative is a relative URI reference, it is resolved against $base, using an algorithm such as the ones described in [RFC 2396] or [RFC 3986], and the resulting absolute URI reference is returned.

Resolving a URI does not dereference it. This is merely a syntactic operation on two character strings.

Example

sem.resolveIri("hello/goodbye.xml",
     "/mycompany/default.xqy");

=>  /mycompany/hello/goodbye.xml
Powered by MarkLogic Server | Terms of Use | Privacy Policy