Defines utilities and a set of namespaces for commonly used linked data constructs, metadata of which specifies RDF namespaces, prefixes and other details.
Defines utilities and a set of namespaces for commonly used linked data constructs, metadata of which specifies RDF namespaces, prefixes and other details.
{<alias> <ns-name>, ...} Where <alias> is a symbol <ns-name> is a symbol naming an ns in the current lexical env Informs cljc-ns-aliases in cljs space.
{<alias> <ns-name>, ...} Where <alias> is a symbol <ns-name> is a symbol naming an ns in the current lexical env Informs cljc-ns-aliases in cljs space.
(clear-caches!)
Side-effects: resets all caches in voc/ to nil NOTE: call this when you may have imported new namespace metadata
Side-effects: resets all caches in voc/ to nil NOTE: call this when you may have imported new namespace metadata
(cljc-all-ns)
Returns (<ns name or obj> ...) Where <ns name or obj> may either be a namespace (in clj) or the name of a namespace (in cljs)
Returns (<ns name or obj> ...) Where <ns name or obj> may either be a namespace (in clj) or the name of a namespace (in cljs)
(cljc-find-ns _ns)
Returns <ns name or obj> for <_ns>, or nil. Where <ns name or obj> may either be a namespace (in clj) or the name of a namespace (in cljs) <_ns> is a symbol which may name a namespace. NOTE: Implementations involving cljs must use cljs-put/get-ns-meta to declare ns metadata.
Returns <ns name or obj> for <_ns>, or nil. Where <ns name or obj> may either be a namespace (in clj) or the name of a namespace (in cljs) <_ns> is a symbol which may name a namespace. NOTE: Implementations involving cljs must use cljs-put/get-ns-meta to declare ns metadata.
(cljc-find-prefixes re-str s)
Returns #{<prefix>...} for s
Where
<prefix> is a prefix found in <s>, for which some (meta ns) has a
:vann/preferredNamespacePrefix declaration
<s> is a string, typically a SPARQL query body for which we want to
infer prefix declarations.
Returns #{<prefix>...} for `s` Where <prefix> is a prefix found in <s>, for which some (meta ns) has a :vann/preferredNamespacePrefix declaration <s> is a string, typically a SPARQL query body for which we want to infer prefix declarations.
(cljc-get-ns-meta)
(cljc-get-ns-meta _ns)
Returns <metadata> assigned to ns named _ns
Where
<_ns> names a namespace or a 'dummy' namespace whose sole purpose is to hold metadata.
<metadata> := {<key> <value>, ...}
<key> is a keyword containing vocabulary metadata, e.g. :vann/preferredNamespacePrefix
Returns <metadata> assigned to ns named `_ns` Where <_ns> names a namespace or a 'dummy' namespace whose sole purpose is to hold metadata. <metadata> := {<key> <value>, ...} <key> is a keyword containing vocabulary metadata, e.g. :vann/preferredNamespacePrefix
(cljc-ns-aliases)
Returns {<alias> <ns>, ...} Where <alias> is a symbol <ns> is its associated ns in the current lexical environment. NOTE: cljs will require explicit maintenance of alias-map This is really only necessary if you're importing a package as some symbol other than the preferred prefix.
Returns {<alias> <ns>, ...} Where <alias> is a symbol <ns> is its associated ns in the current lexical environment. NOTE: cljs will require explicit maintenance of *alias-map* This is really only necessary if you're importing a package as some symbol other than the preferred prefix.
(cljc-put-ns-meta! m)
(cljc-put-ns-meta! _ns m)
Side-effect: ensures that subsequent calls to (cljc-get-ns-meta _ns
return m
Where
<_ns> is an ns(clj only) or the name of a namespace, possibly declared for the sole purpose of holding vocabulary metadata (e.g. rdf, foaf, etc)
<m> := {<key> <value>, ...}, metadata (clj) or 'pseudo-metadata' (cljs)
<key> is a keyword containing vocabulary metadata, e.g. ::vann/preferredNamespacePrefix
NOTE: In cljs, ns's are not available at runtime, so the metadata is stored
in an atom called 'voc/cljs-ns-metadata'
See also declarations for ont-app.vocabulary.rdf, ont-app.vocabulary.foaf, etc.
for examples of namespaces declared solely to hold vocabulary metadata.
Side-effect: ensures that subsequent calls to (cljc-get-ns-meta `_ns` return `m` Where <_ns> is an ns(clj only) or the name of a namespace, possibly declared for the sole purpose of holding vocabulary metadata (e.g. rdf, foaf, etc) <m> := {<key> <value>, ...}, metadata (clj) or 'pseudo-metadata' (cljs) <key> is a keyword containing vocabulary metadata, e.g. ::vann/preferredNamespacePrefix NOTE: In cljs, ns's are not available at runtime, so the metadata is stored in an atom called 'voc/cljs-ns-metadata' See also declarations for ont-app.vocabulary.rdf, ont-app.vocabulary.foaf, etc. for examples of namespaces declared solely to hold vocabulary metadata.
Namespaces in cljs are not proper objects, and there is no metadata available at runtime. This atom stores 'pseudo-metadata' declared with cljc-put-ns-metadata and accessed with cljc-get-metadata. Clj just uses the metadata regime for its ns's
Namespaces in cljs are not proper objects, and there is no metadata available at runtime. This atom stores 'pseudo-metadata' declared with cljc-put-ns-metadata and accessed with cljc-get-metadata. Clj just uses the metadata regime for its ns's
(collect-prefixes acc next-ns)
Returns {<prefix> <namespace> ...} s.t. <next-ns> is included Where <prefix> is a prefix declared in the metadata of <next-ns> <namespace> is a URI namespace declared for <prefix> in metadata of <next-ns> <next-ns> is typically an element in a reduction sequence of ns's
Returns {<prefix> <namespace> ...} s.t. <next-ns> is included Where <prefix> is a prefix declared in the metadata of <next-ns> <namespace> is a URI namespace declared for <prefix> in metadata of <next-ns> <next-ns> is typically an element in a reduction sequence of ns's
(decode-uri-string s)
Inverse of encdoe-uri-string. Returns the original value of s
Where <s> was generated by (encode-uri-string s)
Inverse of encdoe-uri-string. Returns the original value of `s` Where <s> was generated by (encode-uri-string s)
(encode-uri-string s)
Returns a version if s
suitable for entry as keyword name
Where <s> is a URI string, typically about to be interned as a keyword.
Returns a version if `s` suitable for entry as keyword name Where <s> is a URI string, typically about to be interned as a keyword.
(iri-for kw)
Returns <iri> for kw
based on metadata attached to <ns>
Where
<iri> is of the form <namespace><value>
<kw> is a keyword of the form <prefix>:<value>
<ns> is an instance of clojure.lang.ns
<prefix> is declared with :vann/preferredNamespacePrefix in metadata of <ns>
<namespace> is typically of the form http://...., declared with
:vann/preferredNamespaceUri in metadata of <ns>
Returns <iri> for `kw` based on metadata attached to <ns> Where <iri> is of the form <namespace><value> <kw> is a keyword of the form <prefix>:<value> <ns> is an instance of clojure.lang.ns <prefix> is declared with :vann/preferredNamespacePrefix in metadata of <ns> <namespace> is typically of the form http://...., declared with :vann/preferredNamespaceUri in metadata of <ns>
(keyword-for uri)
(keyword-for on-no-ns uri)
Returns a keyword equivalent of <uri>, properly prefixed if LOD declarations
exist in some ns in the current lexical environment.
Side effects per on-no-ns
Where <uri> is a string representing
a URI <on-no-ns> (optional) := fn [uri kw] -> kwi', possibly with
side-effects in response to the fact that no qname was found for
<uri> (default returns <kw>)
NOTE: typically <on-no-ns> would log a warning or make an assertion.
Returns a keyword equivalent of <uri>, properly prefixed if LOD declarations exist in some ns in the current lexical environment. Side effects per `on-no-ns` Where <uri> is a string representing a URI <on-no-ns> (optional) := fn [uri kw] -> kwi', possibly with side-effects in response to the fact that no qname was found for <uri> (default returns <kw>) NOTE: typically <on-no-ns> would log a warning or make an assertion.
(namespace-re)
Returns a regex to recognize substrings matching a URI for an ns declared with LOD metadata. Groups for namespace and value.
Returns a regex to recognize substrings matching a URI for an ns declared with LOD metadata. Groups for namespace and value.
(namespace-to-ns)
returns {<namespace> <ns> ...} for each ns with :vann/preferredNamespaceUri declaration
returns {<namespace> <ns> ...} for each ns with :vann/preferredNamespaceUri declaration
(ns-to-namespace _ns)
Returns <iri> for <ns> Where <iri> is an iri declared with :vann/preferredNamespaceUri in the metadata for <ns>, or nil <ns> is an instance of clojure.lang.Namespace
Returns <iri> for <ns> Where <iri> is an iri declared with :vann/preferredNamespaceUri in the metadata for <ns>, or nil <ns> is an instance of clojure.lang.Namespace
(ns-to-prefix _ns)
Returns the prefix associated with _ns
Where
<_ns> is a clojure namespace, which may have :vann/preferredNamespacePrefix
declaration in its metadata.
Returns the prefix associated with `_ns` Where <_ns> is a clojure namespace, which may have :vann/preferredNamespacePrefix declaration in its metadata.
(prefix-re-str)
Returns a regex string that recognizes prefixes declared in ns metadata with :vann/preferredNamespacePrefix keys. NOTE: this is a string because the actual re-pattern will differ per clj/cljs.
Returns a regex string that recognizes prefixes declared in ns metadata with :vann/preferredNamespacePrefix keys. NOTE: this is a string because the actual re-pattern will differ per clj/cljs.
(prefix-to-namespace-uri prefix)
returns namespace
URI associated with prefix
Where:
<namespace> is a string declared for some <ns> with vann/preferredNamespaceUri
<prefix> is a string declared for <ns> with vann/preferredNamespacePrefix
returns `namespace` URI associated with `prefix` Where: <namespace> is a string declared for some <ns> with vann/preferredNamespaceUri <prefix> is a string declared for <ns> with vann/preferredNamespacePrefix
(prefix-to-ns)
Returns {<prefix> <ns> ...} Where <prefix> is declared in metadata for some <ns> with :vann/preferredNamespacePrefix <ns> is an instance of clojure.lang.ns available within the lexical context in which the call was made.
Returns {<prefix> <ns> ...} Where <prefix> is declared in metadata for some <ns> with :vann/preferredNamespacePrefix <ns> is an instance of clojure.lang.ns available within the lexical context in which the call was made.
(prepend-prefix-declarations sparql-string)
Returns <sparql-string>, prepended with appropriate PREFIX decls.
Returns <sparql-string>, prepended with appropriate PREFIX decls.
(qname-for kw)
Returns the 'qname' URI for kw
, or <...>'d full URI if no valid qname
could be found. Throws an error if the prefix is specified, but can't be
mapped to metadata.
Where
<kw> is a keyword, in a namespace with LOD declarations in its metadata.
Returns the 'qname' URI for `kw`, or <...>'d full URI if no valid qname could be found. Throws an error if the prefix is specified, but can't be mapped to metadata. Where <kw> is a keyword, in a namespace with LOD declarations in its metadata.
(sparql-prefixes-for sparql-string)
Returns [<prefix-string>...] for each prefix identified in <sparql-string> Where <prefix-string> := PREFIX <prefix>: <namespace>
<prefix> is a prefix defined for <namespace> in metadata of some ns with :vann/preferredNamespacePrefix <namespace> is a namespace defined in the metadata for some ns with :vann/preferredNamespaceUri
Returns [<prefix-string>...] for each prefix identified in <sparql-string> Where <prefix-string> := PREFIX <prefix>: <namespace> <prefix> is a prefix defined for <namespace> in metadata of some ns with :vann/preferredNamespacePrefix <namespace> is a namespace defined in the metadata for some ns with :vann/preferredNamespaceUri
Describes T-box for this namespace.
Describes T-box for this namespace.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close