Nepomuk(语义桌面)

From KDE UserBase Wiki
Revision as of 13:56, 3 November 2010 by Qiii2006 (talk | contribs)

Nepomuk

这个页面的目的不是详细解释Nepomuk技术及其每个细节,而是作简短的概述,举一些例子,分享其背后的设想和给予指向网上相关资讯的链接。

简短说明

术语提到的,Nepomuk 有关数据的分类,组织和表达。它并非是一个应用程序,而是可以被开发人员应用在程序中的组件。

试用

举例来说,Dolphin采用了 Nepomuk。对于后面例举的必须保证 系统设置 -> 桌面搜索 的 Nepomuk 和Strigi 都已经开启。Dolphin 的信息侧面板允许你给文件打上标签,评分和评论。这些信息随后存储在 Nepomuk 并且被 Strigi 编入索引。然后你可以在Dolphin里用导航栏搜索元数据(metadata)。输入"nepomuksearch:/",随后是搜索词。

功能

Nepomuk 提供数'层'功能给应用程序。第一个也是其中最简单的是手动标记(manual tagging),评分(rating)和注释(commenting),如使用在 Dolphin中。这有助于你更快的找到你的文件,但这种做法太耗费精力。

为了使得搜索包含文本的文件更容易,Nepomuk 提供了第二个功能:索引(indexing)文件中的文本。它使用一种被称作 Strigi 的技术来实现。现在你也能通过输入你所已知的其中某些词语,或仅仅(部分)它们的标题来搜索到文件。

第三层非常复杂,是 Nepomuk 被视为欧盟(European union)多个公司和大学研究项目的原因。这部分你会遇到很难理解的词组像是'语义桌面(semantic desktop)'和'本体论(ontologies)'。基本上,它涉及到语境(context)和关系(relationships)。

例子

让我试着用两个例子解释 Nepomuk 提供了什么。

关系(Relationship)

假设你2周前从你的某个好友手上收到一张照片。你随后保存照片到电脑的某个地方。现在你如何找到那个文件哪?如果你不记得保存的位置,你就杯具了(人生是个茶几,你是个杯具)。

现在 Nepomuk 旨在帮助你。你知道这个文件是你朋友发给你的,但你电脑不知道。然而,Nepomuk 能够记得这个关系。搜索你朋友的名字,随后便会出现照片哦!

另一个潜在的关系是在你复制出来文本的网页和你粘贴文本进去的文档之间,抑或显示同一辆车的两幅图片之间。这样的关系有时能从文件本身上获得(你能够分辨照片,看出谁或什么东西在那上面)或由关联的程序(上面 E-mail 的例子)提供。Nepomuk 的这部分还是加紧开发中,需要整合进应用程序,所以你可以期望这功能花费更多年真正实现。切~~( ﹁ ﹁ )

总之,Nepomuk 的这部分是有关使得搜索智能。试想下 Google 是如何智能化你的搜索:当你搜索旅店和城市名,它在网站搜索结果之上显示 google 地图显示你提到的那个城市中的各家旅店!它甚至可能推荐一个更适合的名称以免你犯了拼写错误。Google 对网站之间的关系(链接)使用复杂计算,试着将最相关的信息放置在搜索结果的顶部。Nepomuk 会能够提供那样智能的搜索结果,并用关联信息根据相关性调整搜索结果。

语境(Context)

这些关系(relationships)不但能帮你搜索文件,也会影响到应用程序及它们提供的信息。注意这种使用 Nepomuk 的方式说是设想更恰当而非现实!当中很多组件已经做好,但总体上看都还没整合进应用程序和桌面。

这里有个例子讲把语境认知(context awareness)带到桌面上助你工作更有效率。

比如说你正在整理会议上摘的笔记。这时手机响了,某人问你要带报价的电子表格,还要你根据客户要求进行修改。再多来几个打扰后,你会发现整个桌面全是文件和窗口...

如果能更好的组织这一切会非常棒,对吗?

进入'活动'。之前有在 Plasma 中介绍过,当前提供了另类的'桌面'。它们有点像虚拟桌面,但改变的是桌面本身,不是程序集。不同的部件,壁纸之类的东西。当然,自 KDE SC 4.3 后,每个虚拟桌面能够拥有自个的活动,虚拟桌面和活动是同步的。

如果程序和桌面认识活动,你可以根据经常工作的任务创建活动。所以如果你经常不得不修改带报价的电子表格,你创建这样一个活动:摆放一个「文件夹视图」(或多个)部件到桌面上,添加一个计算器和一个 todo 部件来记录还需要修改的东西。可能需要一个「邮件文件夹」部件来显示有关报价表问题的邮件!

一旦有人问报价问题,你就切换到这个活动。打开表格程序。表格程序认识你的活动,它的最近打开列表显示的是报价表格,不是你在另外一个活动工作的存货清单!Kopete,这个聊天程序显示着某个知道有关价格的同事,因为她是你经常在当前这个活动聊天的对象。

等你完成后,你回到另外一个活动,所有程序再一次调整它们的行为来适应你当前的工作。

这样一个基于活动的工作流程的收益会远远超越你最初的期望。它不但能帮你找到文件和联系人,还有助于切换任务本身。人脑不擅长多任务-人类切换任务后需要花费几分钟来达到正常速度。改变'环境'能大大加快反应,即使只是屏幕上的。把它跟你假日收拾包裹时的情绪对比下!

当然,上面所述很大程度与电脑后头工作的人是在办公室还是在家有关。游戏玩家或临时用户可能不太会用到这些活动。

注意上面描述的情节仍旧离现实很远。基础的东西在 KDE 中已经有了,但其他部分缺很大。

共享和隐私

在给出其它链接前我要指出的是:共享 Nepomuk 数据。如果你的标记(tags),评分(ratings)和注释(comments)能够在你发送文件给其他人时同时共享给他会很棒。但是,要是你给一个联系人打上了“麻烦”的标签('在床上烦人'),然后发送这个联系人的信息给一个共同的好友,但你又不希望这个标签也一并发送过去...

这个问题当然在考虑之中,是 Nepomuk 研究的一个重要课题。由于这些隐私顾虑,外加技术挑战,所以暂时 Nepomuk 内容是私有的。放心,Nepomuk 团队尽其可能尊重你的隐私。

更多信息
Wikipedia - Semantic Desktop
Wikipedia - NEPOMUK Framework
NEPOMUK website
NEPOMUK KDE site
article explaining Nepomuk on the DOT