Projects/Nepomuk/DataMangementService

From KDE Community Wiki

This page describes todos and ideas regarding the data management service which will become the new central data hub in Nepomuk for KDE 4.7.

The code can be found in a git scratch repository.

TODO

  • Finalize definition of the resource watcher interface and implement it.
  • Add more tests to check the correct behaviour in combination with metadata (nao:lastModified, nao:created, nao:creator)
  • Make sure metadata sharing can be easily supported via this API.
  • QUESTION: Should we allow to add properties to a non-existing resource that is not a file, ie. a resource that does not have a type?
  • For properties with cardinality 1: if "p2 rdf:subPropertyOf p1" and "r p1 v1" then setProperty(r, p2, v2) should remove "r p1 v1".

Resource Watcher Idea

So a watcher would allow to specify a set of resources, a set of properties, and a set of types where the following combinations make sense:

  1. Only resources are set:
    Signals about property changes of the configured resources and deletion of the resources.
  1. Resources and properties are set:
    Signals about property changes of the configured resources and the configured properties.
  1. Only properties are set:
    Signals for any property change that involves the configured properties.
  1. Only types are set:
    Signals about newly created or deleted resources of any of the configured types. (Possible variant via flag or whatever: Signals about property changes for any resource of any of the configured types.)
  1. Types and properties set:
    Signals about property changes for any of the configured properties on any resource of any of the configured types.


DONE