(1.浙江万里学院图书馆,浙江 宁波 315100;2.浙江大学宁波理工学院图书馆,浙江 宁波 315100)
1 引言
关联数据(Linked Data)是语义网的一个分支,用来描述一套发布、分享及链接互联网通过URI(统一资源标志符)提供的数据、信息和知识的方法[1],可以理解为是任何有意义的数据(信息或知识)在万维网上的一种发布方式。目前,“关联数据”的研究热度已经超过其上位词“语义网”,并已成为推动语义网发展的重要力量之一,近年来逐渐得到学术界、工业界及政府部门的广泛关注,包括BBC、纽约时报、MIT、IEEE、HCLS、美国国会图书馆等在内的机构纷纷加入到关联数据的出版发布行列[2]。关联数据对于图书馆而言,也是一种很好的信息服务发表形式。图书馆可将自己开发和组织的事实型信息资源和知识库以关联数据的形式发布,从而使信息资源得到开放利用,既可丰富互联网信息资源,又能提升图书馆的服务能力、增加服务方式、拓展服务内容和增强用户的依赖性。2 关联数据的特点
2.1 简洁高效的数据发布方法
关联数据是发布RDF(Resource Description Framework,一种用于描述Web资源的标记语言)数据的一种简捷、开放、高效的方法(机制),是语义网的一种表现,可以看成是Web上数据发布的一种标准的API,其对HTTP进行进一步的规定和扩展。在Web2.0环境下,基于API提供的结构化的数据有很多,比如:eBay、Amazon、Yahoo、Google Base APIs等。相对于这些API,关联数据则提供单一、标准化的访问机制,并基于结构化的数据提供背景关联,而不是依赖于各种接口和从接口获取的数据格式[3]。传统超文本Web中,数据网络是建立在网页文档之上的,关联数据则是基于RDF描述数据之间的关系。2.2 可融入万维网
关联数据虽然是语义网的重要的基础性应用,但由于语义网本身与现有万维网是相融的,所以关联数据的应用与万维网也是相融合的。关联数据甚至依托万维网来展现其语义化的处理能力,在形式上表现为万维网上的富链接机制,将超文本链接(文件之间的链接)转变为超数据链接(事物之间的链接)。2.3 数据可得到最大限度的关联
在语义网中,不仅仅将数据发布到Web上,而且通过关联数据构建能被计算机理解的结构化的并富含语义的数据网络,把以前没有关联的相关数据连接起来,甚至使许多沉睡的数据发挥作用,最终将网络变成一个巨大的数据库,再通过计算机解析数据,从而实现网络的许多智能应用。2.4 减少冗余,促进再利用
数据内容通过开放利用的形式发布后,相同的数据内容从理论上讲只需构建一套,其他系统无需构建同样的数据,仅仅需要进行数据关联即可。数据进行关联后,将大大减少互联网上冗余数据,系统开发和信息服务的效率将更高。2.5 可发现
关联数据通过URI发布在万维网上,既可通过传统的信息发现方式发现相关关联数据,也可根据关联数据中的URI来发现新的关联数据。3 关联数据的类型
关联数据根据数据源的开放范围主要分为三种类型。3.1 关联开放数据(Linking Open Data:LOD)
这是目前关联数据的主要形式,其以公开的Web数据形式在整个网络范围内开放利用,这种类型的关联数据契合了互联网开放的特性。关联开放数据小组(W3C下研究和推广关联数据应用的组织)期望通过开放数据运动公开更多的数据,并以开放数据应用来展示关联数据技术[1]。3.2 关联私有数据
指仅限组织或系统内应用的关联数据。关联私有数据的应用也称为关联企业数据(Linking Enterprise Data),私有数据的关联实现从技术上不存在障碍,而且需求将会越来越多,目前已在少数企业中得到应用,关联数据也可以在不同部门之间利用内联网进行交换[4]。3.3 关联合作数据
主要指合作组织或不同组织之间关联系统中的数据相关联,即两个或者两个以上单位的系统之间可以合法地通过HTTP在网络上交换私有的关联数据,从而实现一些特殊功能的应用。4 关联数据的发布
4.1 关联数据发布基础
关联数据的发布从技术的角度分析,主要涉及以下四个方面[5]:1)信息资源。在发布某类信息资源的数据之前,需要明确待发布的信息资源是信息、知识还是数据,是否有被关联(引用)的必要,是否希望得到广泛的利用等。2)资源标识。任何一个信息资源都用一个 HTTP的URI来标识,使得数据能真正实现基于 Web的访问与互联。3)资源描述。资源可以有多种描述,例如 HTML,XML,RDF以及JPEG。关联数据的描述主要是通过RDF格式来表示。RDF将一个资源描述成三元组(主语、谓语、宾语),从而使其成为带有语义的结构化数据。主语、谓语都需要用 URI来表示;宾语可以用 URI标识另一个资源,也可以是字符串表示的文本。若把主语看做是类资源,将谓语看做是类资源的属性资源,宾语就或者是类资源或者是文字型资源。根据宾语的种类,可以将三元组分为两类:文字型三元组和非文字型三元组,后者可以看做是类资源之间的关联。4)名称空间。除上述三个方面外,还需要使用URI作为信息资源对象的名称空间描述,不仅可以简化数据形式,而且方便根据名称空间来理解发布的数据属性。纽约时报在其关联开放数据网站[6]上分别以RDF文档和HTML文档发布其关联数据,目前已有1万多个标签,内容涉及人物、组织、地点、主题等领域,可以按照开放共用协议开放使用。在纽约时报网站的文章页面中,涉及相关标签的人名、组织等词汇会自动关联到更多文章的链接。
4.2 关联数据发布方法
关联数据发布可通过专门的工具来发布,D2R就是比较流行的一种关联数据发布工具,可用来帮助完成传统数据向关联数据的转换[7]。关联数据也可通过编程发布,如笔者所在的宁波市数字图书馆服务外包产业信息门户(http://soip.nit.net.cn/,以下简称SOIP)中是通过PHP从MySQL中提取数据并生成RDF文件来发布的。在具体应用中,SOIP关联开放数据的发布利用PHP组件从MySQL中提取数据,然后根据合适的名称空间进行RDF编码,再利用动态缓存技术,实现关联开放数据的发布与数据动态更新。SOIP关联开放数据的发布分为综合发布的RDF文档和单条记录的RDF文档,方便用户根据需要利用。此外,还提供基于网页的关联开放数据浏览。在SOIP关联数据的具体应用中,主要用于信息浏览时的信息拓展和关联链接。5 关联开放数据发布与应用实例
SOIP是宁波市数字图书馆特色库项目建设内容之一,旨在为宁波市服务外包产业的发展提供信息支撑和交流平台,支持宁波市服务外包企业信息化建设并为本市服务外包的人才培养和学术研究提供信息服务。为此,SOIP通过发布关联数据的形式,使门户信息资源能在企业信息环境中得到广泛应用。SOIP的关联开放数据发布和应用的基本框架如图1(虚线部分为目前还在继续研发中的功能),目前已实现了企业名录和专业人才的关联数据发布,并在SOIP系统内实现数据关联应用。
图1 SOIP关联数据发布与关联数据应用架构
5.1 专业人才关联开放数据的发布
在做关联数据的发布与应用之前,需要处理好以下几方面的问题:1)PHP系统环境的默认最大内存限制为8M,处理大的RDF文档时可能会出现内存溢出,因此需要修改php.ini中memory_limit的设置来增大内存,一般不超过系统全部内存的1/4,太大会影响系统速度,考虑到目前处理的RDF文档少有超过50M的,所以设置为50M即可,这样相对于服务器系统几乎没什么影响。也可在发布程序前估算文档大小,再利用PHP内置函数临时设定内存大小。2)发布RDF数据前需要对从MySQL中提取的数据进行清理,使生成的数据符合RDF文件的格式和RDF数据处理的需要,主要清理的内容有:连续空白、&符号、url编码、日期格式、HTML标记等。3)对已经发布的RDF关联数据,可到W3[8]网站进行RDF验证。该验证系统能根据提供的代码或URI对RDF自动解析并给出有错误代码的行数,辅助检查,以确保RDF格式的正确性。4)要尽可能利用标准的、有影响的命名空间,从而提高关联开放数据的易用性、开放性和普适性。5)需要发布的关联数据属性元素尽可能选择有关联意义的、并能对语义表达有作用的数据,比如专家学者的简介内容并不是关联数据的核心,可以在做数据清理时自动截取少量内容进行发布,既不影响数据利用,又能减少RDF文档的大小。处理好上述事务后,即可通过PHP编程,开发相应的发布组件,通过发布组件处理RDF内容的发布和管理事务。实例效果请参见SOIP网站的数据开放利用栏目。
5.2 专业人才关联开放数据的网页浏览实现
关联数据除了以RDF形式提供计算机利用外,还可提供方便人们基于网页阅读的方式,以促进关联数据的应用。在PHP环境下有一个开源的API工具:RAP(RDF API for PHP),可用于RDF的解析、查询,并能提供三元组的HTML输出。在SOIP中,为了集中展示专家名录信息,并将专家姓名链接到单个的RDF文件,就利用了RAP进行数据解析,然后生成HTML数据供浏览,其中的RDF文件来自前文中发布的专业人才RDF文档。5.3 专业人才关联数据的关联应用
专业人才关联数据的关联应用主要表现在浏览某位专业人才时能实现如下功能:1)根据专业人才关联数据的研究兴趣,展现与该专业人才研究兴趣相关的人才列表。2)根据专业人才关联数据和企业名录关联数据展现该人才所在单位的其他人才列表。3)根据企业名录关联数据对所属企业字段与所在企业的名录信息数据进行自动链接。4)根据知识库关联数据实现相关知识资源导航。5)根据地域关联数据将该地域的专家信息、名录信息和行业动态信息进行关联,促进知识发现和信息利用。实现上述功能既可以通过RAP利用SPARQL语言查询 RDF文档,也可以直接利用RAP解析RDF文档数据实现关联应用。由于SPARQL语言支持多RDF文档的联合查询,所以应用SPARQL查询在效率上要好。上述功能的前三个已经在SOIP中实现,后两个功能将在服务外包知识库和地域范围数据库成熟后,也将进行发布和开发相关应用。
6 结语
基于上述研究与实践,关联开放数据对提升系统服务能力和信息资源开放利用效益明显,主要表现在如下两个方面:一方面,在系统内部的应用能很好地将与对象信息资源有关的相关数据进行统一展现;另一方面,通过提供关联开放数据,使得企业能在自己的系统中应用这些数据,既拓展了数据的利用方式,又支持了企业的信息化建设,大大彰显了图书馆信息资源建设和服务的效果。展望未来,如果图书馆利用自己搜集、整理信息和知识的专长,将大量的可用于关联数据的信息和知识以关联开放数据的形式发布到网络上,那么,图书馆将重新成为人们心目中的知识宝库。[1]Linked Data[EB/OL].[2010 -12 -28].http://en.wikipedia.org/wiki/Linked_Data.
[2]黄永文.关联数据在图书馆中的应用研究综述[J].现代图书情报技术,2010(5):1—7.
[3]Chris Bizer,Richard Cyganiak.How to Publish Linked Data on the Web[EB/OL].[2010 -12 -28].http://www4.wiwiss.fu - berlin.de/bizer/pub/LinkedDataTutorial/.
[4]Linking enterprise data[EB/OL].[2010 -12 -28].http://events.linkeddata.org/ldow2008/papers/21 - servantlinking - enterprise - data.pdf.
[5]如何利用 D2R 发布 Linked data[EB/OL].[2010-12 -28].http://www.ibm.com/developerworks/cn/web/1003_zhangjing_d2r/index.html.
[6]New York Times - Linked Open Data[EB/OL].[2010 -12 -28].http://data.nytimes.com/.
[7]D2R Server - Publishing Relational Databases on the Semantic Web[EB/OL].[2010 - 12 - 28].http://www4.wiwiss.fu - berlin.de/bizer/d2r- server/.
[8]W3C RDF Validation Service[EB/OL].[2010 -12 -28].http://www.w3.org/RDF/Validator/.

