2.7 Environment¶
-
typedef struct SerdEnvImpl SerdEnv¶
Lexical environment for relative URIs or CURIEs (base URI and namespaces)
-
SerdStatus serd_env_set_base_uri(SerdEnv *env, const SerdNode *uri)¶
Set the current base URI.
-
SerdStatus serd_env_set_prefix(SerdEnv *env, const SerdNode *name, const SerdNode *uri)¶
Set a namespace prefix.
A namespace prefix is used to expand CURIE nodes, for example, with the prefix “xsd” set to “http://www.w3.org/2001/XMLSchema#”, “xsd:decimal” will expand to “http://www.w3.org/2001/XMLSchema#decimal”.
-
SerdStatus serd_env_set_prefix_from_strings(SerdEnv *env, const uint8_t *name, const uint8_t *uri)¶
Set a namespace prefix.
-
bool serd_env_qualify(const SerdEnv *env, const SerdNode *uri, SerdNode *prefix, SerdChunk *suffix)¶
Qualify
uri
into a CURIE if possible.
-
SerdStatus serd_env_expand(const SerdEnv *env, const SerdNode *curie, SerdChunk *uri_prefix, SerdChunk *uri_suffix)¶
Expand
curie
.Errors: SERD_ERR_BAD_ARG if
curie
is not valid, or SERD_ERR_BAD_CURIE if prefix is not defined inenv
.
-
SerdNode serd_env_expand_node(const SerdEnv *env, const SerdNode *node)¶
Expand
node
, which must be a CURIE or URI, to a full URI.Returns null if
node
can not be expanded.
-
void serd_env_foreach(const SerdEnv *env, SerdPrefixSink func, void *handle)¶
Call
func
for each prefix defined inenv