Varve.Sparql.Evaluation 0.1.0-preview.20

This is a prerelease version of Varve.Sparql.Evaluation.
dotnet add package Varve.Sparql.Evaluation --version 0.1.0-preview.20
                    
NuGet\Install-Package Varve.Sparql.Evaluation -Version 0.1.0-preview.20
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Varve.Sparql.Evaluation" Version="0.1.0-preview.20" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Varve.Sparql.Evaluation" Version="0.1.0-preview.20" />
                    
Directory.Packages.props
<PackageReference Include="Varve.Sparql.Evaluation" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Varve.Sparql.Evaluation --version 0.1.0-preview.20
                    
#r "nuget: Varve.Sparql.Evaluation, 0.1.0-preview.20"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Varve.Sparql.Evaluation@0.1.0-preview.20
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Varve.Sparql.Evaluation&version=0.1.0-preview.20&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Varve.Sparql.Evaluation&version=0.1.0-preview.20&prerelease
                    
Install as a Cake Tool

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, CONSTRUCT and a minimal DESCRIBE.
  • 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 = false skips 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.
  • SERVICE through a handler you supply. The default refuses; SILENT turns a failure into the empty solution.
  • Handles, not terms. Solutions hold the source's handles and compare inline integers without externalising them; a SELECT over 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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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