点击蓝字 关注我们
引言
在数字保存领域,数据的有效交换一直是关键议题。当前有METS、BagIt等数字保存系统间内容交互标准,涵盖数字对象描述和传输、内容交换和存储等使用场景。然而这些标准在应对迁移数字内容的复杂性、处理复杂数字对象以及涉及深层次和广范围的数据结构时,仍存在一定的局限性。本文为大家介绍Preservica公司研发的两种数字保存内容传输格式:开放保存交换(OPEX)格式和保存资产交换(PAX)格式。
格式的目的(Purpose of the Formats)
在信息迁移过程中,无论是将信息导入保存系统、从保存系统中提取信息以供访问,还是在平台变更时在不同保存系统之间转移信息,都需要专门的协议来确保所需信息的完整传输。开放保存交换(OPEX)包格式旨在传输结构化的数字保存内容,可以在OPEX元数据文件中选择性地包含描述性元数据和传输验证信息(如清单和校验)。它采用“按需定义”的方式来定义数据包,使档案管理员可以选择对其重要(或可获得)的保存元数据内容。要传输的内容可能是很简单的单个文件,也可能是很复杂的具有特定结构的多个文件。保存资产交换(PAX)格式是这些复杂或多部分资产的可传输表示形式。这可以是由多部分表示中的多个文件组成的单个逻辑资产,或是经过迁移的具有多代内容或多种表示形式的资产,也可能是这些场景的组合。这使得在传输已经历过某些数字保存处理的内容时,不仅能保留当前状态,还能保留内容如何达到该状态的过程。
原则和使用场景(Principles and Use Cases)
Preservica是一家商业规模的软件即服务(SaaS)提供商,基于一些原则和使用场景设计了OPEX和PAX格式。因为Preservica的客户有在系统之间传输大量内容的业务需求:通常是将内容传输至Preservica系统,但有时也需要与其他系统对接,并且还需要从Preservica系统中导出已保存的内容。
3.1核心原则(Principles)
核心原则包括:
• 用户只需要指定与其相关或可获得的信息,因此对于较简单的使用场景,他们可以只提供所需的信息。在OPEX中,除了内容本身外,其他所有内容都是可选的。
• 内容应该支持模块化传输,即允许将部分结构从父级结构中分离并独立使用。
3.2使用场景(Use cases)
这使得系统之间或系统内的传输可以实现一些关键使用场景。
将内容链接到来源(Link Content to Source)
目标系统中的内容可能需要与源系统建立关联。当内容从现有的内容管理系统(如 Microsoft SharePoint)“收集”或从一个保存系统传输到另一个保存系统时,原始位置是其背景的重要组成部分,以便中期访问。
同一来源也应该能够被多次“收集”,同时系统应能够检测出已经传输过的内容。这种方式使得传输可以以幂等的方式完成,减少了传输管理器对目标系统状态进行跟踪的需求。这种机制尤其适用于从传输速度较慢或传输可能失败的源系统向保存系统传输内容的情况,因为在这种情况下,可能需要多次重试内容收集过程。
复杂资产(Complex Assets)
系统之间应该能够传输复杂的资产(包括多部分、多种表示形式和标准化的资产)。有两个主要的使用场景对此尤为重要:
增量处理Incremental processing
灵活的元数据(Flexible Metadata)
与现有标准的比较(Comparison with Existing Standards)
为什么需要另一个用于包裹和资产转移的标准?此部分评估了一些现有的标准,并解释了它们为什么没有涵盖所有的使用场景。这并不说明这些格式有问题,而是它们没有满足OPEX的目的。
4.1 BagIt
BagIt是一个内容打包格式,其中数据包(或“数据袋”)由内容文件、清单和校验信息组成。它是一个很好的内容打包格式,数字保存系统可以使用它以接收新内容。
然而,它缺少一些对数据传输和数字保存信息来说很重要的方面:
源系统中内容的标识(OPEX中的元素)。数据包本身可以在bag-info.txt文件中以External-Identifier记录这一关联,但不能在每个文件基础上记录这些信息。
清单是最高一级的单独文件,这就意味着,如果在流程开始时不知道将包含哪些内容,就无法向下逐步创建内容。
有关复杂资产的信息。虽然数据包内的有效载荷文件可以是打包(如ZIP格式)的PAX,但如何解析该文件将取决于保存系统。
资产的描述性元数据以及资产保存行为的历史记录。
4.2 牛津通用文件布局Oxford Common File Layout (OCFL)
牛津通用文件布局(OCFL)是一种以存储为重点的内容打包格式,该格式的数据包由“对象”组成,包括内容、校验信息以及可选的描述性元数据。OCFL对象包含固定性信息。在OCFL的内容目录中,每个对象可以包含多份文件,对应代表多部分资产。
内容可能有多个版本,这可以用来记录规范化(在Preservica数据模型中创建新“版本”)。然而,OCFL中版本的预期使用方法与Preservica对内容版本的理解并不完全一致:
OCFL版本可以用于(并且在它们的示例中用于)更改对象的语义内容,例如,添加或删除文件。在保存(而不是存储)语境中,这不再是同一个对象。
OCFL版本适用于整个对象,即使数据迁移只应用于复杂资产的一部分。
OCFL 没有办法对具有多种表现形式(即保存内容和访问副本)或具有复杂描述性元数据的资产进行编码。
像BagIt一样,清单(“目录”)是顶层的一个单独文件,这就意味着,如果在流程开始时不知道将包含哪些内容,就无法逐步创建内容。
虽然OCFL可以用于“计算机对计算机”的传输,但它最常用于存储内容。OCFL有许多强制性元素和固定结构,这使得构建用于收集的数据包很不方便。一个最小的OCFL数据包也有很多附加文件,因此需要工具来创建和管理内容。虽然OPEX也可以这样使用,但它更适合较简单的使用场景。
4.3 E-Ark 通用规范(E-Ark Common Specification)
这是OAIS背景下信息包的技术规范,并由相关的SIP、AIP和DIP等相关规范扩展。它完全是[JO1]以资产为核心,并包含对多部分资产有用的信息,包括描述性元数据、多种呈现形式和PREMIS保存元数据(即关于内容中文件的技术元数据)。
它对内容迁移(Preservica/XIP 数据模型中的多代)信息没有很好的支持。
它更适用于需要保持完整性的单一内容包,这样,接收的SIP就会与随后检索的DIP相关联。事实上,E-Ark定义了扩展功能,以协助管理内容包在OAIS全生命周期中的完整流转过程——从提交信息包(SIP)到归档信息包(AIP),再到分发信息包(DIP)。
与OCFL类似,该格式同样具有严格的规范要求,需要大量固定模板内容以及数据包与内容文件之间复杂的内部交叉引用。因此,虽然它适用于保存系统之间的数据传输,但在处理较简单的数据收集用例时显得不够便利。与其他两种数据包格式相同,其清单文件采用单一文件形式,这意味着很难实现内容的增量提交。
4.4 元数据编码和传输标准Metadata Encoding and Transmission Standard (METS)
METS 是一种以元数据和内容为重点的标准,它使用单一的数据包文件来指定数字对象的元数据和内容位置。
元数据被分成“描述性”和“管理性”两部分,但在这两种情况下都可以在任意模式中添加片段,并关联到对象。
METS可以分成多个部分,顶层的METS包定义结构,并(用 元素)关联到数据包中的较小 METS 文件。这就很好地解决了“数据包的一部分是一个有效数据包”的场景。
“文件组”(元素)的概念,以及允许将多个文件关联到结构图中的一个分区(元素),在一定程度上有助于对保存信息进行编码。
在现有标准中,METS最接近于第二节中的使用场景。事实上,Preservica允许以METS包的形式传输到系统中。不过,如果将其作为一种通用的保存内容传输格式,它还存在一些问题:
示例建议使用多文件对象(即从关联的多个文件),该示例将此功能用于同一内容的多个“版本”(PREMIS或Preservica术语中的“表示”)。这就使得在同一“表示”中使用该功能对多个文件进行编码——这是PAX在数字化背景下的主要用途之一——与METS的其他用途不一致。描述性元数据与文件(而不是文件组)相关联,这也表明这种用法并非其本意。
METS元素与保存信息(Preservica的代)之间没有明确的映射关系。从保存的角度看,METS针对的是新内容,而不是在保存系统中处理后的被保存内容。
METS本身是一个非常宽松的模式,包括“配置文件”的概念,这些配置文件定义了机构的特定使用场景。METS文档结构极其灵活;然而,这种灵活性可能带来问题,因为开发能够处理任意 METS文档的软件并非一项简单的任务。每个使用 METS 的机构都必须选择或创建一个配置文件,定义其使用场景中哪些是有效的,哪些是无效的,这使得它难以作为机构之间的传输格式。
最小的METS包也有METS XML文件自身最低级别的交叉引用,这会影响到最简单的使用场景。
4.5 Preservica XIP
Preservica还有一个现有标准:XIP(XML信息包)格式,在内部使用该格式,并且它与Preservica的数据模型完全匹配。XIP 包含了描述性元数据、复杂资产、迁移、固定性信息和其他保存资产方面的内容。然而,XIP 面临与上述两个开放标准相同的问题:它是一个完整的包格式,需要大量的模板代码并创建内部一致的 XML 文档,因此需要工具来生成。
格式说明
5.1 OPEX (开放式保存交换,Open Preservation Exchange)
OPEX软件包格式定义了目录和文件的排列,这些目录和文件可以被保存系统解释为内容和元数据。最简单的OPEX包仅仅是作为资产的内容文件和作为接受系统内结构的目录。内容文件可以是“简单”文件(例如图像或文档),也可以是打包的资产文件(即PAX ,见下文)。
对于大多数使用场景,我们还添加了带有.opex后缀的OPEX元数据文件,其中包含有关文件夹和目录的描述和传输信息。这些文件被放置在目录中或文件旁边,其名称可以链接到文件夹或文件(图1)。
图1:带有文件夹和资产文件的元数据文件的OPEX包的示例结构
5.1.1OPEX元数据XML格式(OPEX Metadata XML Format)
OPEX元数据文件有几个部分可以指定有关文件或文件夹的更多信息。它是一种基于XML的有几个可选部分的格式,总结如下。根据“按您所需”原则,OPEX元数据的所有部分都是可选的,如果用户不需要任何部分,该文件本身可能会被省略。
“属性”部分允许用户为资产或文件夹的基本描述性属性设置显式值(图2 )。
图2:OPEX元数据文件的属性部分
用户系统应推断出合理的默认属性值,例如与文件名相匹配的标题以及与标准用户级或母文件夹访问相匹配的安全描述符。
“传输”部分用于允许收集系统验证从导入系统中发送的内容是完全存在的,并且在传输过程中没有被更改。
对于资产和文件夹,都可能包含一个SourceID元素,该元素记录了其在源系统中的ID。在收集时,这可以选择性地用于防止重复收集;消费系统可以决定如何实施,例如Preservica允许用户不收集系统中任何已有的内容与正在摄入的文件夹中的内容。
对于资产,可以指定固定事项(图3 )。然后用户系统应该根据实际的文件内容来进行验证。
图3:OPEX元数据文件的传输部分,显示源系统中的ID和单个文件的多个固定值
对于文件夹,传递元数据可以包含该文件夹的直接子目录。在此情况下,用户系统应该只处理清单中列出的项目,如果转移过程完成而没有其中一些项目出现,则应该通知用户。图4显示了一个包含两个内容文件及其相关的OPEX文件和一个子文件夹的文件夹的完全案例:
图4:一个文件夹的OPEX元数据文档的传输部分,其中一个清单引用了更多的文件夹和资产
元素允许外部模式中的第三方元数据嵌入到OPEX文件中(图5 )。这些部分可以根据需求具有不同数量,并且每个部分都包含自己的XML文档。
图5:OPEX元数据文件中的描述性元数据。
Xml可以在任何模式中;在这种情况下,为都柏林核心历史部分允许传输对象在源系统中发生的审计记录,用户系统可以决定是否处理审计信息。
关系元素允许生产者指定系统中两个对象之间的关系,例如资产1是对资产2的回复,资产3是资产4的历史版本。用户系统可以决定在传输完成后是否尝试复制关系。
5.2 PAX (保存资产交换) PAX (Preservation Asset Exchange)
数字保存资产可能比单个内容文件更复杂。最明显的例子是创建为单个文件的内容。例如,文档、图像或视频。在保存期间,它可能会出于不同的目的迁移到新的格式。例如,可以通过流形传播将大型AVI视频文件迁移到压缩的MP4文件,或者将旧的WordPerfect文件迁移到最新的Microsoft Word格式进行编辑和一个PDF文件进行分发。
其他形式的信息可能需要多个文件来表示。例如,带有字幕的视频、带有结构化列数据和内容文件的SharePoint库记录,或者带有数据库记录、图像和视频的推文。这些单独的文件也可能被迁移,从而在资产中创建更多的文件。
PAX是一种用于在信息管理系统之间传输这些资产的格式,允许生产者告诉使用者“这组文件是单一资产”。它可以与开放保存交换(OPEX)文件结合使用,以允许将资产的元数据放置在OPEX文件中,该文件通过命名约定链接到PAX结构中保存的资产。
5.2.1OPEX元数据XML格式(OPEX Metadata XML Format)
-
非结构化文件的压缩文件(Compressed File with no Structure File) 在这种情况下,每个组件的含义都是从文件夹的名称中推断出来的。在指导用户系统时,文件夹或文件的字母数字顺序可能很重要,因为内容对象需要特定的顺序。PAX被压缩到一个asset.PAX.zip文件中。 非结构化文件的文件夹结构(Folder Structure with no Structure File)
PAX结构包含在本地文件夹结构而不是压缩文件中。在同一级别上有一个附带的OPEX元数据文件,表明这是一个资产文件夹,而不是一个常规文件夹。
-
使用一个结构化文件(Using a Structure File) 在这种形式中,使用XML文件来描述资产的内部结构,该XML文件告诉使用者结构中的每个文件的含义,例如哪个是原始文件,哪个是最新的保存主文件,哪个适合访问。这可以与压缩ZIP文件或上述文件夹结构方法一起使用。
5.2.2PAX何时适用(When is PAX Appropriate?)
PAX并不总是需要转移数字保存资产。当需要以下功能时,建议使用PAX:
(1)导出部分或全部完成格式转换的资产。
(2)导出XML文件夹中需要资产详细内部信息的资产
(3)嵌入在预接收阶段已迁移或在外部生成多个表示的资产。例如,生成详细和压缩图像的扫描过程。
(4)嵌入多元资产,如推文、数字化书籍或字幕视频。
5.2.3保护资产内部结构(Preservation Asset Internal Structure)
资产的内部结构赋予了数字保存系统力量。它允许单个信息在文件夹中显示为单个项目,并对内部用于不同目的的多个文件进行一组描述性元数据或访问控制。
PAX结构与简单和多部分资产的数据模型密切相关。
资产内部的顶层是“表示”。表示是对同一逻辑内容的不同“视图”。通常出于不同目的,最多会有两种表示:
-
保存:这是数字主信息集。它包含原始文件或嵌入的文件,也可能包含迁移但仍保留最佳质量的文件,这些文件尽可能接近原始嵌入内容。 -
访问:这可能是一个或多个为分发而创建的质量较低的文件。示例包括PDF、压缩或缩小的图像,或流式视频或音频。
每个表示都可以包含一个或多个“内容对象”。这些是构成资产的信息的基本构建块。在包含大多数情况的简单资产中。例如,文档、电子表格、图像和视频,每个表示只有一个内容对象。
在某些情况下,需要多个内容对象来表示资产信息。这些多部分资产包括3D对象、带字幕的视频、SharePoint记录(列表和库)、团队帖子、推文、多页扫描书籍和带附件的电子邮件。文件的组合可以被标识为“表示格式”,它允许保存系统验证软件包并提供渲染器。
当使用PAX传输您希望以特定表示格式标识的资产时,内容对象的顺序可能很重要。默认情况下,按文件名的字母数字顺序用于定义内容顺序,尽管结构文件可能会明确指定它。下文将对此进行进一步讨论。
对于每个内容对象,可能有几个“代”。当出于同样的目的将一种格式更改为另一种格式时,就会创建新一代。例如,将Word for Windows 95转换为Word for Windows 2013进行编辑,或将Lotus 123电子表格转换为Excel 2013。每一代通常都有一个保存在文件中的“比特流”。
5.2.4 非结构化文件的简单PAX(Example PAX with no structure file)
PAX嵌入最常用的格式是压缩的ZIP文件,其中包含一个模仿资产内部结构的文件夹层次结构。文件名为asset.pax.zip。默认情况下,资产标题将是文件名,但也可以在相关的OPEX元数据文件中定义。
顶层的文件夹名称是Representation_type(例如保存或访问)。它们可以选择在末尾有一个数字,以允许同一类型的多个表示,例如Representation_Access_2。
最简单的情况下,下一级可以是一组映射到内容文件的文件,例如,图6中的PAX将为每个文件创建一个内容对象。请注意,在这个例子中,只有当Tweet文件以字母数字开头时,表示形式才会被识别为Tweet,因此必须注意文件命名,例如用点作为“主”文件名称的开头:
图6:针对多部分内容的简单隐式PAX的的非结构化文件布局
这种PAX格式也将用于嵌入数字化过程中产生的保存和访问表示(图7):
图7:非结构化文件的多表示PAX的文件布局
图8:多表示PAX的文件布局,其中表示很复杂,在这种情况下是数字化书籍的多页图像
图9:包含保存信息的PAX的文件布局(多代)
5.2.5 OPEX中的资产文件夹(Asset Folders within OPEX)
如果将PAX结构压缩为单个文件太慢,它也可以是一个与上述压缩资产具有相同内部结构的文件夹(图10)。在OPEX内的文件夹旁边,必须有一个附带的OPEX元数据文件,以向OPEX处理器表明它是一个资产文件夹而不是一个常规文件夹。除此之外,所有相同的规则都像它被压缩一样都适用。
图10:资产文件夹中包含复杂(PAX)资产的OPEX包的文件布局。
资产的元数据与资产文件夹处于同一级别。
在这种情况下,OPEX元数据文件(图10中的DigitizedMovie_6621.pax.OPEX)可能包含一个传输元素,其中包含资产文件夹中所有文件的固定性信息(图11):
图11:在包含资产文件夹的文件夹的OPEX元数据文件中传输元素,显示了资产文件夹(PAX)中内容的路径和固定性。
5.2.6使用一个XML结构文件(Using an XML Structure File)
传输资产已明确其内部结构而不是从文件夹名称和文件顺序中隐含的最完整方法是包含一个明确给出对象详细信息和内容连接的结构文件。不同的数字保存系统可能接受不同形式的结构文件,但任何结构文件格式都应该允许用户覆盖上面描述的部分或全部隐式行为,特别是多部分表示中的内容顺序。结构文件应该有一个已知的扩展名来标识类型,并被放置在PAX的顶层。例如,Preservica接受并生成带有XIP结构文件的PAXes文件。
研究展望(Further Work)
目前,还没有一个明确的、通用的、供应商独立的PAX结构文件格式。Preservica使用XIP结构文件来处理PAX文件的输入和输出。我们建议采用一种通用的结构文件格式,文件扩展名为.paxstructure,其中XML结构与逻辑对象结构以及PAX文件中的文件夹结构保持一致(见图12、图13)。
图12:用于简单多部分表示的供应商独立PAX结构文件提案
图13:包含保存信息(多个代际)的PAX结构文件提案
这将使得不同保存系统之间的转移,或者内容生产者和消费者之间的转移变得可行,并确保对复杂或保存内容有一个共同的理解。
社区参与(Community Engagement)
Preservica 已经开发了OPEX和PAX的初始版本,以满足与其用户相关的使用场景。这些格式如今已经在实际的大规模应用中得到了广泛使用,尤其是在将内容传输到Preservica系统中(即数据收集)的过程中。
但是,Preservica始终希望OPEX的应用能超越仅仅与Preservica进行交互的范围。其他数字保存系统、内容创作者(例如数字化服务提供商)以及访问系统将受益于对如何在系统之间传输复杂或已保存内容的共同理解。
提议开展一个跨社区的研究与开发项目,类似于PAR项目,通过该项目,供应商和学术研究人员可以合作,确保传输标准能够解决社区中的关键应用场景。例如,上文中提到的独立于供应商的PAX结构文件提案,将作为该项目的一个输入。
在各种机构环境中创建能够轻松创建和上传OPEX和PAX内容的工具,将是该项目的一个关键方面。
结论(Conclusion)
评估现有的传输格式选项后,发现它们在处理复杂或保存内容的传输方面存在重要的适用性问题。因此,Preservica在设计OPEX和PAX的过程中纳入了这些使用场景,旨在创建一种面向保存的通用传输格式,该格式具有灵活性,可适用于多种场景。Preservica希望鼓励社区更广泛的参与和使用,以实现不同保存系统之间的内容传输,或从内容生产者向保存系统传输,特别是通过PAX的显式结构文件进行资产交换。
【引用格式】:Smith R, Tilbury J. OPEX and PAX: A Transfer Format for Digital Preservation Content[C]//iPRES 2024 Papers-International Conference on Digital Preservation. PubPub, 2024.
【网址】:https://ipres2024.pubpub.org/pub/ejkcz1hj/release/1
(本文内容为学生研究员自主翻译,仅供参考学习,文件原文请访问上述原文链接。)
【本期学生研究员风采】
潘洁敏
刘思良
毛宁
王元新
叶尔达纳
田国庆
樊华
卿非
翻译:潘洁敏、刘思良、毛宁、王元新、叶尔达纳(排名不分先后)
校对:田国庆 樊华
排版:卿非
审核:钱毅

