# Part I. Overview

Tracker is a central repository of user information, that provides two big benefits for the desktop: Share data between applications (it doesn't matter the source once it is stored in the repository) and Link information from different sources (mixing contacts with files, location, activities and whatnot).

This central repository can work only with a very well defined data model, that applications can rely to store and recover their information. That data model is defined using a semantic web artifact called ontology. An ontology defines the concepts (classes) and properties (attributes) that the items in the repository can be/have.

There is an EU-funded project called Nepomuk, where a core of ontologies to model the Desktop were defined. This set was a very good starting point for Tracker but new requirements and heavy development in collaboration with applications provided a very valuable feedback, in form of fixes and extensions. Some of this work is already submitted for approval in the upstream version, but the process is long and hard, so the Tracker ontologies are diverging slowly.

This documentation describes the Tracker flavour of Nepomuk ontologies. The big picture and basic concepts are the same as in the original Nepomuk, but "hell and heaven are in the details". All classes, properties and restrictions included in these pages should work in Tracker. Any error in this documentation can be reported in the Tracker Mailing list or bugzilla.

This is just documentation about the ontologies. For more information about Tracker technical details and implementation, please refer to the Tracker Documentation wiki page in GNOME.