Nepomuk

From KDE Wiki Sandbox
Revision as of 14:16, 9 June 2010 by Claus chr (talk | contribs) (Created page with '===Sammenhænge===')

Template:I18n/Language Navigation Bar


Nepomuk

Formålet med denne side er ikke at forklare Nepomun teknologien i alle detaljer, men at give et kort overblik, nogle eksempler, visionerne bag og links til relevant information på nettet.

Kort forklaring

Som nævnt i Ordlisten har Nepomuk at gøre med klassifikation, organisering og præsentation af data. Det er ikke en applikation men en komponent, som kan bruges af udviklere i deres applikationer.

Prøv den

Dolphin bruger for eksempel Nepomuk. For at kunne prøve det følgende, så skal Nepomuk og Strigi være aktiverede i Systemindstillinger > Skrivebordssøgning. Dolphin's sidepanel Information lader dig knytte tags, vurderinger og kommentarer til filer. Denne information lagres i Nepomuk og indekseres af Strigi. Du kan søge på metadata i Dolphin's navigationslinje - skriv "nepomuksearch:/" efterfulgt af søgeordet.

Funktionaliteter

Nepomuk tilbyder flere 'lag' af funktionalitet til applikationer. Det første og enkleste involverer manuel tagging, bedømmelse og kommentering som i Dolphin. Det hjælper dig med at finde filer hurtigere, men kræver meget arbejde.

For at gøre det nemmere at finde tekstfiler tilbyder Nepomuk er anden funktionalitet: indeksering af filernes tekster. Det bruger en teknologi ved navn Strigi til dette. Nu kan du også finde filer ved at søge på nogle ord, som du ved, at de indeholder, eller blot på (en del af) deres titel.

Det tredje lag er meget komplekst og grunden til, at Nepomuk blev skabt af adskillige firmaer og universiteter i EU som et forskningsprojekt. Det er her, du finder vanskelige begreber som 'semantisk skrivebord' og 'ontologier'. Det handler i bund og grund om sammenhænge og beslægtethed.

Eksempler

Lad mig prøve at forklare, hvad Nepomuk kan ved to eksempler.

Beslægtethed

Lad os sige, at du modtog et foto fra en ven for 2 uger siden. Du gemte det et eller andet sted på din computer. Hvordan finder du nu filen? Hvis du ikke kan huske, hvor du gemte den, så har du et problem.

Her prøver Nepomuk at hjælpe dig. Du ved, at filen kom fra den der ven -- det ved computeren ikke; men Nepomuk kan huske 'slægtskabet'. Søger du på din vens navn, så findes fotoet frem!

Andre muligte slægtskaber er mellem en internetside, som du kopierede tekst fra og det dokument, som du satte teksten ind i eller mellem to billeder af den samme bil. Sådanne slægtskaber kan undertiden trækkes ud af filerne selv (du kunne se på fotos hvem eller hvad, der er på dem) eller gives af de involverede applikationer (som i email-eksemplet ovenfor). Den del af Nepomuk er stadig under intens udvikling og mangler endnu at blive integreret i applikationer, så du må regne med, at der kommer til at gå et par år, før det hele fungerer.

Denne del af Nepomuk handler om smart søgning. Tænk på, hvordan Google prøver at håndtere dine søgninger på en smart måde: når du søger efter et hotel og et bynavn, så får du et bykort, som viser hoteller i den nævnte by oven over de fundne websteder! Hvis du staver forkert, så får du måske et forslag til en bedre stavemåde. Google prøver også at placere de mest relevante informationer først i listen af resultater ved hjælp af komplekse beregninger af slægtskaber (links) mellem websteder. Nepomuk vil også blive i stand til at give smarte søgeresultater ordnet efter relevans ved at bruge information om beslægtethed.

Sammenhænge

These relationships can not only help you while searching for files, but also have an influence on applications and what information they present. Note that this way of using Nepomuk is still more a vision than reality! Many of the components are in place, but it is not yet integrated in applications and the desktop as a whole.

So here an example of bringing context awareness to your desktop could help you work more efficiently.

Say you are working on finishing some notes you took in a meeting. The phone rings, and somebody asks you to find that spreadsheet with prices, adjust it for a customer. After a few more interruptions you find your desktop full of files and windows...

It'd be nice to be able to organize all that a bit better, right?

Enter 'activities'. These have been introduced in Plasma, and currently offer different 'desktops'. They are a bit like virtual desktops, except that the desktop itself changes, not the set of applications. Different widgets, background, things like that. Of course, since KDE 4.3, each virtual desktop can have it's own activity, bringing the two in sync.

If applications and desktop were aware of activities, you could create an activity for each of the tasks you regularly work on. So if you often have to change a spreadsheet with prices, you create an activity for that: put a Folder View (or several) widget on the desktop, add a calculator and a todo-widget to keep track of what you still have to change. Maybe even an email folder widget showing the mails with questions regarding these prices spreadsheets!

As soon as somebody asks a question about prices, you switch to this activity. Fire up your spreadsheet application. It is aware of your activity so it shows recent price spreadsheets, not the recent list of inventory you were working on in another activity! Kopete, the chat application shows your colleague who knows all about prices, as she is the person you always chat with when working on this activity.

When you are finished, you go back to another activity, and once again all applications adjust their behavior to fit what you are doing.

The benefits of such an activity-based work flow go further than you might at first expect. It not only helps you find files and contact persons, but also helps in switching tasks itself. The human brain isn't very good at multi-tasking - it takes most people several minutes to get up to speed after switching tasks. Changing the 'environment' helps a lot in speeding this up, even if it's just on the screen. Compare it with getting in the mood for your holiday by packing your bag!

Of course, the above is mostly relevant to people working behind their computer in the office or at home. A gamer or a casual user would probably not use these activities much.

Note that the scenario described above is still years away from reality. Much of the basic infrastructure for this in KDE is in place but much is still left.

Sharing and privacy

There is one thing I need to touch on before pointing to other sources of information: sharing Nepomuk data. It'd be great if your tags, ratings and comments would be shared with others when you send them files. However, if you tagged a contact with a slightly embarrassing tag ('boring in bed') and send that persons contact information to a mutual friend you probably don't want that tag to be send as well... This issue is of course being considered and an important subject of research by the Nepomuk researchers. For the time being, these privacy concerns, combined with technical challenges, are the reason Nepomuk context is private. Rest assured the Nepomuk team does all it can to make sure your privacy is respected.

More info:
Wikipedia - Semantic Desktop
Wikipedia - NEPOMUK Framework
NEPOMUK website
NEPOMUK KDE site
article explaining Nepomuk on the DOT