Represents a SPARQL operation to be executed against a Gno.Store.
Wraps SPARQL queries and updates with type metadata used by Gno.Store.Adapter
implementations to dispatch to the correct endpoint and SPARQL.Client function.
Fields
name— the operation name (e.g.:select,:insert_data,:clear)type—:queryor:updateupdate_type— for updates, further classifies the dispatch target::query— SPARQL updates with WHERE clause (INSERT, DELETE, UPDATE), dispatched to the update endpoint:data— direct data operations (INSERT DATA, DELETE DATA), dispatched to the update endpoint:graph_store— graph management operations (LOAD, CLEAR, DROP, CREATE, ADD, COPY, MOVE), dispatched to the graph store endpoint
payload— the query string, update string,RDF.Datasource, ornilopts— additional options passed through toSPARQL.Client
Summary
Functions
Creates a new SPARQL operation with the given name and payload.
Types
@type data() :: RDF.Data.Source.t()
@type name() :: atom()
@type query() :: String.t()
@type t() :: %Gno.Store.SPARQL.Operation{ name: name(), opts: keyword(), payload: payload(), type: type(), update_type: update_type() }
@type type() :: :query | :update
@type update() :: String.t()
@type update_type() :: :query | :data | :graph_store
Functions
Creates a new SPARQL operation with the given name and payload.
The name determines the operation type (:query or :update) and subtype
automatically. See the convenience functions (select/2, insert_data/2, etc.)
for creating specific operation types.