Varve.Sparql
0.1.0-preview.20
dotnet add package Varve.Sparql --version 0.1.0-preview.20
NuGet\Install-Package Varve.Sparql -Version 0.1.0-preview.20
<PackageReference Include="Varve.Sparql" Version="0.1.0-preview.20" />
<PackageVersion Include="Varve.Sparql" Version="0.1.0-preview.20" />
<PackageReference Include="Varve.Sparql" />
paket add Varve.Sparql --version 0.1.0-preview.20
#r "nuget: Varve.Sparql, 0.1.0-preview.20"
#:package Varve.Sparql@0.1.0-preview.20
#addin nuget:?package=Varve.Sparql&version=0.1.0-preview.20&prerelease
#tool nuget:?package=Varve.Sparql&version=0.1.0-preview.20&prerelease
Varve.Sparql
SPARQL 1.1 Query and Update as an immutable algebra, with SPARQL 1.2's additions present and marked, a parser from text to the algebra, and a serialiser back.
- One tree. The parser produces the algebra of SPARQL 1.1 §18.2 directly:
Join,LeftJoin,Filter,Extend,Group,Project, … as sealed records with value equality and a source span on every node. - SPARQL 1.2 from the start: triple terms, reified triples and annotation
syntax expanded as §4.3 prescribes,
VERSION, and the new functions. A caller asks for1.1,1.2-basicor1.2; aVERSIONdeclaration in the text narrows and never widens. - Round trip.
SparqlWriterwrites text that parses back to the identical tree, and a property test over generated algebra holds it to that. - Errors carry byte offset, line and column, and name what was expected. The first error ends the parse: a query is one unit.
- Rewriting without reflection.
AlgebraRewriterhas one virtual method per node type; an optimiser is a rewriter, and so is a linter.
Query query = SparqlParser.ParseQuery("SELECT ?s WHERE { ?s a ?type }"u8);
string text = SparqlWriter.ToText(query);
Layer 2 of Varve, a .NET-native event-sourced RDF store and SPARQL toolkit. MPL-2.0.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
NuGet packages (7)
Showing the top 5 NuGet packages that depend on Varve.Sparql:
| Package | Downloads |
|---|---|
|
Varve.Sparql.Evaluation
SPARQL 1.1 query evaluation, with SPARQL 1.2's additions, over any Varve quad source: the optimiser and the evaluator. |
|
|
Varve.Sparql.Store
SPARQL 1.1 Update over a Varve store: every request pinned, evaluated operation by operation over an overlay, and committed as one commit. |
|
|
Varve.Protocol
SPARQL 1.1 Protocol, Graph Store Protocol, service description, time travel, change feed and diff over HTTP for a Varve store, as ASP.NET Core endpoint groups. |
|
|
Varve.Protocol.Client
The HTTP client for a Varve server: SPARQL Protocol queries and updates, the Graph Store Protocol, the change feed and the admin API, with the SERVICE handler and the document fetch that federate a query and a LOAD under an endpoint policy. |
|
|
Varve.Shacl.Sparql
SHACL-SPARQL for Varve.Shacl: SPARQL-based constraints and SPARQL-based constraint components, evaluated by Varve.Sparql.Evaluation over any IQuadSource, with SHACL 1.2's pre-binding. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-preview.20 | 72 | 11/10/2026 |
| 0.1.0-preview.19 | 101 | 11/6/2026 |
| 0.1.0-preview.18 | 94 | 11/6/2026 |
| 0.1.0-preview.17 | 81 | 11/6/2026 |
| 0.1.0-preview.16 | 93 | 11/3/2026 |
| 0.1.0-preview.15 | 333 | 10/26/2026 |
| 0.1.0-preview.14 | 89 | 10/26/2026 |
| 0.1.0-preview.13 | 89 | 10/26/2026 |
| 0.1.0-preview.12 | 104 | 10/23/2026 |
| 0.1.0-preview.11 | 81 | 10/21/2026 |
| 0.1.0-preview.10 | 88 | 10/20/2026 |
| 0.1.0-preview.9 | 96 | 10/19/2026 |
| 0.1.0-preview.8 | 82 | 10/17/2026 |
| 0.1.0-preview.7 | 81 | 10/17/2026 |
| 0.1.0-preview.6 | 79 | 10/15/2026 |
| 0.1.0-preview.5 | 76 | 10/15/2026 |
| 0.1.0-preview.4 | 75 | 10/13/2026 |
| 0.1.0-preview.3 | 80 | 10/12/2026 |
| 0.1.0-preview.2 | 75 | 10/9/2026 |
| 0.1.0-preview.1 | 78 | 10/7/2026 |