Part I. Overview

Tracker SPARQL allows creating and connecting to one or more triplestore databases. It is used by the Tracker Miners filesystem indexer , and can also store and publish any kind of app data.

Querying data is done using the SPARQL graph query language. See the Examples to find out how this works. Storing data can also be done using SPARQL, or using the TrackerResource API.

You can share a database over D-Bus using the TrackerEndpoint API, allowing other libtracker-sparql users to query from it, either by referencing it in a SELECT { SERVICE ... } query, or by connecting directly with tracker_sparql_connection_bus_new.

Tracker SPARQL partitions the database into multiple graphs. You can implementing access control restrictions based on graphs, and we provide a Flatpak portal that does so. The number of graphs is limited.