forked from DMPRoadmap/roadmap
-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
Description
Summary
Implement integration with the DataCite REST API to mint DOIs for DMP versions (plan_snapshots) when they are published.
Details
.published_visibility
- A DOI is minted only when
plan_snapshot.published_visibility == 'public'
API Integration
- Likely use HTTP POST for all minting actions
- Each published version receives a new DOI.
- DOIs are never updated (no PUT/PATCH).
Versioning & DOI Relationships
-
Link versioned DOIs to each other and to the canonical DOI via DataCite’s versioning guide.
-
Canonical DOI (
plan_snapshot.plan)- Minted when the first public snapshot is published.
- Associated with the underlying
plan. - Tracks all version DOIs via
hasVersion.
-
Version DOI (
plan_snapshot)- Minted for each public
plan_snapshot. - References the canonical DOI via
isVersionOf. - References the previous version via
isNewVersionOfif one exists.
- Minted for each public
-
Sequential linking
- Use
isNewVersionOf/isPreviousVersionOfto connect consecutive snapshots. - Only the previous version DOI needs updating; new version sets its link at creation.
- Use
-
Updating Metadata When Minting New Versions
- Update canonical DOI
hasVersionlist to include the new version DOI. - If a previous version DOI exists, update that DOI by adding
isPreviousVersionOfpointing to the new version DOI.
- Update canonical DOI
-
Initial Version Publication
- When publishing the first public snapshot of a plan:
- Mint the canonical DOI for the underlying
plan. - Mint the
version DOIfor the snapshot, referencing the canonical viaisVersionOf. - Update the canonical DOI’s
hasVersionlist to include this first version DOI.
- Mint the canonical DOI for the underlying
- When publishing the first public snapshot of a plan:
Implementation Notes
API Integration
- Reference existing DMPTool integration code for guidance:
- DataCite service class for API communication and response handling.
- Jbuilder template for constructing the DataCite JSON payload structure.
Metadata Schema
- DataCite Metadata Schema 4.6
- Review DataCite’s provenance tracking guidance to determine if explicit provenance metadata is required or if relationships between DOIs are sufficient.
Lifecycle
- Canonical DOI (if implemented) may be minted when the first version is published and linked to subsequent versions.
- Atomicity: Consider wrapping snapshot creation and DOI minting in a single transaction:
- If DOI minting fails, rollback the snapshot save.
- If snapshot save fails, DOI is never attempted.
Reactions are currently unavailable