Plasma activities and Nepomuk
Sebastian Kügler
sebas at kde.org
Sun Aug 2 01:01:17 CEST 2009
On Saturday 01 August 2009 00:25:19 Aaron J. Seigo wrote:
> On Friday 31 July 2009, Ivan Čukić wrote:
> > The most basic thing that comes to mind is a nepomuk resource, which the
> > other application listen to using the sopranoStatementAdded() signal in
> > SopranoModel.
> >
> > The other approach (DanielW pointed it out) is something like the nepomuk
> > service example located in playground
> > (/base/nepomuk-kde/usercontext/service/)
>
> personally, i prefer the idea of a nice API behind which the real work can
> hide (as the usercontext thing provides). direct access to what's going on
> in Soprano seems fragile and overly difficult to me from an application
> developer's POV.
>
> another big question is what the ontology to use is. when i last left off
> discussing this with the nepomuk people there was a long discussion being
> had about what that ontology should look like. i'm not sure what the end
> result was, tbh.
>
> personally, i favor something simpler and reflective of what we need rather
> than complex and theoretical.
Yes, definitely. We need to break down the functionality Nepomuk can provide to
specific things we want to do with it.
I've been thinking about this for Lion Mail, which makes for an interesting and
supposedly relatively simple example what *I* would like to do with Nepomuk. Lion
Mail can show different "sets" of email (for example folders, but in the future also
search results, virtual folders so to say). I would like to be able to know about the
context the user is working in, so if the context is "work" (work-work really), the
plasma lion mail thing shows work-related emails, including notifications of new
ones. At 5'o clock, you're free and you start doing freetime things, so the context
you're in changes from "work" to "freetime". Lion mail gets a notification that the
context has changed, and now loads emails related to this activity.
Implementation-wise, I'd basically only need a context object with a signal
contextChanged(QString), and then have the user tell me which emails belong to which
context (or rather, which emails to show or not to show).
Thinking one step further, Lion Mail could just display all emails that are tagged
with a tag belonging to our context.
On the other end of integration, it would be cool to make some plasmoids understand
RDF resources, and know how to display them. One possible plasmoid could be a person,
or a place (your current one). Dropping such an RDF resource onto plasma displays
content related to this resource then. This is comparable to one of the things I'm
working on in the background, making Plasma understand KIO (dropping an object from a
webpage should for example Just Work, i.e. if you drag an image from a webpage to
your desktop, it creates a picture frame of that image there). Something similar
could be done to RDF resources (which can also be identified by a URL, right?).
Maybe think of dragging a tag onto the desktop and a folder view of all the files /
objects belonging to this tag. (That last one is super simple to do of course
(essentially a folderview entry with a nepomuksearch:/ URL), but it lacks the last
bit of chrome to make it an accessible, visible feature.
Another relatively easy thing would be an applet much like the pastebin applet, you
drop a file or a URL onto it and it asks you which tag(s) you want to apply (in a
tag-cloud popup, for instance), the result is then saved to Nepomuk and it'll show up
in other applications that work with tags (i.e. a picture in Gwenview's tag-view).
> the big requirements we have in plasma is the ability to have a named
> "context" that can be associated with locations, people, documents ...
projets, tasks, time periods, ... :)
> context+location will likely end up being a pretty important pairing to at
> least some of our users since if i'm doing work related activities, what
> that looks like when i'm in the office vs in an airport is pretty different
> (e.g. vpn access, NDA'd documents, etc).
>
> in any case, if the nepomuk team could give us some pointers to where the
> ontology for this ended up, that'd be great.
Yes, it would be good to know more practical things, i.e. how this would look like in
a Nepomuk-enabled application, what are possible ontologies that could be used, how
do those ontologies look like, etc.
From what I've seen when I played around with Nepomuk code, it looked like a nice and
easy API, so I guess it's time to do something really useful with it.
--
sebas
http://www.kde.org | http://vizZzion.org | GPG Key ID: 9119 0EF9
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 489 bytes
Desc: This is a digitally signed message part.
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20090802/b1a10510/attachment.sig
More information about the Plasma-devel
mailing list