Decide on PID scheme for various record types #6

Open
opened 2025-11-26 09:46:16 +00:00 by jsheunis · 0 comments
Member

...the choice of going for "long-form" custom competition PIDs doesn't scale. Here we would want random people to feed records. But forcing them to invent PIDs is a complex task without benefits. This should be changed to have the UI use random PIDs immediately

Looking at Grant records. Some of them do have proper identifiers in proper namespaces (NSF, ERC, DFG). We need to decide whether to adopt them, if possible -- or whether we should always and unconditionally use random PIDs and annotate the upstream identifier via identifiers. We should not use the model of invented long-form PIDs in ad-hoc namespaces for these externally controlled things

Same PID approach decisions need to be made for Person. Random, or external namespace -- but nothing adhoc

TODO:

  • Competition
  • Grant
  • Person

This is the current shacl-vue config (originally copied from a deployment driven by the research-assets schema, and still containing entries for classes that the rse-group schema doesn't have):

    "id_autogenerate": {
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZDataItem": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "dataitems/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZDataset": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "datasets/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZGenesis": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "processes/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZObjective": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "objectives/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZProject": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "projects/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZPublication": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "publications/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZStudy": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "studies/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZSubject": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "subjects/"
        },
        "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZTopic": {
            "id_autogenerate_prefix": "psyinf",
            "id_autogenerate_prepend": "topic/"
        }
    },

> ...the choice of going for "long-form" custom competition PIDs doesn't scale. Here we would want random people to feed records. But forcing them to invent PIDs is a complex task without benefits. This should be changed to have the UI use random PIDs immediately > Looking at Grant records. Some of them do have proper identifiers in proper namespaces (NSF, ERC, DFG). We need to decide whether to adopt them, if possible -- or whether we should always and unconditionally use random PIDs and annotate the upstream identifier via identifiers. We should not use the model of invented long-form PIDs in ad-hoc namespaces for these externally controlled things > Same PID approach decisions need to be made for Person. Random, or external namespace -- but nothing adhoc TODO: - [ ] Competition - [ ] Grant - [ ] Person This is the current shacl-vue config (originally copied from a deployment driven by the research-assets schema, and still containing entries for classes that the rse-group schema doesn't have): ```json "id_autogenerate": { "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZDataItem": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "dataitems/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZDataset": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "datasets/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZGenesis": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "processes/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZObjective": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "objectives/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZProject": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "projects/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZPublication": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "publications/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZStudy": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "studies/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZSubject": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "subjects/" }, "https://concepts.datalad.org/s/demo-rse-group/unreleased/XYZTopic": { "id_autogenerate_prefix": "psyinf", "id_autogenerate_prepend": "topic/" } }, ```
jsheunis changed title from Decide on PID schema for various record types to Decide on PID scheme for various record types 2025-11-26 09:48:44 +00:00
Sign in to join this conversation.
No labels
AI
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
www/pool.psychoinformatics.de-ui#6
No description provided.