Nepomuk(语义桌面)
Template:I18n/Language Navigation Bar
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 部件来记录还需要修改的东西。可能需要一个「邮件文件夹」部件来显示有关报价表问题的邮件!
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.