NEPOMUK (framework)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Written in C++, Java
Type Semantic desktop
License Various (BSD-style preferred)[1]

NEPOMUK (Networked Environment for Personal, Ontology-based Management of Unified Knowledge) is an open-source software specification that is concerned with the development of a social semantic desktop that enriches and interconnects data from different desktop applications using semantic metadata stored as RDF. Between 2006 and 2008 it was funded by a European Union research project of the same name[2] that grouped together industrial and academic actors to develop various Semantic Desktop technologies.


Three active implementations of NEPOMUK exist: A C++/KDE-based variant, a Java-based variant, and a commercial version. More versions were created during the EU project between 2006 and 2008, some active beyond the project.[3]


NEPOMUK-KDE was originally featured as one of the newer technologies in KDE Software Compilation 4.[4] It used Soprano as the main RDF data storage and parsing library, while handling ontology imports through the Raptor parser plugin and the Redland storage plugin; all RDF data was stored by Virtuoso which also handled full-text indexing.[5] On a technical level, NEPOMUK-KDE allowed associating metadata to various items present on a normal user's desktop such as files, bookmarks, e-mails, and calendar entries. Metadata could be arbitrary RDF. Tagging is the most user-visible metadata application.

As the KDE SC 4 series of releases progressed, it became apparent that NEPOMUK was not delivering the performance and user experience that had initially been anticipated. As a result of this, in KDE SC 4.13 a new indexing and semantic search technology Baloo was introduced, with a short transition period allowing applications to be ported and data to be migrated before the removal of NEPOMUK.[6][7] Baloo initially used SQLite but currently uses LMDB[8] for storage, and Xapian for searching.


The Zeitgeist framework, used by GNOME and Ubuntu's Unity user interface, uses the NEPOMUK ontology, as does the Tracker search engine.


The Java-based implementation of NEPOMUK[9] was finished at the end of 2008 and served as a proof-of-concept environment for several novel semantic desktop techniques. It features its own frontend (PSEW) that integrates search, browsing, recommendation, and peer-to-peer functionality. The Java implementation uses the Sesame RDF store and the Aperture framework for integrating with other desktop applications such as mail clients and browsers.

A number of artifacts have been created in the context of the Java research implementation:

Refinder by Gnowsis[edit]

Implementation of the commercial Software as a service product Refinder[10] started in 2009 and a limited beta-version was released in December 2010.[11] Refinder was developed by Gnowsis, a spin-off company of the German Research Centre for Artificial Intelligence (DFKI) (project lead in the NEPOMUK EU project). The start-up was shut down in late 2013,[12] with no plans to make the implementation code available.

Refinder uses the same data formats as the other implementations, but using Software as a service instead of the desktop approach of the other implementations.

Data formats[edit]

  • PIMO — the data format used for describing a Personal Information Model, describing Persons, Projects, Topics, Events, etc., also used in NEPOMUK-KDE.[13]
  • NIE — the NEPOMUK Information Element Ontology (and the associated ontologies NFO etc.), describing resources on a desktop (files, mails, etc.)[14]


External links[edit]