From 0b269d22395be3a56bc3332e5b515e60e92e36be Mon Sep 17 00:00:00 2001 From: David Linke Date: Fri, 14 Jun 2024 14:51:03 +0200 Subject: [PATCH] Minor additions/clarifications. --- nfdi4cat_details.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/nfdi4cat_details.md b/nfdi4cat_details.md index 32ca679..906f260 100644 --- a/nfdi4cat_details.md +++ b/nfdi4cat_details.md @@ -1,6 +1,6 @@ # PIDs in NFDI4Cat -> *This document is work in progress (and not a reference).* +> *This document is work in progress (and not yet a reference).* Persistent identifiers (PIDs) play an important role in achieving FAIR data. This text is about the different use cases for PIDs in NFDI4Cat and how each case is solved technically. @@ -49,10 +49,10 @@ For the handle-PIDs in Dataverse, it is suggested Preferred is the first scheme, because it is shorter. - It is suggested to not use RFC4648 base32 (letters A to Z and numbers 2 to 7) but another, more human-friendly alphabet, for example z-base-32. - The z-base-32 encoding avoids reading problems by excluding 0, l, v, 2 + It is suggested to not use RFC4648 base32 (letters A to Z and numbers 2 to 7) but another, more human-friendly alphabet, preferably z-base-32. + The z-base-32 encoding avoids human reading problems by excluding 0, l, v, 2 (number 0 may be confused with letter o, letter l with number 1 or letter i, letter v is close to u or r especially in handwriting, also number 2 is close to z in handwriting). - It is optimized for lowercase letters. + The z-base-32 alphabet is optimized for lowercase letters so should be represented in this form. Configuration: - [:IdentifierGenerationStyle](https://guides.dataverse.org/en/latest/installation/config.html#identifiergenerationstyle) = storedProcGenerated @@ -141,8 +141,8 @@ The pydantic model can also be used to create web APIs with other Python-based t Two handle-suffix schemes are supported: - **UUID4** (_uuid pid4cat_) - - Can be either supplied or generated by the gateway (both ways should be possible). - If supplied UUID7 should be also accepted. + - Can be either supplied from the PID-applicant when minting a new PID or can be generated by the gateway (both ways should be possible). + UUID7 should also be accepted. - **namespace_of_agent/local_ID** (_name-spaced pid4cat_) - The handle-gateway should only validate the uniqueness of `namespace_of_agent/local_ID`-combinations. It is suggested to use 3 characters from a human-friendly base32-alphabet as namespaces (e.g. **z-base-32**, see above). This gives 3**32 prefixes and if ever necessary we can switch to 4 chars. @@ -161,6 +161,7 @@ Examples for PID4Cat handles (non-resolvable): > Note, the `pid4cat`-part in the above URLs/suffixes has no functional meaning. > It is only present to make pid4cat-handles easily recognizable. + > We should consider registering `pid4cat` as a prefix on bioregistry.io just like we registered the [voc4cat:](https://bioregistry.io/registry/voc4cat) prefix. ### API of handle server gateway @@ -170,7 +171,7 @@ Suggested URLs for the HSG are https://pid4cat.nfdi4cat.org or https://pid.nfdi4 > Note: Dataverse will not use the HSG but interface the handle-server directly. -The HSG controls which users are allowed to create und update handle records. +The HSG controls which users are allowed to create and update handle records. Except for sysadmins, HSG users will only be allowed to create and update handles for named-spaced PIDs. All PID name-spaces will have at least one name-space admin user. Institutions that like to manage a PID4Cat-PID-namespace need to register a PID-namespace admin with NFDI4Cat.