基于Folksonomy和RDF的信息组织与表示*
余本功1,2, 顾佳伟1
1合肥工业大学管理学院 合肥 230009
2合肥工业大学过程优化与智能决策教育部重点实验室 合肥 230009
通讯作者:顾佳伟:E-mail:gujiawei_2009@163.com

作者贡献声明:

余本功:提出研究思路, 设计研究方案;

顾佳伟:查阅相关文献, 进行调查和实验;

余本功, 顾佳伟:论文起草;

余本功:论文最终版修订。

摘要

【目的】提高用户参与度, 实现大规模数据的高效管理和信息的快速查询, 完善企业网站信息组织与表示。【应用背景】网上交易信息庞杂、虚假产品过多的问题使得用户更依赖于企业网站寻求质量保证, 因此, 对企业网站的信息组织与表示提出新的要求。【方法】将Folksonomy中的资源、标签和用户用RDF表示, 以RDF的存储和检索方式实现用户自由标注标签, 实现Folksonomy应用, 并将其运用到企业网站中。【结果】实现资源、标签和用户的存储及查询, 使得用户能够自由标注标签, 并进行相应的查询。【结论】该方法能够加强企业与用户以及用户之间的交流, 为信息的完全开放与共享提供手段, 拓宽Folksonomy的应用范围。

关键词: Folksonomy; RDF; 信息组织; 信息表示
中图分类号:TP391
Information Organization and Representation Based on Folksonomy and RDF
Yu Bengong1,2, Gu Jiawei1
1 School of Management, Hefei University of Technology, Hefei 230009, China
2Key Laboratory of Process Optimization and Intelligent Decision Making of Ministry of Education,Hefei University of Technology, Hefei 230009, China
Abstract

[Objective] Improve the degree of users’ participation, realize the efficient management of mass data and quick query of information, and consummate information organization and representation of enterprises’ websites. [Context] Problems of a mass of confused information and too many false products in online trading make users more dependent on enterprises’ websites for quality assurance, as a result, there is a new requirement for the information organization and representation of enterprises’ websites.[Methods] This paper proposes a method which uses RDF to express resources, tags and users of Folksonomy and allows users to assign tags freely by achieving the storage and query of RDF data. And apply it to enterprises’ websites.[Results] Realize the storage and query of resource, tags and users, enabling users to tag freely, and achieve the relevant inquiries.[Conclusions] The method strengthens the communications between enterprises and users, provides a means for completely opening and sharing of information between users and widens the application range of Folksonomy.

Keyword: Folksonomy; RDF; Information organization; Information representation
1 引言

随着科学技术的快速发展, 网上交易方式盛行。同时也伴随着信息庞杂、假冒产品众多而导致产品质量得不到保障的问题。企业官网作为用户获取产品信息、购买产品的平台, 其可信度相对较高。然而, 目前大多数企业网站给出的产品信息表示往往是二维或三维的, 其信息内容没有得到很好的组织和利用, 不便于用户快速获取更多可用信息。Web2.0的产生, 渐渐淡化了信息提供者和使用者之间的界限, 用户不再只是信息的接受者, 也是信息生成、共享和传播的主体, 其主体性地位日益突显。因此, 企业需要更好的信息组织与表示方式, 充分提高用户的积极性和参与度, 支持用户快速、便捷决策。而通过汇集、整理大众标签形成的面向用户的Folksonomy的出现, 为解决这一问题提供一种新的视角。

2 研究现状

Folksonomy由用户生成和使用, 目的是为了便捷地标引和检索动态变化的网络资源。国外的研究始于2005年, 主要研究热点集中在9个方面:信息管理、元数据、语义Web、协作标注、知识管理、知识共享、搜索引擎、标签标注、分类排序。Shiri[1]对10个社会标签系统的接口、特性和功能进行了比较和分析, 探讨了社会标签系统中用户界面如何提供标签分配、标签探索、标签浏览功能, 以及在社会网站交互时如何使用标签。Ohmukai等[2]提出一个社会标签系统, 使用多个元数据和个人网络构建基于社区的本体, 使用户可以把自己的标签映射到不同朋友的众多标签上, 以便与其他用户关联。国内起步比较晚, 如熊回香等[3]探讨了标签概念空间与领域本体间的映射机制, 实现对标签的语义组织; 滕广青等[4]通过计算与分析, 发现用户标签在整体语义关系方面拥有趋近于领域本体[5]的较高的语义紧密程度; 张云中[6]提出局部本体的新概念, 纠正了当前 Folksonomy语义[7]关系呈现的两个误区, 弥补了当前 Folksonomy 语义关系呈现途径的局限性; 石豪等和李爱国[8, 9]对Folksonomy相关网站如Flickr、Del.icio.us、豆瓣网、CiteULike等进行介绍、分析、比较。

国外研究无论在理论上还是应用上都达到了一定的高度, 使得Folksonomy很早就被应用于图书馆领域和网站建设, 并且得到较大的发展。国内主要针对Folksonomy基本知识及其与本体、语义网等技术的关联、融合等方面进行研究。而在 Folksonomy应用研究方面, 更多偏向于理论研究, 对应用实现方式的阐述较少。本文运用RDF信息表示方式把资源、标签与用户三者关联起来, 结合当前研究热点— — 非关系型数据库, 实现Folksonomy的应用。并将其应用于企业网站中, 使得用户可以自由标注相关资源, 充分利用Folksonomy公开性、共享性和对用户参与度的增强性等特性。

3 Folksonomy和RDF的概述及概念模型
3.1 Folksonomy

“ Folksonomy” 一词最早由美国信息架构专家Thomas Vander Wal于2004年将Folk和Taxonomy两个词融合而成, 中文翻译有大众分类法、分众分类法、自由分类法等。其定义为:个人为方便检索而对任何具有URL的信息和对象进行自由标注的结果[5]。该标注在社会环境下形成, 对他人公开并共享。标注行为是用户个人对信息的消化、吸收。

Folksonomy主要包含三个基本元素:资源、标签和用户。就目前而言, 对其应用最多且最完整的属标签系统。社会标签系统的概念模型如图1所示。在该模型中, 用户对特定资源标注标签, 但用户的信息空间不封闭、不孤立, 而是开放共享的。用户可以通过查看其他用户添加的标签, 了解其他用户对某资源的评价, 也可以通过标签找到拥有共同兴趣爱好的社群成员[10]

图1 标签系统模型

3.2 RDF

通过大量文献查阅, 笔者发现可以将Folksonomy 中资源、标签、用户用RDF表示, 以实现RDF的存储与查询的方式, 实现Folksonomy的具体应用。

资源描述框架(Resource Description Framework, RDF)是W3C提出的一种描述Web信息的通用语言。RDF中任何对象都是资源, 既可指Web上被标明、含有URL的对象, 也可指对象的属性, 都具有一个URL作为统一标识。对资源属性的陈述是描述, 它表明了资源的特性, 指出资源之间的相互联系, 极大地增加了可扩展性。框架是通用模型, 与被描述资源无关[11, 12]

RDF作为一种信息表示语言, 提出一个简单的模型来表示数据:采用三元组(S, P, O)来描述Web信息, 其中S(Subject)即主语, P(Predicate)即谓语, O(Object)即宾语, 如图2(b)所示。从图的角度看, 又可以表示为带标记的有向图模型, 即RDF图。其源节点表示主语, 目标节点表示宾语, 连接主语节点和宾语节点的边表示谓语, 如图2(c)所示。由此, 可以方便地描述资源以及它们之间关系[13, 14]

图2 RDF陈述与三元组、图模型的对应关系

4 基于Folksonomy和RDF的信息组织
4.1 基于Folksonomy和RDF的信息表示

企业的产品信息表示与顾客用户之间有千丝万缕的关系, 是用户决策的主要参考内容。而目前大多数企业缺少对产品信息表示的重视。以制造企业合肥美菱股份有限公司为例, 其产品信息表示如图3所示:

图3 美菱产品信息表示

该企业通过产品类型、所属系列、产品型号三个属性实现其三维表示, 定位到特定产品后显示其具体信息。产品具体信息分为5大部分:购买信息(包括型号、库存、售价、类别、添加商品标签等)、商品属性(包括系列、外观颜色、显示形式、净重等)、商品描述、购买记录和用户评价(包括用户名、电子邮件地址、评价等级和评论内容)。这样的信息组织和表示方式相对局限, 其提供的查询也是在用户知道产品型号的基础上进行, 不利于用户方便、快速地了解产品相关信息以选择满足自己需求的产品。

淘宝网作为目前网上购物的主要平台, 对产品的表示在类似上述三维定位的基础上, 以部分属性的选择来实现产品的进一步筛选。此外, 它添加了利用产品名称(或称为产品概述)实现关键字匹配查询的功能。但这样的结果是商家尽可能地加长产品名称, 以期在尽可能多的匹配结果中展示自己的产品, 导致顾客用户查询到大量无关的产品信息, 或者与自身要求并不是很符合的产品信息。而且这些信息全部由商家提供, 顾客用户只是单向的接受者, 缺少参与性。

为了解决企业产品信息只有在用户了解产品信息前提下才能有针对性地查询且缺乏用户参与的问题, 本文引入Folksonomy思想, 在增加用户参与度的同时, 实现产品信息的多维表示, 使得信息得到更好的组织和管理, 便于用户更好地获取有用信息, 有助于用户快速做出决策。改进后的美菱产品信息表示如图4所示:

图4 改进后的美菱产品信息表示

将资源、标签、用户用RDF表示, 用谓语(即属性)将三者联系起来, 以达到实现Folksonomy应用的目的。只需“ 标签名” 、“ 标注者” 和“ 用户ID” 三个谓语, 简单又明确, 同时有助于信息进一步组织和管理。“ BCD-560WPB” 摩登城市产品被用户标注标签的部分RDF表示和RDF图表示分别如图5图6所示:

图5 资源、标签和用户的RDF表示

图6 资源、标签和用户的RDF图

此外, 企业还可以给出产品相关的基本知识(如冰箱分类有哪些、单门直冷式系统的种类与特点等), 以便用户通过标签可以查找, 进而对产品有更深入的了解。

4.2 基于Folksonomy和RDF的信息存储

RDF的存储方式较为成熟, 多采用分布式存储[15, 16, 17]。本文在存储时, 把每个对应的“ 资源-标签-用户” 看作一条记录, 则一条记录包含多个谓语和宾语, 如果采用关系型数据库来存储, 那么不同记录间会产生大量重复内容, 不利于高效存储和查询。鉴于同一主语下谓语、宾语数量不定的特点, 这里选用Cassandra列数据库。它是稀疏的、分布式的非关系型数据库BigTable的概念扩展。在行键、列键和时间戳的基础上定义了列族的概念, 用于逻辑上的分割, 超列族包含一组或几组有特定关系的列。使用Cassandra列数据库可以将同一资源下的谓语存储在不同的列族中, 而不必像关系型数据库那样重复存储资源。且大量的文本内容改为以URI的形式存储, 所涉及的谓语也只有“ 标签名” 、“ 标注者” 和“ 用户ID” 三个, 大大节省了存储空间。Cassandra数据模型如图7所示:

图7 Cassandra数据模型

当浏览企业产品网页时, 用户可以根据自己的想法为其添加标签。比如, 当浏览“ BCD-560WPB” 摩登城市产品的网页时, 基于自身的使用经验, 想要告诉其他用户该商品性价比高, 则选择添加标签, 输入“ 性价比高” , 系统在数据库中找到该资源, 判断是否存在该标签:若存在, 且无该用户则将该用户ID添加进数据库; 若不存在, 则添加标签后添加对应的用户ID。用户为资源添加标签的流程如图8所示:

图8 用户添加标签

在进行存储时, 用行键存储RDF中的主语S, 列族存储谓语P, 列存储宾语O。并按照“ SPO” 、 “ POS” 、“ OSP” 的顺序重复存储三次, 使得存储表分别对应不同的索引。不同的查询请求, 在对应的不同索引结构中进行查询, 通过空间交换的方式获得相对较高的查询性能。借助S、P、O之间的链接, 利用嵌套键值映射, 给定资源、标签、用户中的任意一个或几个, 则能快速定位到对应的其他内容。以“ SPO” 存储为例:S主要表示资源或标签, P表示标签名、标注者和用户ID, O表示标签或用户。Cassandra数据模型中通过S、P、O关联得到的资源、标签与用户的对应关系如表1所示:

表1 某资源与其标签、用户关系
4.3 基于Folksonomy和RDF的信息检索

由于Cassandra的查询语言CQL功能不足, 不能满足“ 资源、标签、用户” 间的高效查询。W3C组织推出的用于搜索RDF数据的查询语言SPARQL[18]不失为一个好的选择。它通过图形模式(Graph Pattern)匹配实现查询功能。最简单的是三元组模式, 其与RDF的三元组类似, 不同之处在于三元组模式允许主语、谓语或宾语是查询变量, 将三元组模式合并, 最终形成一个基本的图形模式。在查询语句中的空白节点则被看成是变量的形式处理。三元组模式和图的匹配并不复杂:绑定查询变量和RDF词汇, 将变量替换成相应的RDF词汇, 就得到一个成功匹配的图的三元组。根据存储和索引方案, 变量出现在不同的位置可选择使用不同的索引, 来进行嵌套的键值映射查找。三元组模式查询及其对应的可用索引如图9所示:

图9 三元组模式查询和可使用的索引[19]

就上面的例子来说, 当用户想要知道所有电控产品以及对其有所了解的用户时, 可以查找被标注“ 电控” 标签的产品型号和其对应的用户ID, 采用SPARQL查询语言进行查询, 具体语句如图10所示, 其最终结果如表2所示:

表2 查询结果

使用RDF表示方式体现Folksonomy中资源、标签和用户的关联, 结合Cassandra列数据库和SPARQL查询语言, 完成RDF数据的存储及查询, 实现用户对资源的自由标注及相应的查询应用。由于所存储的资源只是网页的链接, 除用户添加的标签和用户ID外, 所需要的谓语只有“ 标签名” 、“ 标注者” 和“ 用户ID” , 这样大大节省了存储空间。且在所用查询语言中需要的谓语(即属性)预先定义在命名空间中, 使得查询语句简洁。同时查询针对性强, 可以用查询多个标签的方式减小查询结果范围。如有需要可以对查询结果进行排序, 提高查询信息的有用性。由此可见, 该方法在提高用户参与度的同时, 实现了数据的有效管理, 具有较强的实用性。

5 结语

本文将Folksonomy中资源、标签和用户关系以RDF方式表示, 使得Folksonomy用户自由标注标签的思想与RDF海量数据存储相融合, 通过实现RDF数据存储与查询完成Folksonomy应用, 为用户间信息的完全开放与共享提供手段。并将其运用到企业网站中, 完善了企业网站信息组织与表示, 拓宽了Folksonomy的应用范围。同时, 采用三次存储方式解决了Cassandra只能以行键为切入点进行查询而不能使用标签进行查询的不足, 在充分提高用户参与度的同时, 实现了大规模数据的高效管理和信息的快速查询。

参考文献
[1] Shiri A. An Examination of Social Tagging Interface Features and Functionalities: An Analytical Comparison[J]. Online Information Review, 2009, 33(5): 901-919. [本文引用:1] [JCR: 0.939]
[2] Ohmukai I, Hamasaki M, Takeda H. A Proposal of Community-based Folksonomy with RDF Metadata [OL]. [2013-09-21]. http://itu.dk/people/martynas/Thesis/Articles/A%20Proposal%20of%20Community-based%20Folksonomy.pdf. [本文引用:1]
[3] 熊回香, 王学东. 大众分类体系中标签与本体的映射研究[J]. 情报科学, 2014, 32(3): 121-126.
Xiong Huixiang, Wang Xuedong. Research on Mapping between Tag and Ontology in Folksonomy System[J]. Information Science, 2014, 32(3): 121-126. [本文引用:1] [CJCR: 1.112]
[4] 滕广青, 毕达天, 任晶, . Folksonomy 中用户标签的语义紧密性研究[J]. 现代图书情报技术, 2013(12): 48-54.
Teng Guangqing, Bi Datian, Ren Jing, et al. Study on Semantic Closeness of User Tags in Folksonomy[J]. New Technology of Library and Information Service, 2013(12): 48-54. [本文引用:1] [CJCR: 1.073]
[5] Al-Khalifa H S, Davis H C. FolksAnnotation: A Semantic Metadata Tool for Annotating Learning Resources Using Folksonomies and Domain Ontologies [C]. In: Proceedings of the 2nd International IEEE Conference on Innovations in Information Technology, Dubai. IEEE, 2006: 1-5. [本文引用:2]
[6] 张云中. Folksonomy中的语义关系呈现: Folksonomy局部本体[J]. 图书情报工作, 2012, 56(20): 127-131, 143.
Zhang Yunzhong. Semantic Relations Presented in Folksonomy: Folksonomy Local Ontology[J]. Library and Information Service, 2012, 56(20): 127-131, 143. [本文引用:1] [CJCR: 1.193]
[7] 陆建江, 张亚非, 苗壮, . 语义网原理与技术[M]. 北京: 科学出版社, 2007: 30-65.
Lu Jianjiang, Zhang Yafei, Miao Zhuang, et al. Semantic Web Principles and Techniques [M]. Beijing: Science Press, 2007: 30-65. [本文引用:1]
[8] 石豪, 李红娟, 赖雯, . 基于Folksonomy标签的用户分类研究[J]. 图书情报工作, 2011, 55(2): 117-120.
Shi Hao, Li Hongjuan, Lai Wen, et al. Study of Users Classification Based on Folksonomy Tags[J]. Library and Information Service, 2011, 55(2): 117-120. [本文引用:1] [CJCR: 1.193]
[9] 李爱国. 三种学术标签系统的比较分析[J]. 图书情报工作, 2007, 51(2): 114-116.
Li Aiguo. A Comparative Analysis of Three Academic Tag System[J]. Library and Information Service, 2007, 51(2): 114-116. [本文引用:1] [CJCR: 1.193]
[10] Marlow C, Naaman M, Boyd D, et al. HT06, Tagging Paper, Taxonomy, Flickr, Academic Article, to Read [C]. In: Proceedings of the 17th Conference on Hypertext and Hypermedia. New York: ACM, 2006: 31-40. [本文引用:1]
[11] Klyne G, Carroll J J. Resource Description Framework (RDF): Concepts and Abstract Syntax [EB/OL]. [2013-11-01]. http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#section-Datatypes-intro. [本文引用:1]
[12] Lassila O, Swick R R. Resource Description Framework (RDF) Model and Syntax Specification [EB/OL]. [2013-1005]. http://www.w3.org/TR/1999/PR-rdf-syntax-19990105/. [本文引用:1]
[13] Hitzler P, Krotszsch M, Rudolph S, . 语义Web技术基础[M]. 俞勇等译. 北京: 清华大学出版社, 2012: 12-73.
Hitzler P, Krotszsch M, Rudolph S, et al. Foundations of Semantic Web Technologies [M]. Translated by Yu Yong, et al. Bejing : Tsinghua University Press, 2012: 12-73. [本文引用:1]
[14] 师雪霖, 赵英. 基于RDF的语义网格数据建模与检索[J]. 计算机应用, 2009, 28(9): 2324-2327.
Shi Xuelin, Zhao Ying. Data Modeling and Retrieval in Semantic Grid Based on RDF[J]. Computer Applications, 2009, 28(9): 2324-2327. [本文引用:1]
[15] 金海, 袁平鹏. 语义网数据管理技术及应用[M]. 北京: 科学出版社, 2010: 162-193.
Jin Hai, Yuan Pingpeng. Semantic Web Data Management Technologies and Applications [M]. Beijing: Science Press, 2010: 162-193. [本文引用:1]
[16] 滕广青. 基于概念格的数字图书馆知识组织研究[D]. 长春: 吉林大学, 2012.
Teng Guangqing. Research on Knowledge Organization Based on Concept Lattice of Digital Library [D]. Changchun: Jilin University, 2012. [本文引用:1]
[17] 姜龙翔, 王鑫, 李旭, . 一种大规模RDF语义数据的分布式存储方案[J]. 计算机应用与软件, 2011, 28(11): 30-32.
Jiang Longxiang, Wang Xin, Li Xu, et al. A Distributed Storage Scheme for Large-scale RDF Semantic Data[J]. Computer Applications and Software, 2011, 28(11): 30-32. [本文引用:1] [CJCR: 0.515]
[18] Prud’hommeaux E, Seaborne A. SPARQL Query Language for RDF[OL]. [2013-11-24]. http://www.w3.org/TR/rdf-sparql-query/#termConstraint. [本文引用:1]
[19] 王鑫, 冯志勇, 杜朴风, . Jingwei: 一种分布式大规模RDF数据服务器[J]. 计算机研究与发展, 2011, 48(S): 451-455.
Wang Xin, Feng Zhiyong, Du Pufeng, et al. Jingwei: A Distributed Large-scale RDF Data Server[J]. Journal of Computer Research and Development, 2011, 48(S): 451-455. [本文引用:1]