Modify Comunica


On this page

    The following guides show how to configure your own Comunica engine, or extend Comunica by implementing new components. If you want to see some full examples, have a look at our dedicated examples repository.

    Getting started with modification

    Basic guides on how to easily get started with Comunica modification.

    Querying with a custom configuration from the command line

    Create a custom configuration of Comunica modules with reduced features, and query with it from the command line.

    Querying with a custom configuration in a JavaScript app

    Create a custom configuration of Comunica modules with changed features, and query with it from within your application using the JavaScript API.

    Exposing your custom config as an npm package

    Wrap your config in an npm package, and expose a CLI tool and a JavaScript API.

    Exposing your custom config in a Web client

    Demonstrate your query engine as a static Web page.

    Contributing a new query operation actor to the Comunica repository

    Setup a development environment, implement a new actor, and create a pull request.

    Adding a config parameter to an actor

    For an existing actor, add a parameter that can be customized in the config file.

    Extensions

    Existing extensions of Comunica.

    Modify FAQ

    Frequently asked question about Comunica modification.

    Advanced modification

    Advanced guides on how to get the most out of Comunica modification.

    Actor Patterns

    Overview of common design patterns for actors

    Algebra

    The internal representation of queries during query execution.

    Core Architecture

    The low-level software architecture of Comunica for achieving modularity.

    SPARQL Architecture

    The high-level software architecture of Comunica for implementing SPARQL.

    Browser builds

    All modules in Comunica can be built for the browser.

    Buses and Actors

    An overview of all buses in Comunica and their actors.

    Components.js

    Components.js is the dependency injection framework that Comunica uses to wire components via config files.

    Custom CLI arguments

    Adding custom arguments to CLI tools

    Expression Evaluator

    The expression evaluation engine of Comunica.

    Hypermedia

    Discovery of data source capabilities during query execution.

    Joins

    Overview of how join operations are handled during query planning

    Linking local Comunica versions to other projects

    Guide on how to use a local development version of Comunica with another local project

    Logging

    How to log messages from within actors.

    Mediators

    An overview of all mediators in Comunica.

    Metadata

    Information for adaptive planning of query operations.

    Observers

    Passively observe actions executed by actors on a given bus.

    Query operation result types

    An overview of the different output types for query operations.

    RDF Parsing and Serializing

    Basic concepts behind parsing and serializing RDF.

    Testing

    The unit and integration tests that lead to a more stable codebase.

    Benchmarking

    Guidelines on running experiments with Comunica.