Nepomuk

    From KDE UserBase Wiki
    Revision as of 13:43, 6 January 2011 by Aspotashev (talk | contribs) (Created page with "===Контекст===")

    Nepomuk

    Цель данной страницы не детальное объяснение технологии Nepomuk, а ее краткий обзор, показ отдельных примеров, формирование видения того, что скрывается за ней, предоставление ссылок на соответствующую информацию в Интернете.

    Краткое объяснение

    Как сказано в Глоссарии речь идет о классификации, организации и представлении данных. Это не приложение, а компонент, который может быть использован разработчиками в приложениях.

    Try out

    For example, Dolphin makes use of Nepomuk. For the following to hold Nepomuk and Strigi must be enabled from System settings -> Desktop search. The information sidebar of Dolphin allows you to assign tags, ratings and comments to files. This information is then stored in Nepomuk and indexed by Strigi. You can then search for metadata using the navigation bar in Dolphin. Write "nepomuksearch:/" followed by search terms.

    Функциональность

    Nepomuk предлагает приложениям несколько уровней функциональности. Первый и наиболее простой из них, позволяет вручную устанавливать метки, оценки и добавлять комментарии для файлов, как это сделано в Dolphin. Это поможет вам найти ваши файлы быстрее, но требует много ручной работы.

    Чтобы сделать поиск текстовых файлов легче, Nepomuk предлагает вторую функциональность: индексирование текста, содержащегося в файлах. Для этого используется технология, называемая Strigi. Теперь вы можете найти эти файлы, введя слова, которые содержатся в этих файлах, или просто название файла (или его часть).

    Третий уровень достаточно сложен, не зря Nepomuk задумывался как исследовательский проект рядом компаний и университетов Европейского союза. На этом уровне вы столкнетесь с такими словами и выражениями, как: "семантический рабочий стол" и "онтологии". В основном речь идет о контексте и отношениях.

    Примеры

    С помощью двух примеров поясним, что предлагает Nepomuk.

    Отношение

    Скажем, 2 недели назад вы получили фотографию своего друга и сохранили ее где-то на компьютере. Теперь вы хотите найти ее. Если вы не помните, где вы ее сохранили, то вам не повезло.

    Теперь Nepomuk стремится помочь вам. Вы знаете что файл с фотографией пришел вам от вашего друга, но компьютер ничего об этом не знает. Однако Nepomuk может запомнить это отношение. Для того чтобы найти фото запустите поиск по имени вашего друга.

    Другие примеры потенциальных отношений, которые могут быть установлены: между веб страницей, с которой был скопирован текст, и документом, в который этот текст был вставлен или между двумя изображениями одной и той же машины. Такие отношения могут быть определены по содержимому файлов (вы можете просмотреть фото и понять кто или что изображено на них) или установлены использованным приложением (как в случае с примером о электронной почте от друга). Эта часть Nepomuk все еще активно разрабатывается и требует интеграции в приложения. Возможно придется подождать еще несколько лет прежде чем начать использовать эту возможность.

    В общем эта часть Nepomuk делает поиск интеллектуальным. Вспомните как Google пытается сделать ваши поисковые запросы более интеллектуальными: когда вы ищете отель в каком либо городе, показываются не только сайты отелей, но и их расположение на google map в том городе что вы указали. Система может даже предложить более удачное название, в случае если вы допустили ошибку. Google также пытается расположить самую релевантную информацию в начале списка результатов, используя сложные расчеты для определения отношений (связей) между веб-сайтами. Nepomuk сможет предложить такой же интеллектуальный поиск и упорядочить результаты по релевантности используя информацию об отношениях.

    Контекст

    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