元数据设计、实施和最佳实践方面的创新

使用DC-Text格式表示Dublin Core™元数据

创作者: 皮特·约翰斯顿
Eduserv基金会、英国
发行日期: 2007-12-03
最新版本: //www.voudr.com/specifications/dublin-core/dc-text/
发布历史: //www.voudr.com/specifications/dublin-core/dc-text/release_history/
描述: 本文档指定了表示都柏林核心元数据描述集的简单文本格式。该格式称为“DC文本”。

表的内容

  1. 介绍
  2. DCMI抽象模型与DC文本
  3. DC文本语法的一些特性
  4. DC文本语法
  5. 参考文献
  6. 确认

1.介绍

DCMI抽象模型[DCAM]的“描述集模型”描述了构成DC元数据的结构描述组。此文档指定用于序列化或表示DC元数据的语法描述组在纯文本。这种格式被称为“DC-Text”。用于序列化的纯文本格式描述集是一种有用的方法,它可以以人类可读的形式展示示例,突出了DCMI抽象模型的构造,也可以用来比较其他机器可处理格式所表示的信息。

2.DCMI抽象模型与DC文本

在DCMI抽象模型[DCAM]的“描述集模型”的基础上,设计了一个DCMI抽象模型描述组具有以下结构:

  • A.描述组是由一个或多个组成的描述

  • A.描述由…组成

    • 0或1描述资源URI

    • 一个或多个语句

  • A.声明由…组成

    • 一个URI属性

    • 一个价值的代理

  • A.价值的代理要么是一个文字值替代或者一个non-literal值替代

    • A.文字值替代由…组成

      • 一个值字符串
    • A.non-literal值替代由…组成

      • 0或1uri值

      • 0或1词汇表编码模式uri

      • 零或更多值的字符串

  • A.值字符串要么是一个普通的字符串值或者一个输入值的字符串

    • A.普通的字符串值可能与值字符串的语言

    • A.输入值的字符串与一个语法编码方案URI

  • A.non-literal价值可以由另一个人来描述描述

本文档中描述的格式支持完整的DCAM“描述集模型”。

3.DC文本语法的一些特性

本节概述了该语法的一些特性。

3.1 DC-Text文档的结构

DC-Text文档的一般结构如下:

命名空间声明label (label (content) label (label([…])[…)))

DCMI抽象模型定义的DC元数据描述集的每个主要组件都以如下形式的语法结构表示在DC- text中:

标签(内容)

哪里标签被以下字符串之一替换:

Description, Description, ResourceURI, ResourceId, Statement, PropertyURI, VocabularyEncodingSchemeURI, ValueURI, ValueId, ValueString, Language, SyntaxEncodingSchemeURI, LiteralValueString

内容是一个:

  • 这种形式的一个或多个语法结构的序列标签(内容)(即这些结构是“嵌套的”);或

  • 形式的字符串“文字”,表示该Unicode文字;或

  • 形式的字符串< uri >,表示URI;或

  • 形式的字符串前缀:名称,它表示作为URI缩写使用的“限定名”

  • 表示语言标记的字符串

  • 一个字符串,它是一个局部作用域标识符,用于在值和它们的描述之间建立关系

为每一个标签上述列表中的值,允许的内容由下面第4节中指定的语法规则确定。

DC- text语法支持单个DC的表示描述组,因此DC-Text文档包含0个或多个名称空间声明后面跟着一个标签(内容)语法结构标签描述开始,当内容,一个或多个嵌套标签(内容)结构与标签描述,即DC-Text文件的大纲形式如下:

@前缀前缀:.DescriptionSet(描述(语句(…)语句(…))描述(语句(…)语句(…))

3.2 DC文本中的URI

DCAM使用统一资源标识符(URI)[RFC3896]来引用所描述的资源和元数据术语(属性,,词汇编码方案语法编码方案).

在DC-Text语法中,uri可以用完整的uri表示,也可以用“限定名”表示。

3.2.1 URI

URI可以完整表示URI属性a的内容标签(内容)语法结构:

示例1:完整表示的URI

描述集(Description (Statement (PropertyURI ()) ValueString(“元数据”)))). value)

请注意DC-Text格式可以支持相对引用形式的URI引用。

3.2.2 uri,

限定名称和命名空间声明

URI可以表示为“限定名称”。

“限定名”是DC-Text格式中使用的URI的缩写。一个“限定名”由两个部分组成,一个是前缀和一个的名字,以冒号分隔(:).在DC-Text中,只要使用了“限定名”,它就用来表示URI。

“限定名”中的“前缀”使用名称空间声明与“名称空间URI”相关联。由“限定名”表示的URI是通过连接前缀关联的“命名空间URI”和“名称”来确定的。

名称空间声明出现在DC-Text文档的开头,其形式如下:

@prefix前缀:

例如,下面的声明与前缀相关联使用dc与URIhttp://purl.org/dc/terms/和前缀前女友与URIhttp://example.org/resources/

@prefix dcterms: 。@prefix ex: 

当“编码”描述组通过生成DC-Text实例,可以确定表示URI的“限定名”

  • 将URI分成一对,由本地名称(URI的尾随字符,受上面描述的词法约束)和名称空间URI (URI的前面部分)组成

  • 为这个名称空间URI提供一个名称空间声明元素(在名称空间声明和“限定名称”中使用前缀)。

注意,这意味着对于单个URI,可能有多个“限定名称”表示。例如,URIhttp://purl.org/dc/terms/title可以使用以下任意一个(命名空间URI,本地名称)对表示:

  • {http://purl.org/dc/terms/},标题

  • {http://purl.org/dc/terms/t}, itle

  • {http://purl.org/dc/terms/ti},框架

  • {http://purl.org/dc/terms/tit},勒

  • {http://purl.org/dc/terms/titl}, e

社区通常决定URI使用“限定名称”的约定,特别是术语URI (属性,,词汇编码方案语法编码方案),但在理论上,这四种形式中的任何一种都可以部署,而不需要更改实例的解释。对于所有DCMI术语,DCMI社区使用的约定是将术语URI分割为最右边的'/'(正斜杠)字符处的扩展名称(如上面的第一个示例所示)。此外,“限定名”中用于前缀的字符并不重要,但是社区经常采用前缀的通用用法的约定,以促进人类的可读性。

下面的示例展示了名称空间声明和属性URI的“限定名”的使用http://purl.org/dc/terms/title:

示例2:表示为“限定名称”的URI

@prefix dcterms: 。描述集(Description (Statement (PropertyURI (dcterms:title)) LiteralValueString ("DCMI主页"))))

如果“限定名称”中使用的前缀未与命名空间声明中的URI关联,则为错误。如果前缀已与多个URI关联(尽管有多个命名空间声明),则前缀与最新声明中指定的命名空间URI关联。

在下面的示例中,前缀“xx”用于“限定名”,该前缀有两个名称空间声明。第二个名称空间声明用于生成URIhttp://your.example.org/terms/approved从“限定名”:

示例3:URI表示为“限定名”,多个命名空间声明

@前缀xx:.@前缀xx:.DescriptionSet(描述(声明(PropertyURI(xx:approved)LiteralValueString(“2007-12-03”))

3.3评论

注释可以插入DC-Text文档中的任何位置。注释以A开头#以新行结束。

#文档@prefix prefix:开头的注释。DescriptionStart(描述(#描述语句开头的注释(…)#描述语句(…)后面的注释(…)(描述语句(…)语句(…))

3.4字符串转义

表示字面值的字符串可能包含转义字符,以编码不可打印字符和DC-Text语法中用作终止符的字符。转义字符是:

  • \t = U+0009, tab
  • \n = U+000A,换行
  • \r = U+000D,回车
  • “=U+0022,双引号
  • U+005C,反斜杠

示例4:包含转义字符的文字

@前缀dcterms:.DescriptionSet(描述(语句(PropertyURI(dcterms:title)LiteralValueString(“夜间发生碰撞的东西”))

4.DC文本语法

本节描述如何使用DC-Text语法表示DCAM描述集模型的每个构造。

4.1编码描述集

A.描述组由一个或多个描述组成。

DC- text文档支持单个DC的表示描述组.A.描述组使用描述开始()句法结构。

示例5:描述集

描述集(Description (Statement (PropertyURI ()) ValueString(“元数据”)))). value)

4.2编码

一个描述

A.描述一组是一个还是多个语句一个资源。

A.描述使用描述()句法结构。

下面的示例表示一个描述组由单个描述

例6:说明

描述集(Description (Statement (PropertyURI ()) ValueString(“元数据”)))). value)

A.描述组可能包含多个描述

每个描述是使用一个单独的描述()句法结构。

下面的示例表示一个描述组组成的两个描述.顺序描述()句法结构并不重要。

例7:多个描述

Description (Statement (Statement (PropertyURI () ValueString ("Metadata"))) Description (Statement (PropertyURI ()) LiteralValueString ("Dublin Core™Metadata Initiative"))))

4.1.1的

描述的资源URI

A.描述可能有相关的描述资源URI

A.描述资源URI使用ResourceURI ()语法结构:

示例8:描述的资源URI

Description set (Description(ResourceURI()) Statement (PropertyURI () ValueString ("Metadata"))))

通过引入名称空间声明,“限定名称”机制可用于缩写描述资源URI.相同的描述组前面示例中的代码可能如下所示。

示例9:使用“限定名”缩写描述的资源URI

@前缀页面:。Description set (Description (ResourceURI (page:home)) Statement (PropertyURI () ValueString ("Metadata")))) . value)

注意:从本文档的这一点开始,所有示例都将显示缩写为“限定名称”的URI,但在每种情况下,它们都可以表示为完整的URI。

4.3编码语句

A.描述是由一个或多个组成的语句

A.声明使用声明()句法结构。

下面的示例表示一个描述由单个声明

例10:陈述

@前缀页面:。@prefix dcterms: 。Description (Description (ResourceURI (page:home)) Statement (PropertyURI (dcterms:subject) ValueString ("Metadata")))) . name . name . name . name . name . name . name . name . name

A.描述可能包含多个语句

每个声明是使用一个单独的声明()句法结构。

下面的示例表示一个描述组成的两个语句.顺序声明()句法结构并不重要。

例11:多个语句

@前缀页面:。@prefix dcterms: 。Description set (Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:subject) ValueString ("Metadata")) Statement (PropertyURI (dcterms:title) LiteralValueString ("DCMI home page "))))

4.3.1对属性URI进行编码

A.声明必须恰好包含一个URI属性

A.URI属性使用句法结构。

下面的示例表示一个描述由单个声明在哪里URI属性http://purl.org/dc/terms/subject.

例12:属性URI

@前缀页面:。@prefix dcterms: 。Description (Description (ResourceURI (page:home)) Statement (PropertyURI (dcterms:subject) ValueString ("Metadata")))) . name . name . name . name . name . name . name . name . name

4.4编码值代理

A.声明必须恰好包含一个价值的代理.A.价值的代理要么是一个文字值替代或者一个non-literal值替代

4.4.1对文字值代理进行编码

A.文字值替代完全由one_value string_组成。

4.4.1.1文字值代理值字符串的编码

A.值字符串在一段时间内文字值替代使用LiteralValueString ()句法结构。

下面的示例表示一个描述由单个声明与一个文字值替代包含一个值字符串

示例13:文字值代理:值字符串

@前缀页面:。@prefix dcterms: 。Description set (Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:title)) LiteralValueString ("DCMI主页"))))

4.4.2编码非文字值代理项

A.non-literal值替代是由:

  • 0或1uri值

  • 0或1词汇表编码模式uri

  • 零或更多值的字符串

4.4.2.1值URI

A.值URI使用句法结构。

下面的示例表示一个描述由单个声明与一个non-literal值替代包含一个值URI

例14:非文字值代理项:值URI

@前缀页面:。@prefix agent: 。@prefix dcterms: 。Description (Description (ResourceURI (page:home)) Statement(PropertyURI (dcterms:creator)) ValueURI (agent:DCMI)))) . net
4.4.2.2词汇编码方案URI

A.词汇编码方案URI使用VocabularyEncodingSchemeURI ()句法结构。

下面的示例表示一个描述由单个声明与一个non-literal值替代包含一个值URI和一个词汇编码方案URI

示例15:非文字值代理:词汇编码方案URI

@前缀页面:。@prefix dcterms: 。@prefix exterms: 。@prefix exsh: 。Description set (Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:subject) ValueURI (exsh:metadata) VocabularyEncodingSchemeURI (myterms: exsh)))) .
4.4.2.3编码非文字值代理值字符串

A.值字符串在一段时间内non-literal值替代使用ValueString ()句法结构。

下面的示例表示一个描述由单个声明与一个non-literal值替代包含一个值URI,一个词汇编码方案URI和一个值字符串

例16:非文字值代理项:值字符串

@前缀页面:。@prefix dcterms: 。@prefix exterms: 。@prefix exsh: 。Description set (Description (ResourceURI (page:home)) Statement (PropertyURI (dcterms:subject) ValueURI (exsh:metadata) VocabularyEncodingSchemeURI (exterms: exsh) ValueString (" metadata "))))

A.non-literal值替代可能包含多个值的字符串

下面的示例表示一个描述由单个声明与一个non-literal值替代包含一个值URI,一个词汇编码方案URI值的字符串

示例17:非文字值代理:多值字符串

@前缀页面:。@prefix dcterms: 。@prefix exterms: 。@prefix exsh: 。Description set (Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:subject) ValueURI (exsh:metadata) VocabularyEncodingSchemeURI (exterms: exsh) ValueString (" metadata ") ValueString ("Métadonnées")))) . xml

4.5编码值字符串

A.值字符串要么是一个普通的字符串值或者一个输入值的字符串

4.5.1普通值字符串编码

A.普通的字符串值可能与值字符串的语言

4.5.1.1编码值字符串语言

A.值字符串的语言使用语言(标签)句法结构。

下面的示例表示一个描述由单个声明与一个non-literal值替代包含一个值URI,一个词汇编码方案URI普通的字符串值,每一个都与a相关联值字符串的语言

示例18:值字符串语言

@前缀页面:。@prefix dcterms: 。@prefix exterms: 。@prefix exsh: 。Description set (Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:subject) ValueURI (exsh:metadata) VocabularyEncodingSchemeURI (exterms: exsh) ValueString (" metadata " Language (en)) ValueString ("Métadonnées" Language (fr))))) . py)

4.5.2对键入的值字符串进行编码

A.输入值的字符串与一个语法编码方案URI

4.5.2编码语法编码方案URI

A.语法编码方案URI使用SyntaxEncodingSchemeURI ()句法结构。

下面的示例表示一个描述由单个声明与一个non-literal值替代包含一个值URI和一个词汇编码方案URI

示例19:语法编码方案URI

@前缀页面:。@prefix dcterms: 。@prefix xs: 。Description set (Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:modified) ValueString ("2006-02-14") SyntaxEncodingSchemeURI (xs:date))))) . xml

4.6非文字值描述

A.描述组可能包含多个描述,每个由一个描述(内容)句法结构。结构的顺序没有意义。

例20:多个描述

@前缀页: . @前缀dcterms: . @前缀foaf: . descriptionStart(Description(Description)(ResourceURI(page:home)语句(PropertyURI(dcterms:subject)ValueString(“元数据”))Description(Statement(PropertyURI(foaf:name))LiteralValueString(“都柏林核心™ 元数据倡议)

A.资源被称为non-literal价值在一个声明在一个描述可能是资源描述另一个描述描述集。如果为该资源分配了一个URI,则该URI在该资源的描述中被称为非文字值和描述资源URI,如下所示:

示例21:描述资源的非文字值

@前缀页面:。@prefix agent: 。@prefix dcterms: 。@prefix foaf: 。描述集(描述(ResourceURI (page:home) Statement (PropertyURI (dcterms:creator) ValueURI (agent:DCMI)) Description (ResourceURI (agent:DCMI)) Statement (PropertyURI (foaf:name) LiteralValueString ("Dublin Core™Metadata Initiative"))))

在某些情况下资源将没有分配URI,或者该URI是未知的。这样一个资源可能仍然是一个被称为non-literal价值在一个声明在一个描述资源描述另一个描述在相同的描述组

在DC-Text中,之间的关联声明首先描述第二个呢描述是通过使用资源它是DC文本实例的本地实例。此本地标识符用于ValueId (id)一个或多个句子中的句法结构声明()构造的资源被称为non-literal价值,在一个ResourceId (id)构建在一个描述()构造,其资源为资源描述.a的内容ValueId (id)结构的内容必须匹配ResourceId (id)在同一个DC-Text实例中构造。

注意,这是一种将引用链接到的语法机制语句描述这些:本地标识符本身不会出现在描述组

示例23:描述资源的非文字值

@前缀页面:。@prefix agent: 。@prefix dcterms: 。@prefix foaf: 。描述集(Description (ResourceURI (page:home) Statement (PropertyURI (dcterms:creator) ValueId (agentDCMI)) Description (ResourceId (agentDCMI) Statement (PropertyURI (foaf:name) LiteralValueString ("Dublin Core™Metadata Initiative"))))

参考文献

[DCAM]
DCMI抽象模型DCMI推荐标准。2007-06-04
//www.voudr.com/specifications/dublin-core/abstract-model/2007-06-04/

[URI]
Berners-Lee, T., R. Fielding, L. Masinter。统一资源标识符(URI):通用语法。Internet工程任务组(IETF)。2005年1月。
<http://www.ietf.org/rfc/rfc3986.txt>

对本文档的更改

2008-01-14。删除的注释说:截至2007年12月03日,a提议“复制”的15个属性http://purl.org/dc/elements/1.1/("dc:")命名空间http://purl.org/dc/terms/(“dcterms:”)名称空间未被批准或实现。在此批准之前,本协议中提到的dcterms:subject和dcterms:title等名称应被理解为具有“拟议”状态。

2008-03-31。将例14,15,16和17的标题从“文字值代理…”改为“非文字值代理…”。删除配置文件URI。