/comunica-feature-link-traversal

📬 Comunica packages for link traversal-based query execution

Primary LanguageTypeScriptOtherNOASSERTION

Comunica

Link Traversal for Comunica

Build Status Coverage Status Gitter chat

Learn more about Comunica on our website.

This is a monorepo that contains packages for allowing Comunica to link traversal-based query execution. If you want to use an Link Traversal-enabled Comunica engine, have a look at Comunica SPARQL Link Traversal.

Concretely, link traversal is enabled in the following engines:

These engines make use of the following packages:

Warning: All packages in this repo should be considered unstable, and breaking changes may occur at any time.

Click here to learn more about Link Traversal in Comunica, or to see live examples.

Development Setup

(JSDoc: https://comunica.github.io/comunica-feature-link-traversal/)

This repository should be used by Comunica module developers as it contains multiple Comunica modules that can be composed. This repository is managed as a monorepo using Lerna.

If you want to develop new features or use the (potentially unstable) in-development version, you can set up a development environment for Comunica.

Comunica requires Node.JS 18.0 or higher and the Yarn package manager. Comunica is tested on OSX, Linux and Windows.

This project can be setup by cloning and installing it as follows:

$ git clone https://github.com/comunica/comunica.git
$ cd comunica
$ yarn install

Note: npm install is not supported at the moment, as this project makes use of Yarn's workspaces functionality

This will install the dependencies of all modules, and bootstrap the Lerna monorepo. After that, all Comunica packages are available in the packages/ folder and can be used in a development environment, such as querying with Comunica SPARQL Link Traversal (engines/query-sparql-link-traversal).

Furthermore, this will add pre-commit hooks to build, lint and test. These hooks can temporarily be disabled at your own risk by adding the -n flag to the commit command.

License

This code is copyrighted by Ghent University – imec and released under the MIT license.