Release 1.20.0: SPARQL Update support

Tuesday, March 30, 2021


On this page

    With this new 1.20.0 release, we bring support for SPARQL Update queries to Comunica. Next to this, several enhancements were made to improve developer experience, minor new features, and important bug fixes.

    SPARQL Update

    Up until now, Comunica only supported performing read-only queries over one or more sources. With this update, it is possible to execute SPARQL Update queries to modify data inside a source, or direct changes to a separate destination.

    The current implementation is fully compliant to the SPARQL Update specification, and it passes all tests of the test suite.

    Currently, Update support is limited to RDF/JS stores. Support for updating other types of destinations is planned, such as local RDF files, Linked Data Platform, SPARQL endpoints, SPARQL Graph Store protocol, ...

    No explicit support for transactions is available at the moment, as we assume that RDF/JS stores handle this on their own. Proper support for this at engine-level is planned.

    SPARQL endpoint worker threads

    If you use Comunica to expose a SPARQL endpoint, you can now set the number of parallel worker threads using the -w flag:

    $ comunica-sparql-http https://fragments.dbpedia.org/2016-04/en -w 4
    

    This will result in better performance when your endpoint serves many parallel requests.

    Together with this change, the timeout handling has been improved, as the old implementation would sometimes not terminate query executions even if the timeout was exceeded.

    Features, fixes and enhancements

    Next to the changes above, several other features, fixes and enhancements were applied, such the new @comunica/types and @comunica/context-entries packages, enabling blank node correlation across results, and a new link queue bus. Check out the full changelog to read more about them.