元数据设计,实施和最佳实践的创新

使用资源描述框架(RDF)表达Dublin Core™元数据

创作者: Mikael Nilsson.
KMR集团,NADA,瑞典皇家理工学院
安迪•鲍威尔
Eduserv基金会、英国
皮特约翰斯顿
Eduserv基金会、英国
Ambjörn_naeve.
KMR集团,NADA,瑞典皇家理工学院
发行日期: 2008-01-14
最新版本: //www.voudr.com/specifications/dublin-core/dc-rdf/
发布历史: //www.voudr.com/specifications/dublin-core/dc-rdf/release_history/
描述: 本文档提供了使用RDF(资源描述框架)表达都柏林核心元数据的建议。

目录

  1. 介绍
  2. RDF概念模型的概述
  3. 名称的缩写
  4. 代表使用RDF模型的DCAM构造
  5. 语义上的一些注意事项

>致谢>附录A:示例


1.介绍

本文档提供了使用RDF(资源描述框架)表达DC元数据的建议。它通过描述如何使用RDF模型(或抽象语法)表示DCMI抽象模型[Abstract - Model]的特性来实现这一点,这是由RDF概念和抽象语法规范[RDF- Concepts]定义的。它并不依赖于任何特定的RDF语法编码,虽然例子使用RDF / XML语法规范(RDF-SYNTAX-GRAMMAR)提供在附录a。这允许™都柏林核心元数据被编码在任何使用本规范RDF编码语法或其他RDF表示系统,例如RDF数据库。

本建议取代下列DCMI文件:

  • 在RDF / XML中表达Qualified Dublin Core™[DCQ-RDF-XML],从2002年5月开始的DCMI建议。本建议使下列DCMI文档作废(但不自相矛盾):

  • 在RDF / XML中表达简单的Dublin Core™[DCMES-XML.,是2002年7月的DCMI推荐标准。

文档“Dublin Core™RDF元数据的DCMI规范注释”[DC-RDF-NOTES]更详细地描述了该草案如何与先前的规范相关联。

本文档中的许多示例都使用了DCMI元数据术语[DCMI- terms]。另请参阅DCMI条款的DCMI RDF模式[DCMI-Schemas]。

2.RDF概念模型的概述

RDF概念模型在RDF概念和抽象语法规范[RDF-概念]中指定。它是一个相对简单的模型,包括以下基本面:

  • RDF图是RDF三元组的集合

  • RDF三元组有三个组成部分:

    • RDF主题,它是RDF URI引用或空白RDF节点

    • 一个RDF谓词,即RDF URI参考

    • 一个RDF对象,它是一个RDF URI引用、一个空白RDF节点或RDF文字

  • RDF文字可以是两种:

    • RDF纯文字是一个带有可选的相关语言标记的字符串,该标记描述字符串的语言

    • RDF键入的文字是具有关联的RDF数据类型URI的字符串。RDF数据类型定义了一组字符串的语法和语义,其表示诸如布尔值,整数,日期等的数据。这些RDF三元组连接到RDF图中,从而可以是一个RDF三联的非文字RDF对象另一个三倍的RDF主题。

我们将使用图表来说明RDF图形(对于命名空间缩写,请参阅第3节)。在下图中,一个简单的三倍可能看起来像:

RDF三例“src=
RDF三重的结构。在此图中,RDF对象是RDF类型的文字

虽然由三个三元组成的图表可能如下所示:

RDF图“src=
由三个三元组组成的RDF图,通过一个空白RDF节点连接。

有关RDF的更多信息,请参阅RDF概念和抽象语法规范[RDF-概念],RDF词汇描述语言[RDF-Schema],以及http://www.w3.org/RDF/

3.命名空间缩写

以下名称空间缩写将在本文档中使用:

名称缩写 完整名称空间Uri.
DC. http://purl.org/dc/elements/1.1/
使用dc http://purl.org/dc/terms/
dcam http://purl.org/dc/dcam/
RDF. http://www.w3.org/1999/02/22-rdf-syntax-ns#
xsd
http://www.w3.org/2001/XMLSchema#
前女友 http://www.example.org/ns#(一个例子名称空间)

另请参阅DCMI条款的DCMI RDF模式[DCMI-Schemas]。

4.使用RDF模型表示DCAM构造

本节描述DCAM中的每个构造如何用RDF表示。这里使用的RDF概念是在RDF概念和抽象语法规范[RDF- Concepts]和RDF词汇描述语言[RDF- schema]中定义的。

4.1描述与资源

DCAM描述和资源的表示方式如下:

  • 一个DCAM描述使用源自单个RDF主题的RDF图表示。
  • DCAM描述的资源由RDF图的根处的RDF主题表示。
  • 如果一个DCAM描述资源URI.,它应该用作RDF图根处的RDF主题的RDF URI引用。否则,RDF主题应该是一个空白的RDF节点。语法可以选择使用匿名标识符(例如rdf:nodeID构造)来实现这一点。

4.2语句,属性和值

一个DCAM声明使用RDF三重组成:

  • 一个代表DCAM资源的RDF主题
  • 一个RDF谓词,即DCAMURI属性
  • 对应于DCAM值代理的RDF对象。下面将把这个RDF节点称为值RDF节点

4.3非文字价值代理人

当DCAM值代理是非文字值代理时,值RDF节点是RDF URI文法或空白RDF节点,其特征在下面给出。

下图说明了非文字值代理的RDF表示的主要特性。

直流文本表示 RDF图
@prefix dcterms:
@ prefix:交货< http://www.example.org/ns >。

描述项(
描述 (
资源uri ()
陈述 (
PropertyURI (dcterms:subject)
Valyuri(
VocabularyEncodingschemeuri(例如:ImpliceUbjects)
估值(“生物学”
语言(“en”)

ValueString(“EA32”
syntaxEncodingSchemeURI(例如:SubjectEncoding)



RDF示例图“src=
在非文字值代理的情况下,DCAM构造的表示。
符号“@en”表示RDF语言标记,而“^^ex:SubjectEncoding”表示RDF数据类型。

4.4价值uri

一个DCAM价值URI.使用?的RDF URI引用表示值RDF节点.如果没有给出任何值URI,则值RDF节点是空白节点。

4.5词汇编码方案URI

一个DCAM词汇编码方案URI使用RDF三重组成:

  • 一个rdf主题是值RDF节点

  • 一个RDF谓词,它是RDF URI引用DCAM:会员

  • 一个RDF对象,其对应的RDF URI引用是DCAM词汇表编码模式URI

4.6值字符串、值字符串语言和语法编码方案uri

一个DCAM值字符串使用RDF TripleComprising表示:

  • 一个rdf主题是值RDF节点

  • 一个RDF谓词,即RDF URI参考资料`RDF:价值

  • 一个RDF对象,即RDF文字节点`(RDF普通文字或RDF键入的文字),包含DCAM值字符串。

使用与此RDF三重的RDF对象相关联的语言标记表示DCAM _Value字符串语言。语言标记由RFC-3066定义,标准化为小写。

一个DCAM语法编码方案URI使用RDF数据类型URI表示,URI与作为此RDF三元组的RDF对象出现的RDF类型化文字相关联。

4.7字面价值代理人

当DCAM值代理是一个字面值代理时,值RDF节点是RDF文字节点,具有与上面的DCAM值字符串的情况完全相同的特性。

下面的图表说明了文字值代理的RDF表示的主要特性。

直流文本表示 RDF图
@prefix dcterms:

描述项(
描述 (
资源uri ()
陈述 (
职物职物业(DCTERMS:标题)
littlealvaluestring(“学习生物学”
语言(“en”)



RDF文字值“src=
对于带有语言标记的文字值代理,DCAM构造的表示。
符号“@en”表示RDF语言标记。

下图演示了第二种情况,使用RDF类型化文字:

直流文本表示 RDF图
@prefix xsd:<http://www.w3.org/2001/xmlschema.>。
@prefix前:

描述项(
描述 (
ResourceUri(
陈述 (
楼毛(前:年龄)
LiteralValueString(“43”
SyntaxEncodingSchemeURI (xsd:int)



RDF输入文字“src=
在具有语法编码模式URI的字面值代理的情况下,DCAM构造的表示。
符号
"^^xsd:int"表示RDF数据类型。

4.8描述集

一个DCAM描述集表示RDF GraphThat包括如上所述的一个或多个DCAM描述。

4.9描述的值

DCAM值可以在同一个DCAM描述集中的单独DCAM描述中进一步描述。这是通过让值RDF节点作为表示值的DCAM描述中的任何DCAM语句的RDF图的根来表示的。因此,值RDF节点将是表示值的DCAM描述的一组三元组的RDF主题。

5.关于语义的一些注意事项

5.1 RDF语义和DCMI抽象模型

DCMI抽象模型的RDF表达式在DCMI编码规范中具有特殊状态。由于介绍DCMI摘要模型的语义基​​于RDF中的相应概念的语义(如[RDF-Semantics]所定义),RDF表达式保留DCAM的任何语义是基本的重要性。此外,在解释DCMI抽象模型的解释时,可以使用RDF语义进行的任何有效推论。这些要求尚未正式化,但被认为是合理的,并且相对简单。在其他事情之外,配制它们需要定义从RDF到DCMI抽象模型的反向映射。

5.2价值课程

可以通过几种方式推断出一个值的类或类型:

  • 使用相应属性的范围。例如,如果属性的范围前:所有者例:人,则可以推断前:所有者属性类型为例:人

  • 使用一个显式的RDF:类型声明的价值。例如,如果资源具有该属性RDF:类型有价值例:人,可以推断出该类型的值例:人

  • 从应用程序上下文中使用知识。例如,应用程序可能知道它只管理类型的re例:书,即使这不是元数据本身的一部分。

建议RDF应用程序使用显式RDF:类型三元组,即使这意味着创建值的单独DCAM描述。

物业使用dc:类型有相似的语义学吗RDF:类型.在撰写本文时,这些属性之间的确切关系仍未确定。
建议利用实施本规范的RDF应用主要使用和理解RDF:类型代替使用dc:类型当在RDF中表达Dublin Core™元数据时,大多数RDF处理器都有内置知识RDF:类型

参考文献

抽象模型
DCMI抽象模型
<//www.voudr.com/specifications/dublin-core/abstract-model/>
DC-RDF-NOTES
关于RDF的Dublin Core™元数据DCMI规范的注意事项
<//www.voudr.com/specifications/dublin-core/dc-rdf-notes/2008-01-14/>
DCMES-XML.
用RDF/XML表示Simple Dublin Core™
<//www.voudr.com/specifications/dublin-core/dcmes-xml/>
DCQ-RDF-XML
在RDF / XML中表达合格的Dublin Core™
<//www.voudr.com/specifications/dublin-core/dcq-rdf-xml/>
DCMI-术语
DCMI元数据术语
<//www.voudr.com/specifications/dublin-core/dcmi -terms/>
DCMI-Schemas.
DCMI学期在RDF架构语言中表示的声明
<//www.voudr.com/schemas/rdfs/>
DC-TEXT
DC-TEXT: Dublin Core™元数据的文本语法
<//www.voudr.com/specifications/dublin-core/dc-text/>
rdf概念
资源描述框架(RDF):概念和抽象语法
<http://www.w3.org/TR/rdf-concepts/>
RDF-Schema.
RDF词汇描述语言1.0:RDF架构
<http://www.w3.org/TR/rdf-schema/>
RDF验证器
W3C RDF验证服务
<http://www.w3.org/rdf/validator/>
RDF-SYNTAX-GRAMMAR
RDF/XML语法规范(修订)
<http://www.w3.org/TR/rdf-syntax-grammar/>
RDF语义
RDF语义
<http://www.w3.org/tr/rdf-mt/>

致谢

感谢Tom Baker,DC使用情况的成员和DC架构工作组的成员有关此文档的先前版本的评论。

附录A:例子

以下示例使用DC-Text Syntax [DC-Text]来描述Dublin Core™元数据的示例。然后使用RDF / XML语法[RDF-SYNTAX-GRAMMAR]呈现相应的RDF图。假设熟悉“条带”RDF / XML语法。W3C RDF验证器[RDF验证器]服务可用于将这些RDF / XML样本转换为Triples和图形。

描述 直流文本表示 RDF / XML表示
具有单个语句的描述,它使用值URI来标识该值。

“资源http://example.org/123.主体是否被URI标识http://example.org/taxonomy/d003.53..“
@prefix dcterms:

描述项(
描述 (
资源uri ()
陈述 (
PropertyURI (dcterms:subject)



http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”>

< rdf:描述rdf: about = " http://example.org/123 " >

> < / rdf:描述

使用单个值字符串和词汇编码方案的单个语句的描述来描述该值。

“资源http://example.org/123.是否从词汇编码方案中命名为“ornitology”的主题http://example.org/taxonomy/myvocab.
@prefix dcterms:
@prefix ex:

描述项(
描述 (
资源uri ()
陈述 (
PropertyURI (dcterms:subject)
VocabularyEncodingschemeuri(前:Myvocab)
赋价(“ornitology”)


http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”
xmlns:前任= " http://example.org/taxonomy/ "
xmlns: dcam = " http://purl.org/dc/dcam/ " >

< rdf:描述rdf: about = " http://example.org/123 " >
<使用dc:主题>
< rdf:描述>
< dcam: memberOf rdf: resource = " http://example.org/taxonomy/MyVocab " / >
< rdf:价值> Ornitology > < / rdf:价值
> < / rdf:描述
> < /使用dc:主题
> < / rdf:描述

具有单个语句的描述,它使用语言标记的文字值。

“资源http://example.org/123.英文标题为“学习生物学”。
@prefix dcterms:

描述项(
描述 (
资源uri ()
陈述 (
职物职物业(DCTERMS:标题)
littlealvaluestring(“学习生物学”
语言(“en”)



http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”>

< rdf:描述rdf: about = " http://example.org/123 " >
<使用dc:标题xml: lang =“en”>学习生物学< /使用dc:名称>
> < / rdf:描述

带有单个语句的描述,使用带有语法编码模式的文字值。

“资源http://example.org/person123.有43岁
@prefix dcterms:
@prefix前:
@ prefix xsd: < http://www.w3.org/2001/XMLSchema>。

描述项(
描述 (
ResourceUri(
陈述 (
楼毛(前:年龄)
LiteralValueString(“43”
SyntaxEncodingSchemeURI (xsd:int)



http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”
XMLNS:EX =“http://example.org/ns#”>


<例:年龄rdf:数据类型= "http://www.w3.org/2001/xmlschema.int.“>
43
> < / rdf:描述

使用单个语句的描述,它使用两个值字符串,一个语言标记的语言,以及使用语法编码方案,该值的词汇表编码方案和标识值的值URI。

“资源http://example.org/123.是否具有词汇编码方案的主题http://example.org/taxonomy/myvocab.根据语法编码方案,以瑞典语中的英文和“Biologi”命名为“生物学”和“Biologi”http://example.org/taxonomy/SubjectEncoding,它是由URI识别的http://example.org/subject32.
@prefix dcterms:
@prefix ex:

描述项(
描述 (
资源uri ()
陈述 (
PropertyURI (dcterms:subject)
Valyuri(
VocabularyEncodingschemeuri(例如:ImpliceUbjects)
估值(“生物学”
语言(“en”)

估值(“Biologi”
语言(“SV”)

ValueString(“EA32”
SyntaxencodingsChemeuri(例如:受体码)



http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”
xmlns:前任= " http://example.org/taxonomy/ "
xmlns: dcam = " http://purl.org/dc/dcam/ " >

< rdf:描述rdf: about = " http://example.org/123 " >
<使用dc:主题>
< rdf:描述rdf: about = " http://example.org/subject32 " >
rdf: resource = " http://example.org/taxonomy/ExampleSubjects " / >
生物学
BioloLi
< rdf:价值
RDF:DataType =“http://example.org/taxonomy/subjectencoding“>
EA32
> < / rdf:描述
> < /使用dc:主题
> < / rdf:描述

具有单个语句的描述,它使用单个值字符串和值URI以及值的描述。该值的描述具有两个语句,每个语句只有一个值URI。

“资源http://example.org/123.创造者被确定了吗http://example.org/person45.,由字符串“John Smith”表示。资源http://example.org/person45.有电话号码的人是否被识别电话:+ 358-555-1234567(见RFC 3966)。“
@prefix dcterms:
@prefix faaf:<http://xmlns.com/foaf/0.1//>。

描述项(
描述 (
资源uri ()
陈述 (
楼盘(DCTerms:Creator)
Valyuri(
ValueString(“John Smith”)



描述 (
资源uri ()
陈述 (
(foaf:phone)
Valyuri(

陈述 (
楼毛(DCTERMS:类型)
ValueURI (foaf:人)


http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”
XMLNS:FOAF =“http://xmlns.com/foaf/0.1//“>

< rdf:描述rdf: about = " http://example.org/123 " >
<使用dc:创造者>
< foaf:人rdf: = " http://example.org/person45 " >
约翰。史密斯< rdf:价值> < / rdf:值>
< foaf:电话rdf:资源= "电话:+ 358-555-1234567 " / >


> < / rdf:描述

带有单个语句的描述,该语句使用值URI但不使用所描述的资源URI。

所描述的资源具有由URI标识的主题http://example.org/taxonomy/d003.53..“
@prefix dcterms:

描述项(
描述 (
陈述 (
PropertyURI (dcterms:subject)



http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”>

< rdf:描述>

> < / rdf:描述

具有单个语句的描述,它使用值字符串,但没有值URI。值的描述没有描述的资源URI,但具有两个语句,两者都使用值URI。

“资源http://example.org/123.有一个由字符串“John Smith”代表的创造者。创作者有电话号码的人是否被识别电话:+ 358-555-1234567(见RFC 3966)。“
@prefix dcterms:
@prefix faaf:<http://xmlns.com/foaf/0.1//>。

描述项(
描述 (
陈述 (
楼盘(DCTerms:Creator)
ValueId ("john")
ValueString(“John Smith”)



描述 (
Resoresid(“John”)
陈述 (
(foaf:phone)
Valyuri(

陈述 (
楼毛(DCTERMS:类型)
ValueURI (foaf:人)


http://www.w3.org/1999/02/22-rdf-syntax-ns#
XMLNS:dcterms =“http://purl.org/dc/terms/”
XMLNS:FOAF =“http://xmlns.com/foaf/0.1//

< rdf:描述>
<使用dc:创造者>

约翰。史密斯< rdf:价值> < / rdf:值>
< foaf:电话rdf:资源= "电话:+ 358-555-1234567 " / >


> < / rdf:描述

errata 2010-06-21。在附录A,第五示例中,在@Prefix前后添加缺失点:DC-Text示例中的声明。在第六示例中,将关闭括号添加到RDF:RDF元素。