SpeCS
Overview
SpeCS is a sound and complete SPARQL query containment solver. The approach reduces the
query containment problem to the satisfiability problem in FOL and therefore enables the usage of state
of the art SMT solvers (SpeCS uses Z3 solver).
It covers the most common SPARQL language constructs (conjunctive and cyclic queries,
union, filter, from clauses, blank nodes and
projections, bind,
subqueries, optional, minus, graph, expressions within
select clause, builtin functions, etc.)
and reasoning under RDF SCHEMA entailment regime. The containment problem can be considered in
both standard and subsumption form. Renaming of projection
variables is also supported.
SpeCS is open source and can be found here.
Detailed results of evaluation presented in paper "SpeCS — A Sound
and Complete SPARQL Query Containment Solver" (submitted for
publication), the corpora used in it, other solvers and tools needed
to repeat the evaluation can be found here.
Initial ideas about SpeCS were presented in M. Spasić and M. V. Janičić, "SpeCS — SPARQL Query Containment Solver," 2020 Zooming Innovation in Consumer Technologies Conference (ZINC), Novi Sad, Serbia, 2020, pp. 31-35, doi: 10.1109/ZINC50678.2020.9161435, while video presentation of this paper is available at YouTube.
Contact
SpeCS is developed by Mirko Spasic,
in colaboration with
Milena Vujosevic Janicic.
For more information, please contact Mirko Spasic, mail: mirko _at_ matf.bg.ac.rs