Click here to download the full version of the paper.
We have implemented our approach based on an old version of RDFox. Below are the linux executables. "RDFox-sample.zip" was used to create deletions of various sizes. "RDFox-dredc.zip" was the system on which we tested the performance of Mat and DRed^c. "RDFox-bfc.zip" was the system on which we tested the performance of B/F^c. "RDFox-modular.zip" was the modified system on which we tested the performance of M-Mat and M-DRed^c.
RDFox-sample.zip | RDFox-dredc.zip | RDFox-bfc.zip | RDFox-modular.zip |
You do not have to uncompress the bz2 files; our test systems can read them directly.
Claros.bz2 | LUBM.bz2 | DBpedia.bz2 | DAG.bz2 | Family.bz2 | Relations.bz2 | Seq.bz2 |
Note: To be able to decompress the "bz2" files, our test systems require pbzip2 to be installed in your operating system.
Below are the test programs.
Claros-LE.dlog | LUBM-LE.dlog | DBpedia-SKOS.dlog | DAG-R.dlog | Family.dlog | Relations.dlog | Seq.dlog |
We used RDFox-sample.zip to generate deletion files. The system guarantees that you get the same sampling as long as you provide the same random seeds. For small deletions we used 1--10 as random seeds to get different samples of the same size (1000). For large deletions we used 1 as random seeds. Below are two examples illustrating this.
Step 1: Run "./RDFox-sample -shell" in command line
Step 2: Run the following commands:
> init seq
> set sampling-method uniform (it is important that you set the sampling method to uniform since the default one is random-walk)
> sample 1000 c 1 "./datasets/DBpedia.bz2" (do not forget the quotation marks; parameter "c" for "constant")
> export "./deletions/DBpedia-delete1k-1" (make sure that a directory of the name "deletions" is already there)
> quit
You will find the deletion file "DBpedia-delete1k-1" in the "deletions" directory.Step 1: Run "./RDFox-sample -shell" in command line
Step 2: Run the following commands:
> init seq
> set sampling-method uniform
> sample 25 p 1 "./datasets/DBpedia.bz2" ("p" for "percent")
> export "./deletions/claros-delete25p-1"
> quit
Step 1: Run "./RDFox-modular -shell" in command line
Step 2: Run the following commands:
> init par-complex-nn (do not set it to "seq")
> set reason.use-DRed true (always set this to true; set this also to true if you are using RDFox-dredc; set this to false if you are using RDFox-bfc)
> import "./programs/DBpedia-SKOS.dlog"
> mat
> import + "./datasets/DBpedia.bz2"
> mat
> import - "./deletions/DBpedia-delete1k-1"
> mat
and you will be able to get the incremental materialisation time and the change in the number of tuples. Run "quit" to exit the system.
By default the optimisations for regular chain programs are disabled. To enable this, the user needs to specify which predicates such optimisations will be applied to. To reproduce the results for Relations-RCH in Table 4 of the paper, use chainpreds.txt and follow the steps below.
Step 1: Run "./RDFox-modular -shell" in command line
Step 2: Run the following commands:
> init par-complex-nn
> set reason.use-DRed true
> chain "./chainpreds.txt"
> import "./programs/Relations.dlog"
> mat
> import + "./datasets/Relations.bz2"
> mat
> quit