Difference between revisions of "Persistent identifiers(pid)"

From OSGeo
Jump to navigation Jump to search
(+OSGeo folks on ORCID)
 
(17 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
=== Scope ===  
 
=== Scope ===  
 
This wiki page summarizes relevant facts and procedures regarding persistent identifers (PID) for the OSGeo communities.
 
This wiki page summarizes relevant facts and procedures regarding persistent identifers (PID) for the OSGeo communities.
 
 
=== Status ===
 
=== Status ===
 
Draft (2022-01-09)
 
Draft (2022-01-09)
 +
=== What are PID and why do they matter to OSGeo ===
 +
* [https://en.wikipedia.org/wiki/Persistent_identifier Definition of PID according to Wikipedia]
  
 
+
=== Terminology and Abbreviations ===
=== Overview ===
+
* PID:
# What are persistent identifiers and why are they relevant
+
* DOI:
# PID for software
+
* ISSN:
# PID for people
+
* ISBN:
# PID for data
+
* Open Access:
# PID for documentation
+
* FAIR:
# PID for video
+
* Zenodo:
# PID for physical objects
+
* Landing page:
# Infrastructure
+
* CFF:
# Howto: Registering a DOI for a OSGeo software Project
+
* GitHub:
 
+
* Software Versioning:
=== What are PID ===
+
* Roles:
* [https://en.wikipedia.org/wiki/Persistent_identifier Definition of PID according to Wikipedia]
+
* Video quotes:
  
 
=== PID for software ===
 
=== PID for software ===
== Digital Object Identifier (DOI) ==
+
==== Digital Object Identifier (DOI) ====
 
* [https://en.wikipedia.org/wiki/Digital_object_identifier Definition of DOI by Wikipedia]
 
* [https://en.wikipedia.org/wiki/Digital_object_identifier Definition of DOI by Wikipedia]
== Dealing with different roles within projects ==
+
* [https://help.zenodo.org/ The Zenodo FAQ covers Software Versioning]
 +
 
 +
==== Dealing with different roles within projects ====
 
* [https://github.com/codemeta/codemeta/issues/240 CodeMeta on roles]
 
* [https://github.com/codemeta/codemeta/issues/240 CodeMeta on roles]
 
=== PID for people ===
 
=== PID for people ===
== Open Researcher and Contributor ID (ORCID) ==
+
==== Open Researcher and Contributor ID (ORCID) ====
 
* [https://en.wikipedia.org/wiki/ORCID Definition of ORCID by Wikipedia]
 
* [https://en.wikipedia.org/wiki/ORCID Definition of ORCID by Wikipedia]
 +
* [https://orcid.org/orcid-search/search?searchQuery=OSGeo&pageSize=200&pageIndex=0 OSGeo folks on ORCID]
  
 
=== PID for documentation ===
 
=== PID for documentation ===
Line 45: Line 49:
  
 
=== Infrastructure ===
 
=== Infrastructure ===
  * Software Repositories (GitHub)
+
==== Software Repositories ====
  * Zenodo
+
*GitHub
 +
*GitLab
 +
==== Open Access Repositories ====
 +
===== Zenodo =====
 +
'''Description according to [https://en.wikipedia.org/wiki/Zenodo 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.
  
 +
* [https://help.zenodo.org/ The Zenodo FAQ covers Software Versioning]
 +
* [https://help.zenodo.org/ The Zenodo FAQ covers size limitations (50Gb)]
  
===  Howto: Registering a DOI for a OSGeo software Project ===
+
==  Howto: Registering a DOI for a OSGeo software Project ==
  
== Requirements ==
+
=== Requirements ===
This should be done by a person who represents the software project (member of PSC or similar).
+
This should be done by a person who represents the software project (member of PSC or similar). This step requires login credentials for both the GitHub and the Zenodo account. A Zenodo account can be easily set up.
  
== Options ==
+
=== Options ===
 
ORCIDs for authors, developers and other project staff can be embedded in the DOI metadata, allowing for proper citation.
 
ORCIDs for authors, developers and other project staff can be embedded in the DOI metadata, allowing for proper citation.
  
== Option 1: Upload a snapshot ==
+
=== Quick Approach: Upload a repository-snapshot to Zenodo ===
 
*Pro: Takes less than 10 minutes to achieve
 
*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: 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)
Line 64: Line 81:
 
*Con: Every software release requires maintenance work by project staff, as an additional tarball must be uploaded and metadata must be updated.
 
*Con: Every software release requires maintenance work by project staff, as an additional tarball must be uploaded and metadata must be updated.
  
=Howto=
+
==== Howto ====
* [https://guides.lib.berkeley.edu/citeyourcode How to make your code citable (Berkeley Library)]
+
*[https://www.youtube.com/watch?v=S1qK_TA52e4 Howto video]
=Examples=
+
 
 +
====Examples====
 
*[https://doi.org/10.5281/zenodo.1163021 rasdaman project]
 
*[https://doi.org/10.5281/zenodo.1163021 rasdaman project]
  
== Option 2: Create a live link between the GitHub Repo and Zenodo ==
+
=== 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
 
*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 ?)
 
*Con: Takes a bit longer than option 1 (20 minutes ?)
=Howto=
+
*Beware: If no .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 upon each release update (as shown [https://zenodo.org/record/4723586#.Yd7r0WjMJD8 here] ). This can be manually edited afterwards, but is awkward and can be avoided. Also, the citation style service in the lower right of the page will not work. It is set up to provide on the fly references according to many established citation styles (e.g. AIMS Geoscience, Springer, etc.).
* [https://www.youtube.com/watch?v=A9FGAU9S9Ow Tutrial video (Youtube)]
+
 
* Not covered in the video: A file (hard-)named ".zenodo.json" can be added to the top-level of the GitHub repo for advanced author info handling ([https://github.com/OSGeo/MOSS/blob/main/.zenodo.json Example from MOSS project]).
+
==== Example of a .zenodo.json file ====
 +
Please note that the structure of the file must match this example. Do not use tabs for formatting.
 +
 
 +
{
 +
    "creators": [
 +
        {
 +
            "name": "Firstauthor, Anna"
 +
            "affiliation": "OSGeo",
 +
            "orcid": "0000-0002-1041-4213"
 +
        },
 +
        {
 +
            "name": "Doe, Jane"
 +
            "affiliation": "Foo",
 +
            "orcid": "0000-0002-1041-4211"
 +
        },
 +
        {
 +
            "name": "Doe, John"
 +
            "affiliation": "Baz",
 +
            "orcid": "0000-0002-1041-4212"
 +
        }
 +
    ]
 +
}
 +
 
 +
 
 +
====Howto====
 +
 
 +
* [https://guides.lib.berkeley.edu/citeyourcode How to make your code citable (Berkeley Library)]
 +
* [https://www.youtube.com/watch?v=A9FGAU9S9Ow Tutorial video (YouTube)]
 +
* Not covered in the video and the Berkeley guide: A file (hard-)named ".zenodo.json" may be added to the top-level of the GitHub repo for advanced author info handling ([https://github.com/OSGeo/MOSS/blob/main/.zenodo.json Example from MOSS project], see above for a code example).
 +
* Option: Preregister a DOI. This is useful if the DOI string is needed before the next software release comes around (which will trigger the actual minting of the DOI). According to https://help.zenodo.org: "On the upload page under Basic Information and Digital Object Identifier click the Reserve DOI button. The text field above will display the DOI that your record will have once it is published. This will not register the DOI yet, nor will it publish your record (so you can still update the files). This DOI can be safely used in the record's own content as well as any other separate datasets or papers you might be planning to publish."
 +
 
 +
====Examples====
 +
# [https://doi.org/10.5281/zenodo.5854561 GeoServer]: [https://doi.org/10.5281/zenodo.5854561
 +
# [https://doi.org/10.5281/zenodo.5854653 GeoTools]: https://doi.org/10.5281/zenodo.5854653
 +
# [https://doi.org/10.5281/zenodo.3407865 GMT]: https://doi.org/10.5281/zenodo.3407865
 +
# [https://doi.org/10.5281/zenodo.5849091 gvSIG]: https://doi.org/10.5281/zenodo.5849091
 +
# [https://doi.org/10.5281/zenodo.5176030 GRASS GIS]: https://doi.org/10.5281/zenodo.5176030
 +
# [https://doi.org/10.5281/zenodo.5842012 MapServer]: https://doi.org/10.5281/zenodo.5842012
 +
# [https://doi.org/10.5281/zenodo.5140318 MOSS]  https://doi.org/10.5281/zenodo.5140318
 +
 
 +
== FAQ ==
 +
* [https://help.zenodo.org/ Zenodo FAQ]
  
=Examples=
+
[[Category: Persistent identifiers]]
* [https://doi.org/10.5281/zenodo.5825144 MOSS (simple example from a static heritage project)]
 
* [https://doi.org/10.5281/zenodo.5810537 GRASS GIS (complex example from a highly dynamic project)]
 
* Bulleted list item
 

Latest revision as of 00:06, 26 September 2024

Persistent Identifiers (PID): Introduction and HowTo

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

Terminology and Abbreviations

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

PID for software

Digital Object Identifier (DOI)

Dealing with different roles within projects

PID for people

Open Researcher and Contributor ID (ORCID)

PID for documentation

tbd

PID for data

PID for video

[page on the TIB AV-Portal]

PID for physical objects

tbd

Infrastructure

Software Repositories

  • GitHub
  • GitLab

Open Access Repositories

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.

Howto: Registering a DOI for a OSGeo software Project

Requirements

This should be done by a person who represents the software project (member of PSC or similar). This step requires login credentials for both the GitHub and the Zenodo account. A Zenodo account can be easily set up.

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

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 .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 upon each release update (as shown here ). This can be manually edited afterwards, but is awkward and can be avoided. Also, the citation style service in the lower right of the page will not work. It is set up to provide on the fly references according to many established citation styles (e.g. AIMS Geoscience, Springer, etc.).

Example of a .zenodo.json file

Please note that the structure of the file must match this example. Do not use tabs for formatting.

{

   "creators": [
       {
           "name": "Firstauthor, Anna"
           "affiliation": "OSGeo",
           "orcid": "0000-0002-1041-4213"
       },
       {
           "name": "Doe, Jane"
           "affiliation": "Foo",
           "orcid": "0000-0002-1041-4211"
       },
       {
           "name": "Doe, John"
           "affiliation": "Baz",
           "orcid": "0000-0002-1041-4212"
       }
   ]

}


Howto

  • How to make your code citable (Berkeley Library)
  • Tutorial video (YouTube)
  • Not covered in the video and the Berkeley guide: 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, see above for a code example).
  • Option: Preregister a DOI. This is useful if the DOI string is needed before the next software release comes around (which will trigger the actual minting of the DOI). According to https://help.zenodo.org: "On the upload page under Basic Information and Digital Object Identifier click the Reserve DOI button. The text field above will display the DOI that your record will have once it is published. This will not register the DOI yet, nor will it publish your record (so you can still update the files). This DOI can be safely used in the record's own content as well as any other separate datasets or papers you might be planning to publish."

Examples

  1. GeoServer: [https://doi.org/10.5281/zenodo.5854561
  2. GeoTools: https://doi.org/10.5281/zenodo.5854653
  3. GMT: https://doi.org/10.5281/zenodo.3407865
  4. gvSIG: https://doi.org/10.5281/zenodo.5849091
  5. GRASS GIS: https://doi.org/10.5281/zenodo.5176030
  6. MapServer: https://doi.org/10.5281/zenodo.5842012
  7. MOSS https://doi.org/10.5281/zenodo.5140318

FAQ