Expand description
Actions for dsp vre sparql query (plan 035).
Deliberately does not abstract DSP-API (dsp-cli/ADR-0016): the response body
is a store-authored document in a store-negotiated media type, and
dsp-cli does not interpret it. This is the third no-Renderer command
(after dsp docs and dsp auth token, D2) — its output goes to an
injected writer via the run/query seam, mirroring set_token.rs’s
run/run_from_line/run_impl shape (each layer taking already-read
text, never owning IO itself below run).
dsp-api’s own failures (D8) are classified inside src/client/http.rs
and arrive here as Err, already carrying the right Diagnostic variant
and exit code — this module must never re-implement that table (D8’s
closing paragraph). The only split this module owns is D7’s: a 2xx
relay writes the body to stdout byte-verbatim; anything else is a relayed
store rejection, surfaced as Diagnostic::ServerError with the store’s
text sanitised and capped (never interpolated raw — the store’s bytes are
untrusted prose the moment they leave the byte-exact stdout contract).
Functions§
- run
- Run a raw SPARQL query, owning all real IO: stdin (D5), the
--query-fileread (D5),DSP_TOKEN(D11), and stdout (D3).