目录 |
资源描述框架是由全球信息网协会(W3C)主导和结合多个元数据团体所发展而成的一个架构,是能够对结构化的元数据进行编码、交换和再利用的基础架构。
RDF是一个能对元数据进行编码、交换和再利用的基础结构,RDF的数据模型为资源描述提供了一个简单而好用的模型,它具有如下特点。
RDF使用“资源——属性——属性值”模型进行资源描述,资源描述方式得到了简化。因此,当资源数量很大时,也很容易控制。这一点对描述网上资源特别重要,目前网上资源越来越多,如果描述资源的元数据格式太复杂,就会降低元数据的使用效率。采用RDF模型进行资源描述,可以提高资源检索和管理的效率,更有效地发挥元数据的作用。
RDF模型的词汇集和资源描述是分开的。RDF可以使用多种词汇集来描述资源,也允许任何人定义自己的词汇集,它不仅可以携带普通文档的元数据,如DC元数据,也可以携带其他类型的元数据,如MARC元数据。如果要增加描述资源的属性,只需要在词汇集中增加相应元数据即可。所以,RDF具有良好的扩展性。如果使用关系数据库,在数据表中增加新字段,就不会这么容易了。
RDF使用XML格式作为通用语法,这使各种元数据体系之间的转换成为现实。另外,当使用多种元数据描述资源时,可以运用RDF Schema定义不同词汇集的元数据之间的关系。这样,就可以在不同词汇集之间通过指定元数据关系来实现元数据的交换。
在RDF中,资源的属性是资源,属性值可以是资源,关于资源的陈述也可以是资源。它们都可以用RDF来描述,这样就可以很容易地将多个描述综合起来,产生表面不易观察出来的信息,这将对知识发现技术产生深刻的影响。RDF不仅可以描述单个资源,也可以将同类的资源集中起来,如某个软件的多个不同下载地址等。
RDF采用了属性和子属性等面向对象的概念,使得资源之间的层次十分清晰,也使得属性的继承关系得到很好的体现。它的关联机制提供了描述和内容之间的关联描述,对于对象之间的关系描述十分有效。因此,使用RDF模型描述资源,特别便于计算机处理和人的阅读理解。
RDF的设计目的是能以最低限度的约束,灵活地描述信息。具体目标包括:
(1)有一个简单的数据模型:RDF有一种便于应用程序处理和操作的简单数据模型,这个数据模型独立于任何特定的序列化语法。
(2)有形式化语义和推论:RDF有一个形式化的语义,它为对关于RDF表达式的含义的推理提供了一个可靠的基础。特别地,它提供了一个严格定义的蕴涵概念,从而为在RDF数据中定义可靠的推理规则奠定了基础。
(3)使用基于URI的可扩展词汇集:基于具有可选的片段标识符(URI引用,或URIrefs的URIs),词汇集是完全可扩展的。URI引用在RDF中被用来命名所有类别的事物。
(4)使用基于XML的语法:RDF有一份XML序列化格式的推荐标准[RDF SYNTAX],它是可以用来编码的应用程序之间交换信息的数据模型。
(5)使用XML Schema数据类型:RDF可以使用根据XML Schema数据类型[XML SCHEMA2]所表示的数值,从而有助于在RDF和其他XML应用程序中交换信息。
(6)允许任何人发表关于任何资源的陈述:为了推动在互联网层次上的操作,RDF应该是一种开放的框架,允许任何人发表关于任何资源的陈述。
RDF由RDF Data Model、RDF Schema和RDF Syntax三个部分组成。
资源描述框架(RDF)定义了一种通用的数据模型,即RDF Data Model(RDF数据模型),通过资源、属性和值来描述特定信息资源。其中,资源(Resource)是指所有在Web上被命名的、具有统一资源描述符(URI)的对象。资源可以是一个完整的网页集合,也可以是网页中的一部分,或者是XML文档中的元素等。属性(Property)是用来描述资源的特定特征或关系,每一个属性都有特定含义。与资源相关的属性被定义为属性类型(Property-type),用来定义它的属性值和所描述资源形态,以及和其他属性的关系。值(Value)可以是由文本字符串、数字等表示的字面值,也可以是其他资源。
特定的资源以一个被命名的属性与相应的值来描述,则称为“RDF陈述(Statement)”,可理解为“资源R具有值为V的属性P”。在RDF中,每个陈述的基本结构都是一个以主语、谓语、宾语这样的次序的三元组。其中,主语(Subject)是资源,谓语(Predicate)是属性,宾语(Object)是值。资源描述框架的基本数据模型如图所示:
RDF Schema是RDF的语义扩展,它使用一种机器可理解的体系来定义描述资源的词汇,提供了描述相关资源以及这些资源之间关系的机制。其基本作用包括:定义资源的属性类、语法、属性值的类型;定义资源类以及属性所应用到的资源类;声明由一些机构定义的元数据标准的属性类。
RDF Schema提供了核心类(Core Class)、核心属性(Core Attribute)和核心限制(Core Constraint)等机制来定义资源的类、属性、资源和资源之间的继承关系等。资源的类(Class)类似于面向对象中“类”的概念,指的是事物的一类。某一类中的一个具体事物称为“实例(Instance)”。在RDF Schema中的核心属性有“rdfs:type”、“rdfs:subCIassof”、“rdfs:sccAlso”等。
RDF Schema以XML为其宿主语言,通过XML语法实现对各种元数据的集成。目前最新的语法规范是2004年W3C推荐的RDF/XML语法规范。
RDF/XML能够表达由多个陈述语句所组成的RDF图(即RDF数据模型),其基本思想是将RDR图编码为元素、属性、元素内容和属性值。其基本方法是:RDF/xML使用XML限定名(XML QNames)来标识数据模型中谓语结的URI引用(URIreferences,简写为URIrefs)。限定名有一个命名空间名称,由一个URI引用和一个短的本地名称组成。此外,限定名可以有一个短前缀,或者有默认的命名空间声明。再把主语结的URIrefs写作XML属性值(宾语的URIrefs有时也可能被写作属性值)。字面值结(一般是宾语结)则作为原始文本内容或者属性值。
RDF是使用XML进行表达的通用元数据结构,它的数据模型能为计算机执行编码提供一致的语义表达方式。核心数据模型包括三个对象类型:资源(Resource)、属性(Property)和陈述(Statement)。
资源是指任何可由RDF所描述的对象,包括所有在Web上被命名、具有URl(Unified Resource Identifier,统一资源描述符)的信息,如Web站点、网页、XML文档中的元素等,也可以包括非网络上的信息,如印刷本书刊等。资源一般以统一资源标识符(URL)来标识。
在RDF模型里,属性是指与描述资源有关的特征或关系,属性包括属性类型(Property-Type)和属性值(Property-Value)。每个属性表述相关资源的单个元数据属性。每一个资源都有属性和具有特定意义的属性值,包括资源的外观、特点、性质、与其他资源之间的关系等,一个资源可以有一个或多个不同含义的属性。
陈述是指描述特定资源的语句集合。一个资源描述由多个语句构成,一个语句是由资源、属性类型、属性值构成的三元体,表示资源具有的一个特定属性。与自然语言相比较,资源对应于主语,属性类型对应于谓语,属性值对应于宾语。其中,属性值可以是一个资源,该资源同样可以有多个属性。另外,也可以将—个语句看作是一个资源,该资源再和一个或几个属性相连。这样,RDF可以通过信息资源的相互链接而不断地增大。因此,RDF数据模型的描述能力是十分强大的,可以描述现实世界任意复杂的信息对象。
集合数据模型用于描述资源及其属性值集合的情况,RDF定义了三种不同类型的集合。
无序序列称为Bag,它包含一组资源,在无序序列中资源的次序不分先后。Bag通常用在一个属性有多个值的情况下,而这几个值的先后顺序并不重要,例如通讯录可能包含了许多姓名。Bag可以不包含值,也可以有多个重复的值。
有序序列称为Sequence,它也包含一组资源;然而,在有序序列里面的资源的顺序是很重要的。在一个属性有多个值并且这些值依赖于资源的顺序时使用有序序列。例如,一本书作者在一个以上,可能有必要区分出主要作者、次要作者。有序序列可以不包含值,也可以有多个重复的值。
可选序列称为altemative,可选序列提供属性值的选项。可选序列类似于其它序列包含了一组资源。与无序序列和有序序列的主要差别是可选序列为单个属性提供一套可选值,例如某个软件可能提供许多个下载网址。可选序列所包含的值要在一个以上,而第一个值是预设值。
在进行资源描述时,RDF使用了两种关键技术。一是URI。URI作为Web资源的唯一标识,它不但可以标识网页,它还可以标识页面上的元素、书籍、音频、视频等资源。在RDF中,资源的属性是资源,属性值可以是资源,甚至一个陈述也可以是资源。这就是说,所有这些都可以用URl标识,再用RDF来描述。二是XML。RDF采用XML作为交换和处理元数据的通用语法,来建立语义和语法之间的联系,以实现各种不同体系元数据之间的互操作性,这样就可以方便地用XML格式来交换RDF的数据。