DCMI 抽象模型

创建者:

Andy Powell (UKOLN, University of Bath, UK)

Mikael Nilsson(KMR Group, CID, NADA, KTH (Royal Institute of Technology), Sweden)

Ambjörn Naeve(KMR Group, CID, NADA, KTH (Royal Institute of Technology), Sweden)

Pete Johnston(UKOLN, University of Bath, UK)

Thomas Baker(DCMI)

发布日期: 20070604

标   识  符: http://dublincore.org/documents/2007/06/04/abstractmodel/

替         代: http://dublincore.org/documents/2005/03/07/abstractmodel/

替         代: http://dublincore.org/documents/2007/04/02/abstractmodel/

被替代:无

最新版本: http://dublincore.org/documents/abstractmodel/

文档状态: DCMI推荐标准.

文档描述: 此文档描述了DCMI元数据描述的抽象模型。

目录

  • 引言
  • DCMI抽象模型
  • 描述,描述集和记录
  • 向上兼容
  • 置标指南
  • 术语
  • 参考文献
  • 致谢
  • 附录A–关于结构值的说明
  • 附录B–抽象模型和RDF
  • 附录C–抽象模型和XML
  • 附录D抽象模型和XHTML

1.引言

本文档详细说明了都柏林核心元数据的抽象模型。其主要目的是为一些比较详细的DC置标指南提供一个参考模型。为了更好的发挥作用,参考模型需要独立于任何详细的编码语法。这种参考模型可以使我们对将要置标的各种描述有更好的理解,并促进不同的语法之间更好的映射和转换的发展。

这篇文档的主要目的是支持DC元数据软件应用的开发者,支持致力于为DC元数据建立新的置标指南语法的人们,支持发展基于DC的元数据应用纲要的人们。

 

2.DCMI抽象模型

用DCMI元数据描述所描述的资源的抽象模型如下:

  • 每种资源有零个或者多个属性/值对。
  • 每个属性/值对由一个属性和一个值组成。
  • 每个值是一个资源(与描述资源的属性相关的物理或者概念实体)
  • 每种资源可以是一个或多个类中的成员。
  • 每个属性(property)和类(class)均具有其被声明的语义。
  • 每个类(class)通过限定(子类)关系与一个或多个其它类相关(当两个类共享部分语义(semantics)时,所有属于子类(subclass)的资源(resource)同时也是另一个相关类(class)的成员)。
  • 每个属性可以通过限定(子属性)关系与一个或多个属性相关联(当两个属性共享某些语义时,例如当一个资源通过子属性与一个值相关联时,此资源同样可以通过属性与相同的值关联)。

元数据描述的抽象模型如下:

  • 一条描述(description)是由一个或多个陈述(statements)(该陈述仅与一个且唯一一个资源有关),以及零个或一个资源的URI组成(URI用来标识所描述的资源);
  • 每个陈述例示一个属性/值对,并由一个属性URI(一个URI标识一个属性),零个或一个值URI(一个URI标识此属性的一个值),零个或一个编码体系词表URI(URI标识此值的类),零个或多个值的值表述组成。
  • 值的表述可以采取字串值或复合值的形式。
  • 每个字串值是一个简单的,用来表示资源的属性值的供人识读的字符串。
  • 每个字串值可以有相应的编码体系语法URI(encodingscheme URI),用来标识一个编码体系语法。
  • 每个字串值可以有相应的字串语种(valuestring language),它是一个ISO语种标记(例如,enGB)。
  • 每个复合值是一些标记文本,图像,视频,音频等等,或者它们的组合,表示作为属性值的资源。
  • 每个值可以是个别相关描述的主题。

上文中用斜体显示的术语,会在下面的”术语”一节中定义。关于模型的许多方面需要注意:

  • 一条”相关描述”描述一个相关的资源,因此并非是”描述”的一部分,例如,当一个人是所描述资源的创建者时,一条相关描述可以提供关于这个”人”的元数据。
  • 在某些语境中,语法编码体系也可以认为是某种”数据类型”。
  • 每个资源可以是一个或多个类的一部分。注意:当资源是一个值时,类作为一种词表编码体系。

在DCMI元数据描述中,所描述资源的类通常由DC类型属性的值来描述。

可以用UML类图来表现资源和描述的DCMI抽象模型,如图一和图二。

图一DCMI资源模型

图二DCMI描述模型

不熟悉UML类图的读者应该注意:尾部带箭头的直线意思是”是”(例如,”词表编码体系是一个类”),以钻石形状开始的线段的意思是”包含”或”有”(例如,”一个陈述包含一个属性URI”)。其他关系也有适当的标记。在抽象模型的文本描述中,白色方框中的类没有明确地被提到,但在附录A中有相应讨论。注意这里采用UML进行建模,并不意味着可以依靠它来进行DCMI元数据应用软件的开发。

3.描述,描述集和记录

上文所述的抽象模型表明每一个DCMI元数据只描述一个,并且仅仅是一个资源。这就是通常所说的”1:1原则”。

然而,现实世界中的元数据应用倾向基于松散聚合的描述集,其中所描述的资源总是以某种方式相互关联,此处称为描述集。例如:描述集可以由关于一幅画的描述和关于其画家的描述共同组成。此外,一个描述集也将包含关于自身的描述(有时被称为”管理性元数据”或者”元元数据”),此类情况是非常多见的。

为了软件应用之间的交换目的,可以依照DCMI编码规则(XHTML元标记,XML,RDF/XM等.),

以元数据记录的形式,对描述集进行例示(http://dublincore.org/resources/expressions/DCMIENCODINGS)。

本文档定义描述集和DCMI元数据记录如下:

  • 一个描述集是一条或多条描述的集合,这些描述是关于一个或多个相关资源的。
  • 一条DCMI元数据记录是指依照一种DCMI置标指南(XHTML元标记,XML,RDF/XML等)来例示的一组描述集。

 

4.值

DCMI元数据值是指和描述资源的属性相关的物理或者概念实体。例如,DC作者属性的值是一个人,一个组织或一个服务物理实体。DC日期属性的值是一个时间点或时间段概念实体。DC覆盖范围属性的值可以是一个地理区域或国家—物理实体。DC主题属性的值可以是一个概念概念实体或者一个物理对象或人物物理实体。每个实体都是一个资源。

值可以用值URI来标识;值可以用一个或多个值字串和复合值来标识;值可以有多个相关描述此时值是一个资源。

5.向上兼容

在DCMI文章中和DCMI的讨论论坛,简单DC和限定DC的理念得到了广泛的应用。由于这些短语的使用有所变动,所以这篇文档没有提出这些短语是何意义的明确性观点。然而,在一般的术语中,涉及到在DC元数据中不使用任何编码体系和元素限定,在每个陈述中只包含字串值时,使用短语简单DC,而当使用到在此处描述的抽象模型的所有特性时,使用短语限定DC。

将一条修饰DC记录解析为一条简单DC记录的过程通常指的就是”向上兼容”。向上兼容的处理可以分成两类:属性向上兼容和值向上兼容。而且,每种方式都可以用”预设(informed)”和”非预设(uninformed)”两种方法之一来实现。”预设”方式指软件在运行向上兼容的算法时,有关特定应用的DCMI元素属性关系和值的规则已经嵌入此软件,”非预设”方式指系统没有预先建立有关属性关系和值的规则。

基于以上分析,可以提炼出一个向上兼容运算法则矩阵,如下所示:

  • 元素向上兼容值向上兼容Uninformed忽略任何标识不属于都柏林核心元数据元素集(http://dublincore.org/documents/dces/DCMES)属性的属性URI的陈述.使用URI值(如果存在)或字串值作为新字串值。忽略任何相关描述和复合值。忽略任何的编码体系URI。
  • Informed在陈述中,递归解决子属性之间的关系直到公认的属性出现,用此属性的属性URI替代陈述中存在的属性URI。如果没有公认的属性出现,忽略此陈述。(在多数情况下,当一个非元素限定的属性出现后,此过程结束)用相关描述或字串值的知识来构造新的字串值。

注意:软件应该使用RDF schema语言(http://dublincore.org/schemas/rdfs/DCRDFS)中描述的DCMI术语声明,DCXML命名域URIs(http://dublincore.org/documents/dcminamespace/DCNAMESPACES)和相匹配的DCMI置标指南(XHTML元标记,XML,RDF/XML等)(http://dublincore.org/resources/expressions/DCMIENCODINGS)来自动解决子属性之间的关系。

如果软件向上兼容的描述集包含多个描述,可以选择生成多个较简单的描述(在初始的描述集的每个单独的描述)或者一个单独的简单描述(在某些情况下,不得不决定在初始的描述集中哪一个是最初的描述)。这是一种特定应用的决议。

6.置标指南

具体的置标指南(HTML meta tags,XML,RDF/XML等)无需包括上述抽象模型的所有内容。然而,DCMI的置标指南应该包括DCMI抽象模型并且说明该模型的哪些部分置标哪些部分不置标。置标指南尤其应该指出使用哪种资源URIs和值URIs来置标的机制。在此需要注意的是抽象模型并没有说明相关的编码体系语法的字串值应该被当作值URI还是当作资源URI来处理。置标指南应该提供明确清楚的机制来对模型的特性进行置标。置标指南还应该指明是否任何复合值或与陈述相关的描述需要嵌入记录里或在另外一条记录中置标,然后使用URI链接到它。

文末的附录B、C、D比较了抽象模型采用RDF/XML,XML和XHTML置标的不同之处(译文略)。

7. 术语

这篇文档使用了以下术语:

类是一个包括具有属性,行为,关系或者共有语义的成员的组;一种类别。

  • 类URI

类URI是指一个标识类的URI。

  • 描述

一条描述由一条或多条陈述组成,这些陈述是关于一个资源的,且只能是关于一个资源的。

  • 描述集

描述集是关于一个资源或多个资源的一个或多个描述的一组集合。

  • 元素

在DCMI中,元素通常被用作”属性”的同义字。然而,应该注意的是元素这个词也往往用于指XML文档中的一个结构化的标记组件。

  • 元素限定

元素限定是指资源的一个属性,与一个特定DCMI”属性”有同样的意思,但是相对来说具有更窄的语义。由于元素限定和元素一样也是资源的属性,所以元素限定可以独立于它所限定的属性用在元数据记录中。在DCMI的实际操作中,元素限定只能有一个DCMI父属性。

  • 编码体系

编码体系是编码体系词表和编码体系语法的通称。

  • 编码体系URI

编码体系词表URI或者编码体系语法URI的通称。

  • 标记文本

标记文本是一个字符串。该字符串包括HTML,XML或其他标记文本(例如TeX),还有和属性的值相关的一些字符串。

  • 属性

属性是用来描述资源某个特定的方面、特征、特性或者关系。

  • 属性URI

一个属性URI是用于标识单个属性的URI。

  • 属性/值对

属性/值对是用来描述资源的属性和值的组合。

  • 修饰词

修饰词目前具体指元素修饰词和编码体系的通称。

  • 记录

一条记录是指依照一条DCMI指标指南(XHTML元标记,XML,RDF/XML等)来例示的一组描述集。

  • 相关描述

一条相关描述是一条资源的描述,用于描述所描述资源的相关资源。

  • 资源

资源是任何可以标识的东西。常见的例子有电子文档,图像,服务(例如,”洛杉矶今天的天气预报”),还有其他资源的集合。并非所有的资源都是网上可检索的;例如,人,机构,还有图书馆里装订成册的书都可以被认为是资源。

  • 资源URI

一个资源URI是用于标识单个资源的URI。

  • 复合值

一些标记文本,图像,视频和一些音频等(或者这些的组合)。它们都表示属性的值。

  • 陈述

一条陈述由一个属性URI(这里的URI用于标识一个属性),零个或一个值URI(这里的URI用于标识属性的值),零个或一个编码体系URI(这里的URI标识值的类),零个或多个值的表述组成。

  • 结构化值

结构化值可以是下列其中之一:

  • 一个包含机器可解析的组件的字串值,并且该字串值有一个相关的语法编码体系,该编码体系说明了这些组件是怎样在该字符串内置标的。
  • 一些标记文本。
  • 一条相关描述。
  • 编码体系语法

一个编码体系语法表示字串值使用某种格式符号的格式,如”20000101″是日期的标准表示。

  • 编码体系语法URI

编码体系语法URI是用来标识编码体系语法的URI。对于DCMI推荐的所有编码体系,URI由编码体系名称和命名域URI http://purl.org/dc/terms/组成。

  • 术语

是指属性的通用名称(例如元素或元素限定),编码体系词表,编码体系语法或者来自受控词表的概念。

  • 术语URI

标识一个术语的URI的通用名称。

一个值是物理的或概念的实体,当它用于描述一个资源时,就成了某个属性的值。

  • 值URI

一个值URI是用于标识属性值的URI。

  • 值的表示

一个值的表示代表该值,例如是该值的表示形式。

  • 字串值

一个字串值是用来表示元素或元素修饰值的简单字符串。一般来说,字串值不包含任何标记文本。

  • 字串值语种

字串值语种说明了字串值所用的语种。

  • 编码体系词表

一个编码体系词表是一个”类”,表示属性值取自于某个受控词表(或概念空间),如国会图书馆主题词表

  • 编码体系词表URI

编码体系词表URI是指标识一个编码体系词表的URI。对于DCMI推荐的所有编码体系来说,此URI由编码体系的名称(http://purl.org/dc/terms/)和命名域URI组成。

 

参考文献

DCMI:Dublin Core Metadata Initiative(http://dublincore.org)

UML:The Unified Modeling Language User Guide

Grady Booch, James Rumbaugh and Ivar Jacobson, AddisonWesley, 1998

DCTERMS :DCMI Metadata Terms(http://dublincore.org/documents/dcmi-terms/ http://dublincore.org/documents/dcmi-terms)

DCMES:Dublin Core Metadata Element Set, Version 1.1: Reference Description

(http://dublincore.org/documents/dces/)

DCMI ENCODINGS:DCMI Encoding Guidelines(http://dublincore.org/resources/expressions/)

DCRDFS:DCMI term declarations represented in RDF schema language(http://dublincore.org/schemas/rdfs/)

DC-NAMESPACES:Namespace Policy for the Dublin Core Metadata Initiative(DCMI)

(http://dublincore.org/documents/dcmi-namespace)

 

致谢

感谢Tom Baker, Rachel Heery, DC应用委员会的成员们 和DC体系结构工作组的成员们,感谢他们为本文档的先前版本所提供的意见。