Completeness Reasoning Experiment

This page describes the program and the material for the experimental evaluation of checking query completeness using completeness statements. The main reference of the experiment which contains the formalization, techniques, and discussion of the experimental results has been submitted to a journal.


The queries in the experiments are taken from real query logs of DBpedia (DBP), Semantic Web Dog Food (SWDF), and Linked Geo Data (LGD), provided by Linked SPARQL Queries (LSQ) dataset. We extract SELECT queries in the conjunctive fragment, which account for about 40% of the total number of SELECT queries, giving us around 465,000 queries in total.

Completeness Statements

For each query, we take its full BGP P and construct a completeness statement Compl(P|{}). Via query homomorphism techniques, we remove redundant completeness statements, that is, completeness statements whose CONSTRUCT query representations are equivalent. In total, there are about 400,000 completeness statements generated. By construction, all queries are guaranteed to be complete.

Experiment Program

We created a program for the experiments in Java using the Apache Jena library, an open source Semantic Web library. To implement completeness reasoning, we particularly rely on the ARQ module of Jena, which provides functionalities for SPARQL query processing. The retrieval of constant-relevant statements is implemented using a standard Java HashMap. The source code is available as an Eclipse workspace. The ready-to-use JAR file of the program is available in two modes:

  1. Completeness reasoning mode: here
  2. Query evaluation mode (which takes and computes the statistics of the query evaluation time already provided by the LSQ dataset): here

Both modes take one parameter, which is the endpoint from which the queries are taken: dbp, swdf, lgd. Note the experiment output may be buffered via ‘>’. Below is an example of running the completeness reasoning mode over SWDF endpoint.

java -jar CompletenessReasoningExperiment.jar swdf > output-completeness-reasoning-swdf.txt

The summary of the experiment results is of the CSV-style and is output at the bottom.

~this manual file is created by Fariz Darari, email: