Persistent identifiers(pid)

Scope
This wiki page summarizes relevant facts and procedures regarding persistent identifers (PID) for the OSGeo communities.

Status
Draft (2022-01-09)

What are PID and why do they matter to OSGeo

 * Definition of PID according to Wikipedia

Terminology and Abbreviations

 * PID:
 * DOI:
 * ISSN:
 * ISBN:
 * Open Access:
 * FAIR:
 * Zenodo:
 * Landing page:
 * CFF:
 * GitHub:
 * Software Versioning:
 * Roles:
 * Video quotes:

Digital Object Identifier (DOI)

 * Definition of DOI by Wikipedia
 * The Zenodo FAQ covers Software Versioning

Dealing with different roles within projects

 * CodeMeta on roles

Open Researcher and Contributor ID (ORCID)

 * Definition of ORCID by Wikipedia

PID for documentation
tbd

PID for data

 * Citing dynamic data (ANDS)


 * Recommendations WG Data Citation RDA

PID for video
[|Wiki page on the TIB AV-Portal]

PID for physical objects
tbd

Software Repositories

 * GitHub
 * GitLab

Zenodo
Description according to Wikipedia:
 * Zenodo is a general-purpose open-access repository developed under the European OpenAIRE program and operated by CERN. It allows researchers to deposit research papers, data sets, research software, reports, and any other research related digital artefacts. For each submission, a persistent digital object identifier (DOI) is minted, which makes the stored items easily citeable.
 * Zenodo was created in 2013 under the name OpenAire orphan records repository to let researchers in any subject area comply with any open science deposit requirement absent in an institutional repository. It was relaunched as Zenodo in 2015 to provide a place for researchers to deposit datasets; it allows the uploading of files up to 50 GB.
 * It provides a DOI to datasets and other submitted data that lacks one to make the work easier to cite and supports various data and license types. One supported source is GitHub repositories.
 * Zenodo is supported by CERN "as a marginal activity" and hosted on the high-performance computing infrastructure that is primarily operated for the needs of high-energy physics.
 * Zenodo is run with Invenio (a free software framework for large-scale digital repositories), wrapped by a small extra layer of code that is also called Zenodo.
 * In 2019, Zenodo announced a partnership with the fellow data repository Dryad to co-develop new solutions focused on supporting researcher and publisher workflows as well as best practices in software and data curation.
 * As of 2021, Zenodo's publicly available statistics for open items reported a total of over 45 million "unique views" and over 55 million "unique downloads". Also in 2021, Zenodo reported it had crossed 1 Petabyte in hosted data and 15 million yearly visits.


 * The Zenodo FAQ covers Software Versioning
 * The Zenodo FAQ covers size limitations (50Gb)

Requirements
This should be done by a person who represents the software project (member of PSC or similar).

Options
ORCIDs for authors, developers and other project staff can be embedded in the DOI metadata, allowing for proper citation.

Quick Approach: Upload a repository-snapshot to Zenodo

 * Pro: Takes less than 10 minutes to achieve
 * Pro: Can be extended and superseeded with better integration options. the DOI will stay always valid regardless and will point to the most up to date software version (and author credits)
 * Pro: No need to set webhooks in Zenodo or store description files in GitHub
 * Con: Metadata (author list) must be edited manually. (ORCID option ?)
 * Con: Every software release requires maintenance work by project staff, as an additional tarball must be uploaded and metadata must be updated.

Howto
*Howto video

Examples

 * rasdaman project

Sustainable Approach: Create a live link between the GitHub Repo and Zenodo

 * Pro: Immediate automated updates of DOI payload and metadata for each software release on GitHub
 * Con: Takes a bit longer than option 1 (20 minutes ?)
 * Beware: If no CFF or .zenodo.json file is included, the author section of the DOI landing page will be reset to the username of the owner of the GitHub repo. This can be manually edited afterwards, but is awkward.

Howto

 * How to make your code citable (Berkeley Library)
 * Tutorial video (YouTube)
 * Not covered in the video and the Berkeley guido: A file (hard-)named ".zenodo.json" may be added to the top-level of the GitHub repo for advanced author info handling (Example from MOSS project).

Examples

 * MOSS (simple example from a static heritage project)
 * GRASS GIS (complex example from a highly dynamic project)

FAQ

 * Zenodo FAQ