Comunica SPARQL HDT Init Actor
A comunica SPARQL HDT Init Actor.
This module is part of the Comunica framework.
Click here to learn more about querying HDT files with Comunica.
Install
HDT requires GCC 4.9 or higher to be available.
$ yarn global add @comunica/actor-init-sparql-hdt
or
$ npm install -g @comunica/actor-init-sparql-hdt
Usage from the command line
Show 100 triples from a HDT file:
$ comunica-sparql-hdt hdtFile@myfile.hdt "CONSTRUCT WHERE { ?s ?p ?o } LIMIT 100"
Show the help with all options:
$ comunica-sparql-hdt --help
Just like Comunica SPARQL,
a dynamic variant (comunica-dynamic-sparql-hdt
) also exists.
Read more about querying from the command line.
Usage within application
This engine can be used in JavaScript/TypeScript applications as follows:
const newEngine = require('@comunica/actor-init-sparql-hdt').newEngine;
const myEngine = newEngine();
const result = await myEngine.query(`
SELECT ?s ?p ?o WHERE {
?s ?p <http://dbpedia.org/resource/Belgium>.
?s ?p ?o
} LIMIT 100`, {
sources: ['http://fragments.dbpedia.org/2015/en'],
});
// Consume results as a stream (best performance)
result.bindingsStream.on('data', (binding) => {
console.log(binding.get('?s').value);
console.log(binding.get('?s').termType);
console.log(binding.get('?p').value);
console.log(binding.get('?o').value);
});
// Consume results as an array (easier)
const bindings = await result.bindings();
console.log(bindings[0].get('?s').value);
console.log(bindings[0].get('?s').termType);
Read more about querying an application.
Usage as a SPARQL endpoint
Start a webservice exposing http://fragments.dbpedia.org/2015-10/en via the SPARQL protocol, i.e., a SPARQL endpoint.
$ comunica-sparql-hdt-http hdtFile@/path/to/my/file.hdt
Show the help with all options:
$ comunica-sparql-hdt-http --help
The SPARQL endpoint can only be started dynamically.
An alternative config file can be passed via the COMUNICA_CONFIG
environment variable.
Use bin/http.js
when running in the GitHub repo.