LXF82:Tenor

Материал из Linuxformat.

Перейти к: навигация, поиск

Что такое… TENOR?

Почему вы можете что угодно раскопать в Интернете, но не в курсе, что находится на вашем собственном диске? Может ли помочь Tenor? И даст ли Джоно Бэкон нам какую-нибудь подсказку?

Будто я не знаю, что это — толстый дядька с тонким голосом!

Нельзя же так легкомысленно отзываться о высоком искусстве оперы! Вдобавок вы заблуждаетесь: Tenor - довольно абстрактное понятие; в общем, это некая среда для создания контекстных сетей и построения приложений, работающих с ними.

Чего-о?

Я сказал, абстрактное понятие. Например, в Интернете совокупность web-страниц, адресов электронной почты и файлов определенным образом объединена: допустим, существует связь между Mr Tambourine Man и Бобом Диланом. Но имеет смысл также связать Mr Tambourine Man и The Byrds. Tenor предоставляет вашей настольной системе место для размещения информации такого рода.

То есть он просто увязывает всякие там понятия?

В простейшем случае — да, но Tenor способен обеспечивать более сложные отношения. Предположим, кто-то шлет вам письмо о сокращении среды обитания белого медведя в Канаде, с темой «Полярные медведи», и прикрепляет файл F12345.jpg — изображение здоровенной медведицы. Если вы не переименуете картинку сразу после получения (хоть оно и напрашивается, но про это легко забыть), то впоследствии отыскать ее будет трудно, поскольку поиск по словосочетанию «полярные медведи» вряд ли обратит внимание на файл с именем F12345.jpg (если, конечно, ваша система индексирования не отслеживает контекстные связи — например, в данном случае это изображение плюс электронное письмо, дата его отправки, размер файла, тема и т. д.). Tenor — система построения подобных сетей связанной информации и создания приложений, использующих эти возможности. Круто, правда?

Типа да, но позвольте мне переодеться хакером (фальшивая борода, сандалии и широкие штаны) и попросить вас изложить эту идею в терминах компьютерных наук.

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

Неплохая идея. А как она появилась?

Пару лет назад Скотт Вилер [Scott Wheeler], разработчик Tenor’а, обнаружил, что информацию гораздо легче найти в сети, чем на рабочем столе. Он также пришел к выводу, что весьма трудно объединить беспорядочные обрывки информации в персональном компьютере. Обе эти задачи в сети решаются легко — можете привлечь свой любимый поисковый сервер и найти нечто с желаемой степенью достоверности. А на рабочих столах таких средств нет.

Я где-то читал, что Tenor имеет какое-то отношение к KDE — он только под KDE и работает?

Tenor предусматривает несколько уровней (реализован только первый). Самый низкий уровень отвечает за управление связями графов (вспомните вышеприведенное бородатое объяснение из информатики). Сюда включается создание вершин графов, их соединение, задание свойств и т. д. Он использует Qt — и весьма малую часть Qt, ее можно заменить без особых проблем. На данной основе будет сделана надстройка над KDE — средства облегчения работы с Tenor для разработчиков приложений. Скотт Вилер сильно привержен ко KDE и, естественно, интегрирует эти элементы в среду KDE. Но он энергично подчеркивает, что ничто не мешает кому бы то ни было написать подобные надстройки для других рабочих столов и программных оболочек.

Ну хорошо, а что это даст лично мне?

Преимуществ несколько. Возможно, нечто вроде Kerry (KDE-надстройка для Beagle) будет переделано для работы с Tenor и упростит поиск на компьютере. Но важнее то, что выражается навязшим на зубах модным словом тэгирование (навешивание ярлыков). В последнее время было много дискуссий о ярлыках и новом подходе к файловой навигации, с точки зрения управления содержимым. Примеры - динамические папки, создание ярлыков по технологии drag-and-drop, встроенный быстрый поиск и, теоретически, файловая навигация по взаимосвязям, а не по простому местоположению в иерархии.

Стоп-стоп, я малость запутался…

Хороший пример — система навигации от Amazon.com, использующая немало того, что они называют увязкой контекста: информация о том, кто еще просматривал этот продукт и что он купил; рейтинги, категории; определяемые пользователем тематические списки; комментарии, которые могут служить заметками по данному товару, и т. д. Если забыть о коммерческой части и думать только о контенте, то потенциал буквально завораживает. Менеджер контента для просмотра данных по типу навигации по товарам в Amazon.com скоро станет правилом, а основу для этого закладывает Tenor.

Перейдем к деталям: что это означает для моей конкретной KDE?

Да куча идей вокруг: например, прикреплять KNotes к специальным ресурсам, а не разбрасывать на рабочем столе, или отследить, что музыкальный файл в JuK или Amarok прислал ваш друг посредством Kopete; а как насчет использования меток DigiKam для облегчения поиска прикреплений в KMail? Список возможностей огромен, но пока все это только идеи. Они должны превратиться в инструменты, чтобы стать реально полезными пользователям.

Beagle много кто хвалит, а Tenor на него очень похож. В чем разница?

Beagle — в большей степени классическая система индексирования текста, Tenor решает другие задачи. Для сравнения представьте, что Tenor подобен PageRank от Google с его системой оценки содержимого, а Beagle больше похож на AltaVista или Lycos, их подход — «давайте просто проиндексируем случайные ссылки». Без контекстных ссылок вы не сможете осуществить поиск способом, реализованным в большинстве современных алгоритмов. Другая аналогия, позволяющая понять разницу между ними — сравнение предметного указателя в книге и гиперссылок в сети. Предметный указатель в книге решает некоторые задачи, и делает это достаточно хорошо. Гиперссылки — строительные блоки для любых объектов, вы можете использовать их при создании поискового движка, напоминающего предметный указатель.

Как продвигается разработка?

Основные функции, для размещения объектов в графах, а также для переходов между графами и их опроса, уже в деле. Следующий шаг — создание таких функций, как поисковые классы для разработчиков, которые могут быть подогнаны под определенные приложения. Например, если вы пишете приложение для электронной почты, то, возможно, захотите включить возможности поиска, специфичные для содержимого и в чем-то отличающиеся от используемых в графическом редакторе. Существуют также приложения-помощники, без которых не обойтись. Один из примеров — диспетчер ссылок с интерфейсом D-BUS. Используя технологию D-BUS от Freedesktop.org, это приложение позволит программе, затрагивающей часть информации в графе, вызвать другую программу для употребления найденной информации. Необходимо взаимодействие различных приложений через посредство различных участков информации. Инструменты, которые облегчат внедрение Tenor в приложения, в настоящее время разрабатываются. Как только они будут готовы, настанет черед разработчиков использовать Tenor в своих приложениях. Это ожидается в серии релизов ветки KDE 4.0.

Я практически ничего не слышал о Tenor, а выглядит-то он неплохо.

Разработчики живут в пещере или где? Не в пещере, но Вилер предпочитает помалкивать о Tenor, пока не сможет продемонстрировать рабочую версию: ему надо заниматься разработкой Tenor, а не ответами на письма или дискуссиями о направлении развития неоконченной программы. Мы еле уговорили его высказаться для этой рубрики. К счастью, даже он не смог устоять перед LXF

Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию