Ingest (CPP-029)

CPP-IdentifierCPP-029
CPP-LabelIngest
AuthorMikko Laukkanen, Johan Kylander
ContributorsBertrand Caron, Mattias Levlin
EvaluatorsFelix Burger, Maria Benauer, Kris Dekeyser
Change historyComments
Version 1.0.0 - 2025-08-29Milestone version
Version 1.1.0 - 2026-04-10Migration to XML

1. Description of the CPP

The TDA performs all operations necessary to transform an SIP into an AIP.

Inputs and outputs

Input(s)
Data
SIP
Metadata
Fixity metadata
Descriptive metadata
Provenance metadata (Optional)
Technical metadata (Optional)
Rights metadata (Optional)
Documentation/guidance
Packaging policy
Output(s)
Data
AIP
Metadata
Provenance metadata
Technical metadata
Rights metadata
Documentation/guidance
Packaging policy

Definition and scope

Ingest is a high-level CPP, that is composed of or utilised by many other CPPs, and refers to the process of acquiring and incorporating data into a TDA. In its most abstract form, Ingest describes the process in which a TDA receives a SIP and transforms it into one or several AIP(s) through a process that includes Data Quality Assessment (CPP-019). At the end of a successful ingest, the data is preserved in the TDA for future use.

The Ingest process begins with the transfer of digital Objects and Metadata from their source environment to the TDA in the form of a SIP. The digital preservation workflow triggered by the submission ensures that the data is properly prepared for long-term storage, discovery and access. The workflow ensures that essential Metadata about the creation, structure, and context (CPP-016 Metadata Ingest and Management) of the data exists. Fixity metadata that will be essential for future preservation actions must also exist before the data can be preserved. In addition, Technical metadata that could not be easily extracted (e.g. column delimiters for CSV, quality assessment for OCR, or EPUB Files etc.) from the Files by the TDA may be required to be supplied by the producer.

Data Quality Assessment (CPP-019) measures are integrated throughout the ingest workflow to catch potential issues early. This includes Virus Scanning (CPP-007), File Format Identification (CPP-008), Metadata Extraction (CPP-009) and File Format Validation (CPP-010), and completeness checks to ensure that the digital Objects are suitable for preservation. The TDA verifies that transferred Objects are complete and uncorrupted through Checksum Validation (CPP-002). The process also involves assessing whether the digital Objects conform to the repository's technical requirements and collection development policies. Depending on the TDA’s file format policy - preferred formats, Objects may also need to be normalised (CPP-026 File Normalisation) to preferred formats before or during the ingest process. During the ingest process, the TDA can generate additional Metadata and assign identifiers (CPP-005 Identifier Management) to support Enabling Discovery (CPP-024); perform Enabling Access (CPP-025) for cataloging purposes; and generate Provenance metadata that documents the transfer and processing history of the Objects. In order to evaluate the SIP and its contents, the TDA ensures that the SIP structure is valid and that the SIP is not incomplete (i.e. all Objects and Metadata are present).

SIPs that conform to the TDAs requirements and policies are transformed into AIPs which are sent to preservation in the archival storage of a TDA. SIPs that do not conform to the TDAs requirements will be handled according to its policies (in particular, file format policy and validation policy). The TDA can either reject the submitted data, ask the producer to address the issues before proceeding, flag the data as problematic and ingest it as it is, or perform an operation to address the identified issues.

Process description

Trigger event(s)

Trigger EventCPP-identifier
Submission of data to a TDA

Step-by-step description

NoSupplierInputStepsOutputCustomer
 sequence
1CPP-008 (File Format Identification)
CPP-009 (Metadata Extraction)
CPP-005 (Identifier Management)
Digital ObjectsMetadata provided by the producerPre-ingest actions (normalisation, metadata generation, identifier generation etc.) and SIP creation performed by the producerSIPCPP-005 (Identifier Management)
2SIPSubmission of data to a TDA (SIP transfer)
3SIPIdentify whether the SIP is meant to create a new AIP or is intended to update one or several AIPs E.g. If the SIP has a Producer identifier that already corresponds to an AIP ingested in the system, proceed with the processUpdating requestCPP-021 (AIP Versioning)
4SIPEnsure that the SIP structure conforms to the requirements and that its contents are not missingValid and complete SIP
Packaging Policy
5CPP-002 (Checksum Validation)Files in the SIPPerform checksum validation on each File in the SIPInformation package with fixity checked
6CPP-019 (Data Quality Assessment)Quality assessment reportQuality assessment (ensuring that the submitted data conforms to requirements set by the TDA)Information package with assessed quality
SIPResult of the quality assessment recorded as Provenance metadata
7CPP-008 (File Format Identification)
CPP-009 (Metadata Extraction)
CPP-007 (Virus Scanning)
SIPPerform File Format Identification, Metadata Extraction, and Virus ScanningTechnical metadata
Provenance metadata
8CPP-010 (File Format Validation)Format policy - ValidationFiles in the SIP Optional: Perform Format Validation if the TDAs format policy states that validation must be performedTechnical metadata
Provenance metadata
9CPP-020 (Rights Management)Objects in the SIPRights assessmentPerform rights assessment on Objects contained in the SIPRights metadata
10CPP-016 (Metadata Ingest and Management)Metadata provided by the producerTechnical metadataProvenance metadataRights metadataRecord the Metadata provided by the producer and produced by the TDA according to the TDAs SIP requirements and policy of automatic enrichment of SIP MetadataInformation package with Metadata recorded
11CPP-005 (Identifier Management)IdentifierAssign identifier to the Information packageInformation package with Identifier assigned
12CPP-026 (File Normalisation)Files in the SIPOptional: Only if the TDA supports normalisation during ingest:Normalisation of data, including documenting the actionsNew Representations in a supported format
Provenance metadata
13CPP-028 (Creation of Derivatives)Files in the SIP Optional: Only if the TDA supports creating derivatives during ingest:Generation of derivativesNew additional Representations
14 alternative
14.a sequence
14.a.1Information package with fixity checked, identifier assigned, quality assessed, Metadata recorded and optionally new Representations addedIf SIP conforms to the requirements (steps 7a and 7b): SIP transformation to AIPAIP
14.a.2AIPMove the AIP to the archival storageAIP on multiple locationsCPP-011 (Replication)
14.bError-handling policies (in particular file format policy and validation policy)If SIP doesn’t conform to the requirements, perform one of these actions: (a) Rejection of SIP; (b) Request the producer to address the issues; (c) Flag the data as problematic and ingest it as it is; (d) Perform an operation to address the identified issues. Error report to the submitter of the SIP (producer)
Trigger technical analysis
15Notification / report to the producer about the outcome of the ingestIngest report

Rationale(s) and worst case(s)

RationaleImpact of inaction or failure of the process
Ingest transfers the responsibility from the creator/owner/depositor of the digital Objects to the TDA, enabling long-term preservation, discovery and access to the digital Objects. Also, the ingest process captures the Objects’ state at the time of transfer through checksums, metadata extraction, and documentation of the transfer process itself. This creates an auditable trail that supports future authenticity claims and helps detect any corruption or unauthorised modifications that may occur over time. The digital Objects remain vulnerable to loss, corruption, or unauthorised changes in their original environment. Furthermore, Objects in their original environments are often stored in formats, structures, or contexts that are not optimal for long-term preservation.

2. Dependencies and relationships with other CPPs

Dependencies

CPP-IDCPP-TitleRelationship description
CPP-002Checksum ValidationMust be performed during ingest.
CPP-005Identifier ManagementMust be performed during ingest.
CPP-007Virus ScanningMust be performed during ingest.
CPP-008File Format IdentificationMust be performed during ingest.
CPP-009Metadata ExtractionMust be performed during ingest.
CPP-020Rights Management Some minimal rights assessment must be performed during ingest to verify that the TDA should be in charge of preserving the content of the SIP.
CPP-016Metadata Ingest and Management The ingest process produces Technical, Rights and Provenance metadata that are recorded in the Information package and digital archive database by Metadata Ingest and Management.

Other relations

RelationCPP-IDCPP-TitleRelationship description
May requireCPP-010File Format Validation A TDA may validate the format of the submitted Files in the ingest phase.
May requireCPP-019Data Quality Assessment The TDA may have quality requirements that may be checked during ingest.
May requireCPP-026File Normalisation The ingest may require that the digital Objects are first normalised before ingestion.
Required byCPP-021AIP Versioning Versioning implies several delicate operations, in particular in the case of a partial update, where the incoming SIP should be merged with the existing AIP.
May be required byCPP-028Creation of DerivativesThe ingestion may generate derivatives for access.
Affinity withCPP-012Risk MitigationThe ingest process must adhere to the risk mitigation policies.
Affinity withCPP-013Object Management Reporting Ingest is both an important provider of reporting data to the TDA (via other CPPs) as well as a customer, as the ingest checks and outcomes must be reported to the producer.

4. Reference implementations

Use cases

Ingest processes described as workflows

Institutional background
InstitutionSeveral institutions, MUL
Hyperlinkhttps://coptr.digipres.org/index.php/Workflow:Community_Owned_Workflows
Description
Problem statementSeveral institutions have described their workflow for ingesting Objects in the Community Owned Workflow section of the COPTR registry.

Publicly available documentation

InstitutionOrganisation typeLanguageHyperlink
TIB – Leibniz Information Centre for Science and Technology and University Library, DENational library
Non-commercial digital preservation service
Research infrastructure
Research performing organisation
English https://wiki.tib.eu/confluence/spaces/lza/pages/93608618/Ingest
CSC – IT Center for Science Ltd., FINon-commercial digital preservation serviceFinnishhttps://urn.fi/urn:nbn:fi-fe2024051731943
(Appendix 4, section 2.2.1)
Archivematica, CADigital preservation systemEnglishhttps://www.archivematica.org/en/docs/archivematica-1.17/user-manual/transfer/transfer/
(Transfer - steps that lead up to creating a SIP, e.g. checksum generation, file format identification etc.)
Archivematica, CADigital preservation systemEnglishhttps://www.archivematica.org/en/docs/archivematica-1.17/user-manual/ingest/ingest/
(Ingest - steps from SIP to AIP, e.g. file format normalisation)