Varve.Sparql.Evaluation
0.1.0-preview.20
dotnet add package Varve.Sparql.Evaluation --version 0.1.0-preview.20
NuGet\Install-Package Varve.Sparql.Evaluation -Version 0.1.0-preview.20
<PackageReference Include="Varve.Sparql.Evaluation" Version="0.1.0-preview.20" />
<PackageVersion Include="Varve.Sparql.Evaluation" Version="0.1.0-preview.20" />
<PackageReference Include="Varve.Sparql.Evaluation" />
paket add Varve.Sparql.Evaluation --version 0.1.0-preview.20
#r "nuget: Varve.Sparql.Evaluation, 0.1.0-preview.20"
#:package Varve.Sparql.Evaluation@0.1.0-preview.20
#addin nuget:?package=Varve.Sparql.Evaluation&version=0.1.0-preview.20&prerelease
#tool nuget:?package=Varve.Sparql.Evaluation&version=0.1.0-preview.20&prerelease
Varve.Sparql.Evaluation
The SPARQL optimiser and evaluator: a Query from Varve.Sparql, evaluated
over any IQuadSource — a Varve.Store view, pinned or as of a position, or
an InMemoryDataset. Update execution follows at milestone 5c.
- Every operator and the whole function library of SPARQL 1.1, with the
1.2 additions: aggregates, property paths, subqueries,
VALUES,MINUS,EXISTS,SELECT,ASK,CONSTRUCTand a minimalDESCRIBE. - An optimiser that changes no answer: filter placement, triple and join
order by the source's estimates, constant folding, trivial joins — each
held to an equivalence property.
Optimise = falseskips it. - Nothing ambient.
NOW()reads the clock in the options, the random functions the random source; without one they fail by the option's name. Extension functions and aggregates arrive in the options too. SERVICEthrough a handler you supply. The default refuses;SILENTturns a failure into the empty solution.- Handles, not terms. Solutions hold the source's handles and compare
inline integers without externalising them; a
SELECTover a basic graph pattern allocates its row per solution and nothing per quad. - Cancellation is checked at every operator and inside scans, sorts and path searches.
var evaluator = new SparqlEvaluator(new EvaluationOptions { Clock = TimeProvider.System });
using DatasetView view = dataset.Pin();
using QueryResults results = evaluator.Evaluate(query, view, cancellationToken);
var solutions = (SolutionResults)results;
while (solutions.MoveNext())
{
if (solutions.TryGetTerm(0, out RdfTerm? term)) { /* … */ }
}
The source is read as it is for the whole evaluation and is not the evaluator's to dispose: pin it, evaluate, then release it.
Layer 3 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. |
-
net10.0
- Varve.Iri (>= 0.1.0-preview.20)
- Varve.Rdf (>= 0.1.0-preview.20)
- Varve.Sparql (>= 0.1.0-preview.20)
- Varve.Xsd (>= 0.1.0-preview.20)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on Varve.Sparql.Evaluation:
| Package | Downloads |
|---|---|
|
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. |
|
|
Varve.Events
Domain events as quads: the event catalogue's declarations, their rendering as CloudEvents 1.0 in RFC 8785 canonical JSON through declared SELECT mappings, JSON Schemas with immutable revisions, AsyncAPI 3.0, and the compatibility check of a declaration change. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-preview.20 | 68 | 11/10/2026 |
| 0.1.0-preview.19 | 89 | 11/6/2026 |
| 0.1.0-preview.18 | 79 | 11/6/2026 |
| 0.1.0-preview.17 | 79 | 11/6/2026 |
| 0.1.0-preview.16 | 83 | 11/3/2026 |
| 0.1.0-preview.15 | 325 | 10/26/2026 |
| 0.1.0-preview.14 | 84 | 10/26/2026 |
| 0.1.0-preview.13 | 86 | 10/26/2026 |
| 0.1.0-preview.12 | 100 | 10/23/2026 |
| 0.1.0-preview.11 | 80 | 10/21/2026 |
| 0.1.0-preview.10 | 87 | 10/20/2026 |
| 0.1.0-preview.9 | 90 | 10/19/2026 |
| 0.1.0-preview.8 | 99 | 10/17/2026 |
| 0.1.0-preview.7 | 79 | 10/17/2026 |
| 0.1.0-preview.6 | 74 | 10/15/2026 |
| 0.1.0-preview.5 | 69 | 10/15/2026 |
| 0.1.0-preview.4 | 71 | 10/13/2026 |
| 0.1.0-preview.3 | 73 | 10/12/2026 |
| 0.1.0-preview.2 | 70 | 10/9/2026 |
| 0.1.0-preview.1 | 67 | 10/7/2026 |