Skip to content

HeFQUIN is a query federation engine for heterogeneous federations of graph data sources, including federations of knowledge graphs.

License

Notifications You must be signed in to change notification settings

LiUSemWeb/HeFQUIN

Repository files navigation

HeFQUIN

HeFQUIN is a query federation engine for heterogeneous federations of graph data sources (e.g, federated knowledge graphs) that is currently under development by the Semantic Web research group at Linköping University.

For detailed information about HeFQUIN, refer to the Website at https://liusemweb.github.io/, where you can find

Quick Guide

Using HeFQUIN as a Service

  • Setup via Docker

    • Pull the image for the latest release by executing the following command:
      docker pull ghcr.io/LiUSemWeb/hefquin:latest
    • Thereafter, execute the following command to start the HeFQUIN service using Docker:
      docker run \
          -p 8080:8080 \
          -v MyFedConf.ttl:/usr/local/tomcat/webapps/ROOT/DefaultFedConf.ttl \
          hefquin:latest
      where
    • Next, continue at the point "Interacting with the HeFQUIN Service" below.
    • Our documentation page about running HeFQUIN via Docker provides more details, including a description of how to build your own Docker image of HeFQUIN.
  • Setup via the Embedded Servlet Container

  • Interacting with the HeFQUIN Service

    • After starting up the HeFQUIN service, you can first test it test by opening http://localhost:8080/ in a Web browser (assuming that you have started the service at port 8080).
    • You can interact with the service like with a SPARQL endpoint (the endpoint should be exposed at http://localhost:8080/sparql). For instance, by using the command-line tool curl, you may execute the following command to issue the query in a file called ExampleQuery.rq.
      curl -X POST http://localhost:8080/sparql --data-binary @ExampleQuery.rq -H 'Content-Type: application/sparql-query'
    • Our documentation page about interacting with a HeFQUIN service provides more details.
    • Moreover, you can read more about the queries and query features that you can use.

Using HeFQUIN via the Command-Line Program

Using HeFQUIN as a Java Library

  • Assuming you use Maven as the build tool for your Java project, you can specify HeFQUIN as a dependency for your project simply by adding the following snippet to the dependencies section of your POM file (make sure to change the given version number to the version number of the HeFQUIN release you want to use).
    <dependency>
      <groupId>se.liu.research.hefquin</groupId>
      <artifactId>hefquin-engine</artifactId>
      <version>0.0.1</version> <!-- replace this by the version number of the HeFQUIN release to be used -->
    </dependency>
  • After changing the POM file, you can run the following command in your Maven project to compile your project with the new dependency (or you refresh/reimport your Maven project in the IDE that you are using).
    mvn clean compile
  • Now you can use any of the Java interfaces and classes of HeFQUIN in the Java code of your project. You find information about these interfaces and classes in our Javadoc documentation.
  • Our documentation page about integrating HeFQUIN into your Java code provides an overview on how to run queries over a federation from within your Java code.
  • Our documentation page about adding HeFQUIN as a dependency to your Maven project provides more details on the setup process, including a description of how to use the current developer version instead of a release.

About

HeFQUIN is a query federation engine for heterogeneous federations of graph data sources, including federations of knowledge graphs.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages