Manage DOIs
Overview
Introduction
This page contains DOI management procedures for the Engineering Node Operator. For general information on PDS’s DOI and Discipline Node procedures go to DOI guidelines.
Engineering Node Operator Procedures
The actions are run in command line using software pds-doi-cmd on host pds-prod2.
Reserve a DOI
- Discipline Node Request
The discipline node request must contain a spreadsheet with the following format:
The column names must be the one listed here:
Column header | Definition |
---|---|
Status | Always ‘reserved’ |
Title | Title for the resource, dataset or document. Must contain the product_specific_type suffix (collection, bundle…) |
Publication_date | Publication date of the resource in format ‘YYYY-MM-DD’ |
Product_type_specific | PDS4 type (collection, bundle, ….) prefixed by PDS4 |
Author_last_name | Last name of the author |
Author_first_name | First name of the author |
Related_resource | LIDVID of the resource |
Optionally, to guide the Discipline Node Requestor, the column headers can contain a short text giving details on the format expected of the column:
Reserve commands
The operator will reserve the DOI by launching the command described in https://nasa-pds.github.io/doi-service/usage/index.html#pds-doi-cmd-reserve.
The operator first run it with option –dry-run. The OSTI records will be created in the standard output but not submitted to the system:
$ pds-doi-cmd reserve -i <input file> -s <requestor email> -n <node code, e.g. img> --dry-run
If everything worked well, the operator can re-run the command without the –dry-run option:
$ pds-doi-cmd reserve -i <input file> -s <requestor email> -n <node code, e.g. img>
The operator can check the status of the submitted records by using the command list https://nasa-pds.github.io/doi-service/usage/index.html#pds-doi-cmd-list, for example, check that the DOIs are added to the list of the DOI reserved for the node:
$ pds-doi-cmd list --node img
or
$ pds-doi-cmd list --submitter <requestor email>
Some records might be in a pending status. A daily job automatically checks for the DOI’s updated status on the OSTI server and will send an email update to the Discipline Node Requestors and the Engineering Node Operators.
Release a DOI
The release procedure includes 2 steps:
- Draft and review the DOI record with the Discipline Node Requestor
- Submit the record to OSTI
Draft and review
Needs updating – at time of review (November 2022), cannot find mention of a draft command in the documentation at https://nasa-pds.github.io/doi-service/api/index.html.
The OSTI DOI label is drafted from a PDS4 label input by using the following command: https://nasa-pds.github.io/pds-doi-service/usage/index.html#draft.
$pds-doi-cmd draft -i <pds4 label> -s <requestor email> -n <node code, e.g. img>
The produced OSTI DOI label can be updated by the Discipline Node Requestor or the Engineering Node Operator in a review step (e.g. by email).
When both of them are happy with the content of the OSTI DOI label, it can be submitted.
Anytime during the review process or after, the DOI OSTI label can be updated and resubmitted.
Submit the DOI
Important note: In case of an update of a previously reserved or released DOI for the same LIDVID, to avoid duplicated DOIs, the <id> and the <doi> tags must be set in the OSTI DOI label before being submitted.
$ pds-doi-cmd release -i <osti doi label> -n <node code, e.g. img> -s <submitter email>
Other Warning rules for PDS DOIs:
- Site_url contains the URL to the landing page. For this to work the PDS4 label need to be ingested in the Engineering Node registry.
- Title must be unique.
- Title must contain the suffix related to the PDS4 product specific type (collection, bundle or document).
The DOI is submitted with the following command: https://nasa-pds.github.io/doi-service/usage/index.html#pds-doi-cmd-release.
The status of the submitted DOI can be verified with the list command.
List
To list and filter the DOI in their current status the Engineering Node Operator should use the following command: https://nasa-pds.github.io/doi-service/usage/index.html#pds-doi-cmd-list.
For example, all DOI updated since 2020-01-01:
$ pds-doi-cmd -start 2020-01-01T00:00:00.0