class SPARQLQueryDispatcher {
constructor(endpoint) {
this.endpoint = endpoint;
}
query(sparqlQuery) {
const fullUrl = this.endpoint + '?query=' + encodeURIComponent(sparqlQuery);
const headers = { Accept: 'application/sparql-results+json' };
return fetchRetry(fullUrl, { headers })
.then(body => body.json())
.then(res =>
res.results.bindings.map(binding => {
const simpleBinding = {};
for (let prop in binding) {
simpleBinding[prop] = binding[prop].value;
}
return simpleBinding;
})
);
}
}