Tracker – 3.0
Description: Reference for Tracker-3.0

### Namespace

# Tracker – 3.0

Low-footprint RDF triple store with SPARQL 1.1 interface

Version | 3.7.3
Authors | Tracker Development Team
License | GPL-2.1-or-later
Website | https://tracker.gnome.org/
Source | https://gitlab.gnome.org/GNOME/tracker/

#### Build

C headers | `libtracker-sparql/tracker-sparql.h`
pkg-config files | `tracker-sparql-3.0`

#### Dependencies

GObject—2.0 | The base type system library
| Browse documentation
Gio—2.0 | GObject Interfaces and Objects, Networking, IPC, and I/O
| Browse documentation

#### Additional documentation

- Overview
- Examples
- SPARQL Tutorial
- Sandboxing and portals
- Ontologies
- Builtin SPARQL functions
- SPARQL as understood by Tracker
- Implementation limits
- Performance dos and donts
- Security considerations
- Migrating from 2.x to 3.0
- XML schema (XSD)
- Resource Description Framework (RDF)
- RDF Schema (RDFS)
- Nepomuk Resource Language (NRL)
- Dublin Core metadata (DC)
- Nepomuk Information Element (NIE)
- Nepomuk Annotation Ontology (NAO)
- Nepomuk Contacts Ontology (NCO)
- Nepomuk File Ontology (NFO)
- Nepomuk MultiMedia (NMM)
- Maemo Feeds Ontology (MFO)
- Tracker-specific annotations Ontology
- Simplified Maemo Location Ontology (SLO)
- libosinfo-specific annotations Ontology
- Classes Hierarchy

#### Classes

Batch | `TrackerBatch` executes a series of SPARQL updates and RDF data insertions within a transaction. since: 3.1
Endpoint | `TrackerEndpoint` is a helper object to make RDF triple stores represented by a `TrackerSparqlConnection` publicly available to other processes/hosts. since: 3.0
EndpointDBus | `TrackerEndpointDBus` makes the RDF data in a `TrackerSparqlConnection` accessible to other processes via DBus. since: 3.0
EndpointHttp | `TrackerEndpointHttp` makes the RDF data in a `TrackerSparqlConnection` accessible to other hosts via HTTP. since: 3.1
NamespaceManager | `TrackerNamespaceManager` object represents a mapping between namespaces and their shortened prefixes. since: 3.0
Notifier | `TrackerNotifier` allows receiving notification on changes in the data stored by a `TrackerSparqlConnection`. since: 3.0
Resource | `TrackerResource` is an in-memory representation of RDF data about a given resource. since: 3.0
SparqlConnection | `TrackerSparqlConnection` holds a connection to a RDF triple store. since: 3.0
SparqlCursor | `TrackerSparqlCursor` provides the methods to iterate the results of a SPARQL query. since: 3.0
SparqlStatement | `TrackerSparqlStatement` represents a prepared statement for a SPARQL query. since: 3.0

#### Structs

NotifierEvent | The TrackerNotifierEvent struct represents a change event in the stored data. since: 3.0

#### Enumerations

DeserializeFlags | Flags affecting deserialization from a RDF data format. since: 3.0
NotifierEventType | Notifier event types. since: 3.0
RdfFormat | Describes a RDF format to be used in data exchange. since: 3.0
SerializeFlags | Flags affecting serialization into a RDF data format. since: 3.0
SparqlValueType | Enumeration with the possible types of the cursor’s cells. since: 3.0

#### Bitfields

SparqlConnectionFlags | Connection flags to modify `TrackerSparqlConnection` behavior. since: 3.0

#### Error Domains

SparqlError | Error domain for Tracker Sparql. Errors in this domain will be from the `TrackerSparqlError` enumeration. See `GError` for more information on error domains. since: 3.0

#### Functions

check_version | Checks that the Tracker library in use is compatible with the given version. since: 3.0
sparql_escape_string | Escapes `literal` so it is suitable for insertion in SPARQL queries as string literals. since: 3.0
sparql_escape_uri | Escapes a string for use as a URI. since: 3.0
sparql_escape_uri_printf | Formats and escapes a string for use as a URI. This function takes variadic arguments. since: 3.0
sparql_escape_uri_vprintf | Formats and escapes a string for use as a URI. This function takes a `va_list`. since: 3.0
sparql_get_ontology_nepomuk | Returns a path to the built-in Nepomuk ontologies. since: 3.0
sparql_get_uuid_urn | Creates a fresh UUID-based URN. since: 3.0

#### Function Macros

CHECK_VERSION | This macro essentially does the same thing as `tracker_check_version()` but as a pre-processor operation rather than a run-time operation. It will evaluate true or false based the version passed in and the version available. since: 3.0

#### Constants

MAJOR_VERSION | The major version of the Tracker library. since: 3.0
MICRO_VERSION | The micro version of the Tracker library. since: 3.0
MINOR_VERSION | The minor version of the Tracker library. since: 3.0
PREFIX_DC | The Prefix of the DC (Dublin Core) namespace. since: 3.0
PREFIX_MFO | The Prefix of the MFO namespace. since: 3.0
PREFIX_NAO | The Prefix of the NAO namespace. since: 3.0
PREFIX_NCO | The Prefix of the NCO namespace. since: 3.0
PREFIX_NFO | The Prefix of the NFO namespace. since: 3.0
PREFIX_NIE | The Prefix of the NIE namespace. since: 3.0
PREFIX_NMM | The Prefix of the RDF namespace. since: 3.0
PREFIX_NRL | The Prefix of the NRL namespace. since: 3.0
PREFIX_OSINFO | The Prefix of the Osinfo namespace. since: 3.0
PREFIX_RDF | The Prefix of the RDF namespace. since: 3.0
PREFIX_RDFS | The Prefix of the RDFS namespace. since: 3.0
PREFIX_SLO | The Prefix of the SLO namespace. since: 3.0
PREFIX_TRACKER | The Prefix of the Tracker namespace. since: 3.0
PREFIX_XSD | The Prefix of the XSD namespace. since: 3.0