Cordra
Introduction
Highly configurable software for managing digital objects at scale.
Datasheet
Status: 14.06.2022
| Homepage | https://www.cordra.org/ | 
| Description | https://www.cordra.org/cordra.html | 
| Code | https://gitlab.com/cnri/cordra | 
| Communities | --- | 
| Version | 2.4.0 (released on 21.02.2022) | 
Features
Status: 19.05.2021
| Supported Schema(s) | any | only predefined ones | 
| Supported Format(s) | JSON Schema | |
| Interface(s) | REST | +DOIP + IRP | 
| Open Source | yes | code is open available but no open development | 
| License | Cordra License Agreement | |
| Versioning | yes | simple object versioning (kind of a history) | 
| AAI | yes | JWT, HTTP Basic Auth | 
| External Storage | yes | configurable, mandatory for distributed systems | 
| Referencable | yes | internal & external via IRP interface | 
Description
- Register Schema:
- Support for arbitrary schemas of a specific format (e.g. JSON Schema, XSD)
 - The schema should at least be referencable by a unique identifier.
 
 - Update Schema:
- Possibility to 
- work on different versions of a schema
 - adapt schemas over time
 
 
 - Possibility to 
 - Validate Schema:
- Check schema for correct syntax
 
 - Ingest Metadata:
- Store metadata (document) in repository
- Ideally with previous validation
 
 
 - Store metadata (document) in repository
 - Update Metadata: 
- Possibility to update already ingested metadata (documents).
 
 - Validate Metadata:
- Possibility to validate documents on the basis of registered schemas.
 
 - Search by Administrative MD:
- Search documents by their metadata (e.g. ingest date, ingester, ...)
 
 - Search by Content:
- Search documents by their content
 
 - Persistent Identifier:
- Support for Persistent Identifiers (e.g. DOI, Handle)
 
 
Additional Features
Status: 19.05.2021
- Scalable infrastructure (allows load balancing)
 - Referencing one schema from another
 - Online editor for creating metadata documents (may not work with references)
 - Validates supplied information against one or more pre-defined JSON schemas, and stores them as digital objects
 - adoptable via hooks
- e.g. validation
 
 - Highly configurable
 - DOIP (Digital Object Interface Protocol) support
 - IRP (Identifier/Resolution Protocol) support
 - Indexing (via configured service (e.g. solr, elasticsearch, ...)
 - OAI-PMH (!?) (via Metadata Translation) Proof-of-concept
 
Functionality
Status: 19.05.2021
| Function | Supported | Remarks | 
|---|---|---|
| Register Schema | (+) | must be configured | 
| Update Schema | (+) | overwrites the previous version | 
| Validate Schema | - | |
| Ingest Metadata | + | |
| Update Metadata | + | overwrites document (create a version in beforehand to prevent loss of 'old' document (experimental)) | 
| Validate Metadata | + | via hooks | 
| Search by ... | ||
| ... Administrative MD | + | |
| ... Content | + | via external service | 
| Persistent Identifier | + | via external service | 
Remarks
Optimized for handling NoSQL information. Integrates popular storage and indexing solutions, and presents a unified interface. Provides configurable hooks to validate and update information at various stages of a digital object lifecycle.