DEPRECATED: Use grafter-2.rdf.protocols instead. This namespace contains the old sesame implementation.
Grafter protocols and types for RDF processing
DEPRECATED: Use grafter-2.rdf.protocols instead. This namespace contains the old sesame implementation. Grafter protocols and types for RDF processing
Predicate function that tests whether the supplied value is considered to be a blank node type.
Predicate function that tests whether the supplied value is considered to be a blank node type.
(datatype-uri this)
Returns the RDF literals datatype URI as a java.net.URI.
Returns the RDF literals datatype URI as a java.net.URI.
This protocol coerces a backend RDF type, e.g. an RDF4j quad object into an equivalent Grafter RDF type. For example given an RDF4j quad it will convert it into a Grafter Quad.
This protocol coerces a backend RDF type, e.g. an RDF4j quad object into an equivalent Grafter RDF type. For example given an RDF4j quad it will convert it into a Grafter Quad.
(->grafter-type this)
Convert a backend RDF Type into a Native Type
Convert a backend RDF Type into a Native Type
(raw-value this)
Returns the naked value of a literal. For native primitive values e.g. a java.lang.Integer, this will return the supplied value (like identity). However for more complex types such as LangString's it will coerce the value into a more natural primitive type.
Returns the naked value of a literal. For native primitive values e.g. a java.lang.Integer, this will return the supplied value (like identity). However for more complex types such as LangString's it will coerce the value into a more natural primitive type.
(lang this)
Return the strings language tag (as a clojure Keyword)
Return the strings language tag (as a clojure Keyword)
NOTE this protocol is intended for low-level access. End users should use query instead.
Run an arbitrary SPARQL query. Works with ASK
, DESCRIBE
,
CONSTRUCT
and SELECT
queries.
You can call this on a Repository however if you do you may in some cases cause a resource leak, for example if the sequence of results isn't fully consumed.
To use this without leaking resources it is recommended that you
call ->connection
on your repository, inside a with-open
; and
then consume all your results inside of a nested doseq
/dorun
/etc...
e.g.
(with-open [conn (->connection repo)]
(doseq [res (query conn "SELECT * WHERE { ?s ?p ?o .}")]
(println res)))
NOTE this protocol is intended for low-level access. End users should use query instead. Run an arbitrary SPARQL query. Works with `ASK`, `DESCRIBE`, `CONSTRUCT` and `SELECT` queries. You can call this on a Repository however if you do you may in some cases cause a resource leak, for example if the sequence of results isn't fully consumed. To use this without leaking resources it is recommended that you call `->connection` on your repository, inside a `with-open`; and then consume all your results inside of a nested `doseq`/`dorun`/etc... e.g. ```` (with-open [conn (->connection repo)] (doseq [res (query conn "SELECT * WHERE { ?s ?p ?o .}")] (println res))) ````
(query-dataset this sparql-string model)
(update! this sparql-string)
Issue a SPARQL Update statement against the repository
Issue a SPARQL Update statement against the repository
An RDF triple or quad
An RDF triple or quad
(context statement)
(object statement)
(predicate statement)
(subject statement)
Low level protocol for transactions support. Most users probably want to use grafter.rdf.sesame/with-transaction
Low level protocol for transactions support. Most users probably want to use grafter.rdf.sesame/with-transaction
(begin repo)
Start a transaction
Start a transaction
(commit repo)
Commit a transaction
Commit a transaction
(rollback repo)
Rollback a transaction
Rollback a transaction
This protocol can be implemented by anything which you can delete statements from. For example a SPARQL Update Endpoint.
This protocol can be implemented by anything which you can delete statements from. For example a SPARQL Update Endpoint.
(delete this quads)
(delete this graph triples)
Delete the supplied triples or quads from the destination.
Delete the supplied triples or quads from the destination.
(delete-statement this statement)
(delete-statement this graph statement)
Use the higher level wrapper function statements if you just wish to read in some RDF.
This protocol exists for implementers to hook in additional sources of statements.
Takes a source of statements or triples and converts it into a seq of triples.
A hash of options is passed to each implementation, they may be ignored or handled depending on the circumstance.
Use the higher level wrapper function statements if you just wish to read in some RDF. This protocol exists for implementers to hook in additional sources of statements. Takes a source of statements or triples and converts it into a seq of triples. A hash of options is passed to each implementation, they may be ignored or handled depending on the circumstance.
(to-statements this options)
This protocol is implemented by anything which you can put statements into.
This protocol is implemented by anything which you can put statements into.
(add this quads)
(add this graph triples)
(add this graph format triple-stream)
(add this graph base-uri format triple-stream)
Add a seq of triples or quads to a destination. Works with a sequence of IStatements an InputStream, File or Reader
Add a seq of triples or quads to a destination. Works with a sequence of IStatements an InputStream, File or Reader
(add-statement this statement)
(add-statement this graph statement)
(language s lang)
Create an RDF langauge string out of a value string and a given language tag. Language tags should be keywords representing the country code, e.g.
(language "Bonsoir" :fr)
Create an RDF langauge string out of a value string and a given language tag. Language tags should be keywords representing the country code, e.g. (language "Bonsoir" :fr)
(literal val datatype-uri)
You can use this to declare an RDF typed literal value along with its URI. Note that there are implicit coercions already defined for many core clojure/java datatypes, so for common datatypes you shounld't need this.
You can use this to declare an RDF typed literal value along with its URI. Note that there are implicit coercions already defined for many core clojure/java datatypes, so for common datatypes you shounld't need this.
(triple? t)
Predicate function to test if object is a valid RDF triple.
Predicate function to test if object is a valid RDF triple.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close