(http://www.w3.org/tr/2004/reC-rDf-primer-20040210/#ref-rdf-cOncepts) ])背后的基本思想。 「编辑] 2.1基本概念 试想一下这样的情形:有一个叫 John Smith的人创建了某个网页。如果用自然 语言(比如英语)来陈述该事实,一种简洁明了的方式是采用下面这种简单陈述 的形式: ttp//www.exampleorg/index.htmlhasacreatorwhosevalueisJohnSmith 强调该陈述的各个部分是为了强调:为了描述某事物的特性,需要某些方法来命 名或标识多种事物 陈述所描述的事物(譬如此例中 John Smith所创建的网页) 陈述所描述事物的具体属性( property)(譬如本例中的 creator) 陈述所描述的作为该属性(陈述所描述事物对应的)的值的事物(如这个网页的 creator是谁)。 在上面的陈述中,网页用它的URL( Uniform Resource locator,统一资源定位 符)来标识。另外,单词“ creator”被用来标识事物的属性( property),短 语“ John Smith”被用来标识作为属性( property)的值的事物(一个人) 该网页的其他属性( property)可以通过书写其他具有相同形式的英文陈述来描 述:用URL标识该网页,用单词(或其他表达式)来标识网页的属性( properties) 及其值。例如:这个网页的创建日期和所用的语种可以由下列陈述来描述 http://www.exampleorg/index.htmlhasacreatiordatewhosevalueisAugust16,1999 http://www.exampleorg/index.htmlhasalanguagewhosevalueisEngish RDF是基于这一思想的:被描述的事物具有一些属性 (http://www.w3.org/tr/rdf-conCePts/#dfn-property)(properties),ifix 些属性各有其值( values);对资源的描述可以通过对它作出指定了上述属性及 值的陈述( statement)来进行(就像上面例子中的那样)。RDF用一套特定的 术语来表达陈述中的各个部分。确切地说,关于事物(譬如上例中的网页)的陈 述中用于识别事物的那部分就叫做主体
(http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-rdf-concepts) ])背后的基本思想。 [编辑] 2.1 基本概念 试想一下这样的情形:有一个叫 John Smith 的人创建了某个网页。如果用自然 语言(比如英语)来陈述该事实,一种简洁明了的方式是采用下面这种简单陈述 的形式: h t tp://www.example.org/index.html has a c r eator whose value is J o hn S mith 强调该陈述的各个部分是为了强调:为了描述某事物的特性,需要某些方法来命 名或标识多种事物: • 陈述所描述的事物(譬如此例中 John Smith 所创建的网页) • 陈述所描述事物的具体属性(property)(譬如本例中的 creator) • 陈述所描述的作为该属性(陈述所描述事物对应的)的值的事物(如这个网页的 creator 是谁)。 在上面的陈述中,网页用它的 URL(Uniform Resource Locator,统一资源定位 符)来标识。另外,单词“creator”被用来标识事物的属性(property),短 语“John Smith”被用来标识作为属性(property)的值的事物(一个人)。 该网页的其他属性(property)可以通过书写其他具有相同形式的英文陈述来描 述:用 URL 标识该网页,用单词(或其他表达式)来标识网页的属性(properties) 及其值。例如:这个网页的创建日期和所用的语种可以由下列陈述来描述: http://www.example.org/index.html has a creation-date whose value is August 16, 1999 h t tp://www.example.org/index.html has a l anguage whose value is E n glish RDF 是基于这一思想的:被描述的事物具有一些属性 (http://www.w3.org/TR/rdf-concepts/#dfn-property) (properties),而这 些属性各有其值(values);对资源的描述可以通过对它作出指定了上述属性及 值的陈述(statement)来进行(就像上面例子中的那样)。RDF 用一套特定的 术语来表达陈述中的各个部分。确切地说,关于事物(譬如上例中的网页)的陈 述中用于识别事物的那部分就叫做主体
(http://www.w3.org/tr/rdf-conCepTs/#dfn-subject),而用于区分陈述对象主 语的各个不同属性(譬如:作者,创建日期,语种等等)的那部分就叫做谓词 (httD:/w.n3.org/Rrdf- concepts/mfm- predicate),陈述中用于区分各个 属性的值的那部分叫做客体 (httD:/w.w3.org/TR/rodf- concepts/#dfn- object)。因此,考虑英文陈述: http://ww.exampleorg/index.htmlhasacreatorwhosevalueisJohnSmith 这个陈述里的不同部分用RDF术语来说就是 主体是Urlhttp:/www.example.org/index.html 谓词是词 客体是短语“ John Smith 正如英语是作为(用英语沟通的)人们之间很好沟通工具一样,RDF是用来做出 机器可处理的声明的工具。那么,如果想做出这种适合机器处理的声明,还需要 两件事 一个可用来区分标识一个陈述中的主体,谓词,客体的机器可处理的标识符系统 同时这个标识符系统不会和其他人可能在Web上使用的相似的标识符系统混淆 种用以表示这些陈述并让这些陈述可在机器间交流的机器可处理的语言 幸运地是,现有的Web体系结构提供了这两个必需的工具。 正如前面所描述的,Web已经提供了一种形式的标识符-URL( Uniform Resource Locator,同一资源定位符)。在第一个例子中,就采用了一个URL来标识John Smith所创建的网页。URL是标识( identify)Web资源( Web resource)的字 符串,这是通过标识资源的首选访问机制来实现的(本质上,即资源的网络“位 置”)。然而,对于许多不具有网络地址或URL的资源(这一点与网页是不同的), 能够记录关于它们的信息也是同等重要。 Web提供了一套更通用的标识符形式,称为统一资源标识符 (http://www.isiedulin-notes/rfc2396.txt)(uniformResourceIdentifier URI)。URL是URI的一种具体形式。所有URI都具有共同的特征:即不同的人 或组织可以彼此独立地创建并使用URI来标识事物。但是,URI并不局限于标识 具有网络地址或其他计算机访问机制的资源。实际上,我们可以创建URI来引用 陈述中需要被标识的任何资源,包括: ·网络可访问资源,譬如,一份电子文档、一个图片、一个服务(例如,“洛山矶的今 日天气预报”)或是一组其他的资源 非网络可访问资源,譬如,人、公司、在图书馆装订成册的书籍 不物理存在的抽象概念,如“作者( creator)”这个概念
(http://www.w3.org/TR/rdf-concepts/#dfn-subject),而用于区分陈述对象主 语的各个不同属性(譬如:作者,创建日期,语种等等)的那部分就叫做谓词 (http://www.w3.org/TR/rdf-concepts/#dfn-predicate),陈述中用于区分各个 属性的值的那部分叫做客体 (http://www.w3.org/TR/rdf-concepts/#dfn-object)。因此,考虑英文陈述: h t tp://www.example.org/index.html has a c r eator whose value is J o hn S mith 这个陈述里的不同部分用 RDF 术语来说就是: • 主体是 URL http://www.example.org/index.html • 谓词是词“creator” • 客体是短语“John Smith” 正如英语是作为(用英语沟通的)人们之间很好沟通工具一样,RDF 是用来做出 机器可处理的声明的工具。那么,如果想做出这种适合机器处理的声明,还需要 两件事: • 一个可用来区分标识一个陈述中的主体,谓词,客体的机器可处理的标识符系统, 同时这个标识符系统不会和其他人可能在 Web 上使用的相似的标识符系统混淆; • 一种用以表示这些陈述并让这些陈述可在机器间交流的机器可处理的语言; 幸运地是,现有的 Web 体系结构提供了这两个必需的工具。 正如前面所描述的,Web 已经提供了一种形式的标识符-URL(Uniform Resource Locator,同一资源定位符)。在第一个例子中,就采用了一个 URL 来标识 John Smith 所创建的网页。URL 是标识(identify)Web 资源(Web resource)的字 符串,这是通过标识资源的首选访问机制来实现的(本质上,即资源的网络“位 置”)。然而,对于许多不具有网络地址或 URL 的资源(这一点与网页是不同的), 能够记录关于它们的信息也是同等重要。 Web 提供了一套更通用的标识符形式,称为统一资源标识符 (http://www.isi.edu/in-notes/rfc2396.txt)(Uniform Resource Identifier, URI)。URL 是 URI 的一种具体形式。所有 URI 都具有共同的特征:即不同的人 或组织可以彼此独立地创建并使用 URI 来标识事物。但是,URI 并不局限于标识 具有网络地址或其他计算机访问机制的资源。实际上,我们可以创建 URI 来引用 陈述中需要被标识的任何资源,包括: • 网络可访问资源,譬如,一份电子文档、一个图片、一个服务(例如,“洛山矶的今 日天气预报”)或是一组其他的资源; • 非网络可访问资源,譬如,人、公司、在图书馆装订成册的书籍; • 不物理存在的抽象概念,如“作者(creator)”这个概念;
由于上述通用性,RDF用URIs作为其标识机制(用于标识陈述中的主体、谓词 和客体)的基础。更准确地说,RDF使用的是URI引用( URI references) (http://www.w3.org/tr/rdf-coNcEpts/#dfn-uri-reference)[uris (http://www.w3.org/tr/2004/rEc-Rdf-primer-20040210/#Ref-Uri)]一个 URI引用(或“ URIref”)是一个在尾部附加了可选的“片段识别符( fragment i identifier)”的URI。比如,URI引用( URIref) http://www.exampleorg/index.htmlEUri http://www.example.org/index.htm和(由符号#分隔的)的section2片 段标识符)组成。 RDF URIrefs可以包含 Unicode [UNICODE (http://www.w3.org/tr/2004/rEc-Rdf-primer-20040210/#REf-UniCode)]1f (参见IRDF- CONCEPTS (http://www.w3.org/tr/2004/reC-rDf-primer-20040210/#ref-rdf-cOncepts) ]),这就允许在 URIrefs中使用多种语言。RDF将“资源( resource)”定义 任何可被为URI引用( URIref)标识的事物。因此,使用 URIrefs,RDF实际上 可以描述任何事物,并陈述这些事物之间的关系。 URIrefs和片段标识符将在 (http://www.w3.org/tr/2004/reC-rDf-primer-20040210/#ideNtifIeRs)fu L RDF-CONCEPTS (http://www.w3.org/tr/2004/rEc-Rdf-primer-20040210/#REf-Rdf-concepts)] 中作进一步的阐述 为了用一种机器可处理的( machine-processable)方式来表示RDF陈述(RDF statements),RDF采用了可扩展标记语言( Extensible Markup Language) (http://www.w3.org/tr/2000/rEc-Xm1-20001006ixml (http://www.w3.org/tr/2004/reC-Rdf-primer-20040210/#rEf-xMd)]oXmLi 设计成允许任何人来设计他们自己的文档格式,并可用这种格式书写文档。RDF 定义了一个特殊的XML标记语言(称为RDF/ML)来表示RDF信息和在机器间交 换这些信息。在第一节 (httD:/w.n3.org/TR2004REC-rdf- prImer-20040210件 intro)中有一个关 于RDF/XML的例子。这个例子(例1 (http://www.w3.org/tr/2004/reC-Rdf-primer-20040210/#exAmpLe1))使用了 一些诸如< contact: fullName>和< contact: personalTitle>这样的标签来相应地 区分 Eric miller和Dr这些文本内容。这些标签能让那些理解这些标签含义的 程序正确地解释文本内容。ⅫML的内容和标签(除了一些特例)能够包含统一字 符编码 TUNICODE (http://www.w3.org/tr/2004/rEc-Rdf-primer-20040210/reF-uNicOde)]ei 字符,这就允许了来自各种语言的信息可以被直接显示出来。附录B (http://www.w3.org/tr/2004/reC-Rdf-primer-20040210件documents)大体上 给出了关于XML进一步的背景知识。关于RDF的RDF/XML专用语法在第三节 (httD:/Ww.w3.org/2004EC-rdf- primer-20040210/件dfxm)中有更详细 的描述,且定义在规范RDF- SYNTAX (http://www.w3.org/tr/2004/reC-rDf-primer-20040210/#ref-rdf-syNtax)] 中
由于上述通用性,RDF 用 URIs 作为其标识机制(用于标识陈述中的主体、谓词 和客体)的基础。更准确地说,RDF 使用的是 URI 引用(URI references) (http://www.w3.org/TR/rdf-concepts/#dfn-URI-reference) [URIS (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-uri)]。一个 URI 引用(或“URIref”)是一个在尾部附加了可选的“片段识别符(fragment identifier)”的 URI。比如,URI 引用(URIref) http://www.example.org/index.html# 由 URI http://www.example.org/index.html 和(由符号#分隔的)的 section2 (片 段标识符)组成。RDF URIrefs 可以包含 Unicode[UNICODE (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-unicode)]字符 (参见[RDF-CONCEPTS (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-rdf-concepts) ]),这就允许在 URIrefs 中使用多种语言。RDF 将“资源(resource)”定义 任何可被为 URI 引用(URIref)标识的事物。因此,使用 URIrefs,RDF 实际上 可以描述任何事物,并陈述这些事物之间的关系。URIrefs 和片段标识符将在 Appendix A (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#identifiers)和 [RDF-CONCEPTS (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-rdf-concepts)] 中作进一步的阐述。 为了用一种机器可处理的(machine-processable)方式来表示 RDF 陈述(RDF statements),RDF 采用了可扩展标记语言(Extensible Markup Language) (http://www.w3.org/TR/2000/REC-xml-20001006)[XML (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-xml)]。XML 被 设计成允许任何人来设计他们自己的文档格式,并可用这种格式书写文档。RDF 定义了一个特殊的 XML 标记语言(称为 RDF/XML)来表示 RDF 信息和在机器间交 换这些信息。在第一节 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#intro)中有一个关 于 RDF/XML 的例子。这个例子(例 1 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#example1) )使用了 一些诸如<contact:fullName>和<contact:personalTitle>这样的标签来相应地 区分 Eric Miller 和 Dr 这些文本内容。这些标签能让那些理解这些标签含义的 程序正确地解释文本内容。XML 的内容和标签(除了一些特例)能够包含统一字 符编码[UNICODE (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-unicode)] 的 字符,这就允许了来自各种语言的信息可以被直接显示出来。附录 B (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#documents)大体上 给出了关于 XML 进一步的背景知识。关于 RDF 的 RDF/XML 专用语法在第三节 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#rdfxml)中有更详细 的描述,且定义在规范[RDF-SYNTAX (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-rdf-syntax)] 中
2.2RDF模型 在2.1 (http://www.w3.org/tr/2004/rEc-rdf-primer-20040210/#BasiCcoNcepts)p 阐述了以下内容:RDF陈述的基本概念,用 URIref标识RDF陈述中涉及的事物 的方法,以及用RDF/XML作为一种机器可处理的方式来表示RDF陈述。基于这些 铺垫,这节将描述RDF是如何用URIs发表关于资源的陈述的。在介绍(第1节) 中已经说明了,RDF的基本思想是:表达简单的资源陈述,其中每个陈述都是由 主体( sub ject),谓词( predicate),客体( object)组成的。在RDF中,如 下的英文陈述: http://www.exampleorg/index.htmlhasacreatorwhosevalueisJohnSmith 可以由RDF陈述来表示: 一个主体htp/ ww.example. org/index. html 一个谓词htp/ purl. org/ dc/elements/1.1/ /creator 和一个客体htp/www.example.org/Staffed/8740 请注意是如何用 URIrefs不仅标识了陈述的主体,还标识了谓词和客体,而不分 别用单词“作者”和“ John Smith”(这样使用 URIrefs的效果将会在这节的稍 后部分做论述) RDF把图中的节点和弧作为陈述的模型。RDF的图模型 (htp://ww.n3.org/ TR/rdf-concepts/ section-data-mdeD已在[RDF概念 (http://www.w3.org/tr/2004/reC-rDf-primer-20040210/#ref-rdf-cOncepts)] 里有过详细说明。在这个表示法(图示法)中,一个陈述可表示为 ·一个表示主体的节点; 个表示客体的节点 一个由主体节点指向客体节点的表示谓词的弧; 因此以上的RDF陈述可以描述为如图2 (httD:/w.w3.og/R2004 REC-rdf- prImer-00040210件 figure2所示的那 样
[编辑] 2.2 RDF 模型 在 2.1 节 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#basicconcepts) 中 阐述了以下内容:RDF 陈述的基本概念,用 URIref 标识 RDF 陈述中涉及的事物 的方法,以及用 RDF/XML 作为一种机器可处理的方式来表示 RDF 陈述。基于这些 铺垫,这节将描述 RDF 是如何用 URIs 发表关于资源的陈述的。在介绍(第 1 节) 中已经说明了,RDF 的基本思想是:表达简单的资源陈述,其中每个陈述都是由 主体(subject),谓词(predicate),客体(object)组成的。在 RDF 中,如 下的英文陈述: h t tp://www.example.org/index.html has a c r eator whose value is J o hn S mith 可以由 RDF 陈述来表示: • 一个主体 http://www.example.org/index.html • 一个谓词 http://purl.org/dc/elements/1.1/creator • 和一个客体 http://www.example.org/staffid/85740 请注意是如何用 URIrefs 不仅标识了陈述的主体,还标识了谓词和客体,而不分 别用单词“作者”和“John Smith”(这样使用 URIrefs 的效果将会在这节的稍 后部分做论述)。 RDF 把图中的节点和弧作为陈述的模型。RDF 的图模型 (http://www.w3.org/TR/rdf-concepts/#section-data-model)已在[RDF 概念 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#ref-rdf-concepts)] 里有过详细说明。在这个表示法(图示法)中,一个陈述可表示为: • 一个表示主体的节点; • 一个表示客体的节点; • 一个由主体节点指向客体节点的表示谓词的弧; 因此以上的 RDF 陈述可以描述为如图 2 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#figure2)所示的那 样:
http://www.example.org/index.html http://purl.org/dc/elements/1.1/creator http://ww.example.org/staffid/85740 图2:一个简单的RDF陈述 组陈述相应地被一组节点和弧表示。所以,为了在RDF中表示其他的英文陈述: http://www.exampleorg/index.htmlhasacreation-datewhosevaluei August 16, 1999 http://www.exampleorg/index.htmlhasalanguagewhosevalueisEngli 可以用图3(htp://w.w3.ore/TR/2004/REC-rdf- primer-20040210/ #figure. 所示的图(用合适的 URIrefs标识属性" creation-date"和" language"): http://www.example.org/index.html http:/nWw.example.org/terms/creation-date http://purl.org/dc/elements/1.1/creator August 16, 1999 http://www.example.org/staffid/85740 http://purl.org/dc/elements/1.1/language 图3:关于同一资源的多个陈述 图3(http://www.w3.org/tr/2004/reC-rDf-primer-20040210件figure3说明 了RDF陈述中的客体可以是 URIrefs,也可以是常量值(称作文字),即用于表 示某种属性值的字符串。 图3(http://www.w3.org/tr/2004/reC-rDf-primer-20040210/#figUre3)显示 了:为了表示多种类型的属性值,RDF陈述中的客体可能是 URIrefs或字符串表 示的常数(称为文字 (http://www.w3.org/tr/rdf-coNcePts/#section-literals),literal)o(el 如在以http://purl.org/dc/elements/1.1/language为谓词的例子中,那 个文字就是一个英文的国际标准双字母码。)在RDF的陈述中,文字( literal)
图 2:一个简单的 RDF 陈述 一组陈述相应地被一组节点和弧表示。所以,为了在 RDF 中表示其他的英文陈述: http://www.example.org/index.html has a creation-date whose value is August 16, 1999 http://www.example.org/index.html has a language whose value is English 可以用图 3 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#figure3) 所示的图(用合适的 URIrefs 标识属性"creation-date" 和 "language"): 图 3:关于同一资源的多个陈述: 图 3 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#figure3) 说明 了 RDF 陈述中的客体可以是 URIrefs,也可以是常量值(称作文字),即用于表 示某种属性值的字符串。 图 3 (http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#figure3)显示 了:为了表示多种类型的属性值,RDF 陈述中的客体可能是 URIrefs 或字符串表 示的常数(称为文字 (http://www.w3.org/TR/rdf-concepts/#section-Literals),literal)。(比 如在以 “http://purl.org/dc/elements/1.1/language” 为谓词的例子中,那 个文字就是一个英文的国际标准双字母码。)在 RDF 的陈述中,文字(literal)