RDF——Web数据集成的元数据解决方案
2007-11-27 17:47:02 来源:WEB开发网RDF——Web数据集成的元数据解决方案 一. 引言
在现今的社会中,信息无处不在,从这些信息中获取对自己有用的信息并不是件容易的事。当然也有例外的,比如,在图书馆里你可以根据书名或作者名或关键字的信息找到藏书号,从而很容易找到所要的书,在音像店里你可以根据片名、主演等信息方便的找到自己所要的影碟。这两个系统有一个共同的特点——它们都是建立在元数据之上。
元数据是关于数据的数据或关于信息的信息。例如:书的文本就是书的数据,而书名、作者、版权数据都是书的元数据。元数据并不一定就是用来检索的,也可用于内部的管理,如图书馆系统可以为书定义被借次数这个元数据,以了解书的被借阅情况,确定是否要增加副本数。元数据的使用,可以大大提高系统的检索和管理的效率。
网络是个大的数据库,它里面包含的数据比起图书馆和音像店来可要复杂的多,五花八门,什么都有,但有一个问题——网络基本上没有元数据。那搜索引擎是怎么工作的呢?其实,搜索引擎中除极少数如Yahoo!外,基本上都是采用网页的全文检索来提供检索服务,这就可想而之其查准率之低了。Yahoo! 将其收集到的网站及网页分门别类加以索引和文摘(由人工完成),从而大大提高了查准率,这也是其流行的一个重要原因。但对如此浩瀚的信息海洋若都采用人工标引显然是不现实的,所以我们用Yahoo!检索的时候查全率不如象Altavista、Infoseek这样的搜索引擎高,原因是其收录的网站网页数量有限。如果网络上的资源在创建之初就都使用元数据来描述其自身的信息,那不就可以省去人工标引的麻烦吗?是的,但是怎样用元数据来描述,这得有个标准, W3C提出的用于描述Web资源的RDF(Resource Description Framework 资源描述框架)就是这样的一个标准,RDF给出了Web数据集成的元数据解决方案。
二. RDF简介
RDF的含义就是描述资源的框架(Framework for Describing Resources),下面我们逐个来看这三个词的意思。
资源(Resource):所有在Web上被命名、具有URI(Unified Resource Identifier 统一资源描述符)的东西。如网页、xml(标准化越来越近了)文档中的元素等;
描述(Decription):对资源属性(Property)的一个陈述(Statement),以表明资源的特性或者资源之间的联系;
框架(Frameword):与被描述资源无关的通用模型,以包容和管理资源的多样性、不一致性和重复性。
综合起来,RDF就是定义了一种通用的框架,即资源—属性—值的三元组,一不变应万变,来描述Web上的各种资源。
下面我们来看一个简单的RDF的例子:
<rdf : Description about=http://www.textuality.com/RDF/Why-RDF.html> (指明被描述资源的URI)
<Author> Tim Bray </Author> (被描述资源有一个叫Author即作者的属性,其值是Tim Bray)
<Home-Page rdf:resource=http://www.textuality.com/> (被描述资源有一叫Home-Page即主页的属性,其值指向另一资源)
</rdf: Description> (结束标志)
三. RDF实现Web元数据描述与交换的机制
3.1 RDF的两大关键技术
RDF有两大关键技术——URI和xml(标准化越来越近了)。URI是Web资源的唯一标识,它是更常用的统一资源定位符URL的超集,除了网页以外,它还可以标识页面上的元素、书籍、电视等资源,甚至可以标识某一个人。在RDF中,资源无所不在,资源的属性是资源,属性的值可以是资源,甚至与一个陈述也可以是资源,也就是说,所有这些都可以用URI标识,可以再用RDF来描述。那RDF怎样放在网络上让人使用呢?xml(标准化越来越近了)作为一种通用的文件格式承担了这个责任,它定义了RDF的表示语法,这样就可以方便的用xml(标准化越来越近了)来交换RDF的数据。
3.2 词汇集
我们可以看到,RDF只定义了用于描述资源的框架,它并没有定义用哪些元数据来描述资源。这正是其高明之处。因为显然描述不同资源的元数据是不同的,而如果要定义一种元数据集,包括所有种类的资源,这在目前还是不现实的,不但工作量巨大,而且即使定义出这样的元数据集,能不能被大家采纳还是个问题,因为对于图书馆这样已经用元数据描述其资源的系统,要放弃原来的元数据集采用一种新的元数据集,其工作量是可想而知的,估计实施过程中遇到的阻力会很大。
RDF采用的是另外一种方法,即它允许任何人定义元数据来描述特定的资源,由于资源的属性不止一种,因此实际上一般是定义一个元数据集,这在RDF中被称作词汇集(Vocabulary),词汇集也是一种资源,可以用URI来唯一标识,这样,在用RDF描述资源的时候,可以使用各种词汇集,只要用URI指明它们即可。当然,各种词汇集的受欢迎程度可能不同,有的也许只是被定义它的人使用,有的却由于其定义的科学性为许多人所接受,如以类似图书馆卡片目录的方式来定义资源的词汇集Dublin Core,定义教育内容IMS元数据,定义个人信息的V-Card元数据等。既然词汇集是资源,当然可以用RDF来描述它的属性以及和其他词汇集间的关系,W3C为此特地提出RDF Schema来定义怎样用RDF来描述词汇集,也就是说RDF Schema是定义RDF词汇集的词汇集,但这个RDF Schema可不是随便什么人都可以定义的,它只有一个,就是W3C定义的版本。例如:
http://mymetadata.vocab.org/Author
---rdfs: subPropertyOf --->
http://purlorg/dc/elements/1.0/Creator
即表示某人自己定义的元数据Author是Dublin Core的元数据Creator的特殊形式。RDF Schema正是通过这样的方式来描述不同词汇集的元数据之间的关系,从而为元数据交换打下基础。
3.3 实现机制
到这里我们就可以发现RDF是怎么来实现Web上的元数据描述和交换的了:它使用xml(标准化越来越近了)语法,首先指定词汇集的URI,词汇集可以是多个,视需要而定,再使用指定的词汇集来描述资源,不同的词汇集间怎么联系呢?用RDF Schema。
为了更加清楚的理解这个机制,下面我们来看一个用xml(标准化越来越近了)表达的RDF的例子:
<rdf :RDF
xml(标准化越来越近了)ns :rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#
xml(标准化越来越近了)ns:dc=http://www.purl.org/DC/ (词汇集1的URI)
xml(标准化越来越近了)ns:nm=http://www.metalab.unc.edu/xml(标准化越来越近了)/names/> (词汇集2的URI)
<rdf :Description about=http://www.metalab.unc.edu/xml(标准化越来越近了) > (被描述资源的URI)
<dc:CREATOR parsetype=Literal> (用词汇集1的元数据CREATOR描述作者属性)
<nm:FirstName> Elliotte</nm:FirstName>(用词汇集2的元数据描述作者的姓名属性)
<nm:MiddleNmae> Rusty</nm:MiddleName>
<nm:LastName> Harold</nm:LastName>
</dc:CREATOR>
</rdf :Description>
</rdf :RDF>
四. RDF的特点
4. 1易控制
RDF使用简单的资源—属性—值三元组,所以很容易控制,即使是数量很大的时候。这个特点很重要,因为现在Web资源越来越多,如果用来描述资源的元数据格式太复杂,势必会大大降低元数据的使用效率,其实从功能的角度来看,完全可以直接使用xml(标准化越来越近了)来描述资源,但xml(标准化越来越近了)结构比较复杂,允许复杂嵌套,不容易进行控制。采用RDF可以提高资源检索和管理的效率,从而真正发挥元数据的功用。
4. 2易扩展
在使用RDF描述资源的时候,词汇集和资源描述是分开的,所以可以很容易扩展。例如如果要增加描述资源的属性,只需要在词汇集中增加相应元数据即可,而如果使用的是关系数据库,增加新字段可不是件容易的事情。
4.3包容性
RDF允许任何人定义自己的词汇集,并可以无缝的使用多种词汇集来描述资源,以根据需要来使用,使各尽其能。比如,在上个例子里描述网页资源时用Dublin Core 描述其作者属性,而在描述作者的姓名时又使用了另外一个专门描述人的词汇集来描述。
4. 4可交换性
RDF使用xml(标准化越来越近了)语法,可以很容易的在网络上实现数据交换;另外,RDF Schema定义了描述词汇集的方法,可以在不同词汇集间通过指定元数据关系来实现含义理解层次上的数据交换。
4. 5易综合
在RDF中资源的属性是资源,属性值可以是资源,关于资源的陈述也可以是资源,都可以用RDF来描述,这样就可以很容易的将多个描述综合,以达到发现知识的目的。例如,在描述某书籍时指明其作者属性值是另一资源,我们就可以根据描述作者的URI来获得作者的信息,如毕业院校等,从而知道这本书是某一院校的毕业生写的,于是在表面上看来没任何关系的两者间建立的联系,而这种联系往往是知识发现的前奏。
五. RDF与若干Web新技术
5. 1 RDF与资源发现(Resource Discovery)技术
RDF采用简单的资源—属性—值三元组来描述资源,试想,如果Web上的资源都用RDF进行描述,由于RDF采用xml(标准化越来越近了)语法,这样就可以很容易的实现资源的自动搜索,而不需要进行人工进行标引,并且可以达到很高的查全率和查准率;另外,RDF描述可以很容易进行综合,产生表面不易观察出来的信息。所有这些都将对资源发现技术产生革命性的影响。
5. 2 RDF与个性化服务
随着Web技术的发展,个性化服务被提上日程。W3C提出的综合能力/偏好界面(CC/PP,Composite Capability/Preference Profile)推荐标准是定义网络上用户以及其用来上网工具(包括硬件平台、系统软件和应用软件)的性能和偏好的集合,它使用了RDF技术。我们可以简单认为用户及工具的能力和偏好都是用户的属性,是用户的元数据,于是可以用RDF来描述,这样就可使用同一种方法来描述Web内容和用户的能力与偏好,在用户获取信息的时候,可以通过某一种规则进行折中,以使得获取的信息符合用户的能力和偏好,为用户提供个性化服务。例如:某Web内容是用多种语言实现的,但由于翻译的问题,各语种的可信度有高有低,而用户对各种语言的掌握程度也不同,这样就需要某一种规则进行折中,以让用户选择一种他可以理解的最忠实于原文档的语种进行阅读,使用RDF描述Web内容和用户能力/偏好可大大简化这种折中的过程。
5.3 RDF与Web信息过滤
RDF最初提出就是为了配合W3C提出的PICS(Platform for Internet Content Selection,因特网内容选择平台)规范。PICS是由服务器向客户机传递Web内容等级的一种机制,比如说某一网页是否包含有色情、暴力的内容。不同的机构可以按自己的价值标准将Web内容进行分级,这样用户就可以很容易的通过设置浏览器将某些网页过滤掉。RDF设计的一个要求就是可以表达PICS1.1能表达的所有内容,以使得可以自动的将PICS1.1标签翻译成RDF的标识,而不损失任何信息,这样做的好处就是可以用RDF来进行数据的交换。
5.4 RDF与可信任Web(Web of Trust)
现在网络要解决的一个重要问题是建立信任机制,这个问题比较复杂,涉及到社会和技术上的许多问题。信任的一个方面是将某一陈述可靠的与做出此陈述的人或机构联系起来,数字签名技术则是技术上实现可信任Web的关键技术。W3C提出的数字签名初步(DSig,Digital Signature Initiative)提出了一种为元数据签名的机制,以确认是谁做了这种机器可读的陈述,它规定了如何由RDF/PICS描述签名陈述,使其成为机器可识别的描述。具有数字签名的RDF将成为构建可信任Web以满足电子商务等应用需要的关键技术。
5.5 RDF与智能浏览(Smart Browsing)技术
Mozilla 浏览器的pre-Nglayout版本和Netscape浏览器的4.07或4.5+版本都大量采用RDF技术,实现了智能浏览。智能浏览即浏览器帮助浏览网页的用户提供其他与其浏览内容有关的信息,例如,如果你在www.whitehouse.gov上浏览白宫的网页,就有可能需要国会、国防部或者总统个人主页的URL,而这些浏览器本身就可以提供给用户。智能浏览技术是未来浏览器发展的一个方向。
5.6 RDF与语义Web(Semantic Web)
语义Web是最近才提出的一个概念,即Web的内容不仅仅用来显示,更重要的是具有真正的含义,使得可以用软件工具在Web中漫游来处理用户提出的复杂任务。而实现语义Web的一个关键技术就是RDF,因为RDF提供了资源的通用描述方式。语义Web的一个目标是突破虚拟世界的界限来控制现实世界,当我们可以用RDF来描述电视机、电话等设备来实现对它们的协调控制的时候,想一想那是多么美好的未来!
六. 结语
RDF为Web资源描述提供了一种通用框架,它以一种机器可理解的方式被表示出来,可以很方便的进行数据交换,RDF提供了Web数据集成的元数据解决方案。通过RDF的帮助,Web可以实现目前还很难实现的一系列应用,如可以更有效的发现资源,提供个性化服务,分级与过滤Web的内容,建立信任机制,实现智能浏览和语义Web等。当然,现在的RDF还处于标准的制定和推广阶段,要在整个网络上都实现用RDF来描述资源,还有很长的一段路要走,这需要各方面的共同努力。
更多精彩
赞助商链接