Skip to content

Commit

Permalink
docs: update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Federico Igne committed May 19, 2022
1 parent 05205b0 commit eca3499
Showing 1 changed file with 52 additions and 19 deletions.
71 changes: 52 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ A hybrid architecture for conjunctive query answering overover OWL 2 DL.
<a href="https://github.com/KRR-Oxford/ACQuA/issues">Report bug</a>
<br/><br/>
<a href="https://github.com/KRR-Oxford/ACQuA/releases/latest">
<img src="https://img.shields.io/github/release/KRR-Oxford/RSAComb.svg?style=for-the-badge" alt="Release badge">
<img src="https://img.shields.io/github/release/KRR-Oxford/ACQuA.svg?style=for-the-badge" alt="Release badge">
</a>
<a href="https://github.com/KRR-Oxford/ACQuA/issues">
<img src="https://img.shields.io/github/issues/KRR-Oxford/RSAComb.svg?style=for-the-badge" alt="Issues badge">
<img src="https://img.shields.io/github/issues/KRR-Oxford/ACQuA.svg?style=for-the-badge" alt="Issues badge">
</a>
<!-- <a href="https://github.com/KRR-Oxford/ACQuA/actions"> -->
<!-- <img src="https://img.shields.io/github/workflow/status/KRR-Oxford/RSAComb/Scala%20CI/develop?label=TESTS&style=for-the-badge" alt="GitHub Actions badge"> -->
<!-- <img src="https://img.shields.io/github/workflow/status/KRR-Oxford/ACQuA/Scala%20CI/develop?label=TESTS&style=for-the-badge" alt="GitHub Actions badge"> -->
<!-- </a> -->
<a href="LICENSE">
<img src="https://img.shields.io/github/license/KRR-Oxford/ACQuA.svg?style=for-the-badge" alt="License badge">
Expand All @@ -41,29 +41,35 @@ If the bounds don’t coincide, then the “gap” answers are checked using the

This reference implementation combines [RSAComb], [PAGOdA], and [HermiT], but these tools can be potentially subtituted or augmented with more capable ones to improve the overall performance of the system.

> ACQuA is still in its preliminary stage of development and might contain bugs.
> *Disclaimer:* ACQuA is still in its preliminary stage of development and might contain bugs.
## Preliminaries

RSAComb uses a recent version of [RDFox] under the hood to offload part of the computation.

In order to run ACQuA you need to have [RDFox](https://www.oxfordsemantic.tech/product) available in your system, along with *a valid license*.
In order to run ACQuA you need to have RDFox available in your system, along with *a valid license*.
RDFox is proprietary software and as such we are not able to distribute it along with our code.
This software has been developed and tested with RDFox v5.5
This software has been developed and tested with **RDFox v5.5**.

### Requirements

- Maven
- [RSAComb] v1.1.0
- RDFox v5.5

### Installing RDFox

We refer to the [official documentation](https://docs.oxfordsemantic.tech/getting-started.html#getting-started) for a step-by-step guide on how to setup RDFox on your personal machine.
In particular, you will need to know the path to the RDFox Java API (usually called `JRDFox.jar`) that comes with the distribution.

Alternatively, run the following commands (on a Linux x86 machine) from the root of the project to install RDFox locally.
Download links for other versions, operating systems, and architectures can be found [here](https://www.oxfordsemantic.tech/downloads).
Download links for other versions, operating systems, and architectures can be found [here][RDFox].

```{.bash}
mkdir -p lib && pushd lib
wget https://rdfox-distribution.s3.eu-west-2.amazonaws.com/release/v5.5/RDFox-linux-x86_64-5.5.zip
unzip RDFox-linux-x86_64-5.2.1.zip
ln -s RDFox-linux-x86_64-5.2.1.zip/lib/JRDFox.jar
unzip RDFox-linux-x86_64-5.5.zip
ln -s RDFox-linux-x86_64-5.5/lib/JRDFox.jar
popd
```

Expand All @@ -76,16 +82,40 @@ One easy way is to put your license key in a file `RDFox.lic` in `$HOME/.RDFox/`

## Using the software

`TODO`
The project is managed using Maven.
You can compile the code using the following command

### Running tests
```{#acqua-compile .sh}
mvn compile
```

`TODO`
To build a JAR file, package the project as follows

```
mvn compile
```{#acqua-package .sh}
mvn package
java -cp ... uk.ac.ox.cs.acqua.Acqua [OPTIONs]
```

To run ACQuA from the command line you can use the following command

```{#acqua-run .sh}
java -cp target/acqua-0.2.0-jar-with-dependencies.jar:<path/to/JRDFox.jar>:<path/to/RSAComb.jar> uk.ac.ox.cs.acqua.Acqua [OPTION ...]
```

where `path/to/RSAComb.jar` and `path/to/JRDFox.jar` are the paths in your system for `RSAComb.jar` and `JRDFox.jar`, respectively.
For example to get a help message from the CLI use

```{#acqua-help .sh}
java -cp target/acqua-0.2.0-jar-with-dependencies.jar:<path/to/JRDFox.jar>:<path/to/RSAComb.jar> uk.ac.ox.cs.acqua.Acqua --help
```

To run an example shipping with the distribution you can try

```{#acqua-test .sh}
java -cp target/acqua-0.2.0-jar-with-dependencies.jar:<path/to/JRDFox.jar>:<path/to/RSAComb.jar> \
uk.ac.ox.cs.acqua.Acqua \
-o tests/lubm/univ-bench.owl \
-d tests/lubm/data/lubm1.ttl \
-q tests/lubm/queries.sparql
```

## References
Expand All @@ -97,8 +127,8 @@ java -cp ... uk.ac.ox.cs.acqua.Acqua [OPTIONs]
## Acknowledgements

- OWLAPI [[2]](#references)
- [RDFox](https://www.oxfordsemantic.tech/product)
- [PAGOdA]()
- [RDFox]
- [PAGOdA]

## Credits

Expand All @@ -112,6 +142,9 @@ From the [Knowledge Representation and Reasoning research group](https://www.cs.

This project is licensed under the [Apache License 2.0](LICENSE).

## TODOs
<!-- References -->

- [ ] Better integration between ACQuA, RDFox and PAGOdA configuration parameters.
[RSAComb]: https://github.com/KRR-Oxford/RSAComb
[RDFox]: https://www.oxfordsemantic.tech/product
[PAGOdA]: http://www.cs.ox.ac.uk/isg/tools/PAGOdA
[HermiT]: http://www.hermit-reasoner.com/

0 comments on commit eca3499

Please sign in to comment.