NEPOMUK | |
NEPOMUK | |
Programming Language: | C++, Java |
Genre: | 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[10] 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:
Implementation of the commercial Software as a service product Refinder[12] started in 2009 and a limited beta-version was released in December 2010.[13] 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,[14] 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.