📄 standards/orcid.json
D-OPEN SOVEREIGN
1{
2  "$schema": "https://schemas.dsafe.us/StandardDefinition/1.0",
3  "id": "orcid",
4  "version": "1.0",
5  "label": "Open Researcher and Contributor ID",
6  "description": "A persistent digital identifier that distinguishes one researcher from every other researcher.",
7  "governingBody": "ORCID Inc.",
8  "isoReference": null,
9  "revisionCycle": "irregular",
10  "status": "active",
11  "props": [
12    {
13      "name": "orcidId",
14      "type": "string",
15      "nullable": true,
16      "normalize": "hyphenated-4x4",
17      "display": "hyphenated-4x4",
18      "checkDigit": { "algorithm": "iso7064-mod11-2", "position": "last" },
19      "pattern": "^[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{3}[0-9X]$",
20      "description": "ORCID iD identifying this researcher."
21    }
22  ],
23  "pk": "orcidId",
24  "uriScheme": "ORCID:{{orcidId}}",
25  "linkedDataUri": "https://orcid.org/{{orcidId}}",
26  "externalApis": [
27    {
28      "id": "orcid-lookup",
29      "name": "ORCID Public Record API",
30      "kind": "lookup",
31      "rateLimit": { "requests": 24, "windowSeconds": 1 },
32      "fieldMapping": [
33        { "source": "orcidId",    "target": "orcidId",    "overwrite": "always"   },
34        { "source": "givenNames", "target": "givenName",  "overwrite": "if-empty" },
35        { "source": "familyName", "target": "familyName", "overwrite": "if-empty" },
36        { "source": "biography",  "target": "biography",  "overwrite": "if-empty" }
37      ]
38    },
39    {
40      "id": "orcid-public-api",
41      "name": "ORCID Public Search API",
42      "kind": "search",
43      "maxResults": 10,
44      "rateLimit": null,
45      "fieldMapping": [
46        { "source": "orcidId",    "target": "orcidId",    "overwrite": "always"   },
47        { "source": "givenNames", "target": "givenName",  "overwrite": "if-empty" },
48        { "source": "familyName", "target": "familyName", "overwrite": "if-empty" }
49      ]
50    }
51  ]
52}
53