Getting started as a contributor
HeFQUIN is an open-source project focused on enabling efficient querying over heterogeneous data sources. Developers and users are encouraged to contribute to the project, whether by adding creating new extensions, suggesting new features, fixing bugs, or improving documentation.
Please read on if you're interested in contributing!
Set up your programming environment
Here's what you have to do to set up your programming environment to work on HeFQUIN.
Start by creating a local clone of the HeFQUIN repo using SSH:
git clone git@github.com:LiUSemWeb/HeFQUIN.git
or using HTTPS:
git clone https://github.com/LiUSemWeb/HeFQUIN.git
Import the project into your favorite IDE
-
Eclipse IDE
- Start Eclipse and create a new workspace.
-
In the
File
menu, selectImport...
. -
In the
Import
dialog that pops up, select as import sourceMaven->Existing Maven Projects
. -
An
Import Maven Projects
dialog pops up. Click on the buttonBrowse...
(next to theRoot Directory
text field). -
In the file dialog that pops up now, navigate to the folder into which you have cloned the HeFQUIN git repo and click
OK
. -
Now, back in the
Import Maven Projects
dialog, the filepom.xml
should be selected. Click onFinish
. -
If you are still in the Welcome screen of Eclipse, click on
Go to Workbench
.
You should now see HeFQUIN as a project in the
Project Explorer
window. -
Visual Studio Code
- Start Visual Studio Code.
- From the file dialog, open the folder into which you cloned the HeFQUIN git repo. Visual Studio Code should automatically configure the Maven project.
You should now see HeFQUIN as a project in the
Explorer
window.
Build HeFQUIN using Maven
The HeFQUIN source code is a Maven project. Hence, instead of using Eclipse (or any other IDE for Java), you can also compile and build the project using Maven on the command line. To do this, enter the directory into which you have cloned the HeFQUIN git repo. Next, build the project using the following command:
mvn package
Assuming the build process completes without errors, you can now directly run the scripts in the
bin/
directory:
-
hefquin
- Run a single query via the engine. E.g.:./bin/hefquin \ --query ../ExampleQuery.rq \ --federationDescription ../ExampleFederation.ttl
-
hefquin-server
- Start the engine as a service in an embedded web server (http://localhost:8080/). E.g.:./bin/hefquin-server
-
hefquin-pg
- Run a SPARQL query over a PG store. E.g.:./bin/hefquin-pg \ --query ExampleBGP.rq \ --lpg2rdfconf ExampleLPG2RDF.ttl \ --endpoint http://localhost:7474/db/neo4j/tx \ --username neo4j-username \ --password neo4j-password
-
hefquin-pg
- Materialize an RDF view of a PG store. E.g.:./bin/hefquin-pgmat \ --endpoint http://localhost:7474/db/neo4j/tx \ --username neo4j-username \ --password neo4j-password
To see the list of other possible arguments for the command line tools, you may execute the
script using the --help
argument. E.g.:
./bin/hefquin --help