pub.chive.actor.profile

lexicons.governance.chive.pub

Schema Diff

+4 -3

From

CID
bafyreicxgowtrpr...
Indexed At
2026-06-18 13:14 UTC
View this version

To

CID
bafyreig65lvjjxb...
Indexed At
2026-08-28 14:08 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

2 breaking changes, 0 non-breaking changes.

Breaking Changes (2)
  • ConstraintAdded ConstraintAdded { vertex_id: "pub.chive.actor.profile:body.orcid", sort: "minLength", value: "19" }
  • ConstraintAdded ConstraintAdded { vertex_id: "pub.chive.actor.profile:body.orcid", sort: "maxLength", value: "19" }

Migration Guidance

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "pub.chive.actor.profile:body.orcid", sort: "minLength", value: "19" }
  • ConstraintAdded ConstraintAdded { vertex_id: "pub.chive.actor.profile:body.orcid", sort: "maxLength", value: "19" }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "keyword": {
5 5
      "description": "Research keyword referencing a topic node",
6 6
      "properties": {
7 7
        "fastId": {
8 8
          "description": "FAST subject heading ID for legacy/external data",
9 9
          "maxLength": 20,
10 10
          "type": "string"
11 11
        },
12 12
        "label": {
13 13
          "description": "Keyword label (display fallback if no topicUri)",
14 14
          "maxLength": 100,
15 15
          "type": "string"
16 16
        },
17 17
        "topicUri": {
18 18
          "description": "AT-URI of topic node (subkind=topic)",
19 19
          "format": "at-uri",
20 20
          "type": "string"
21 21
        },
22 22
        "wikidataId": {
23 23
          "description": "Wikidata entity ID (e.g., Q12345) for legacy/external data",
24 24
          "maxLength": 20,
25 25
          "type": "string"
26 26
        }
27 27
      },
28 28
      "required": [
29 29
        "label"
30 30
      ],
31 31
      "type": "object"
32 32
    },
33 33
    "main": {
34 34
      "description": "Chive-specific author profile",
35 -
      "key": "self",
35 +
      "key": "literal:self",
36 36
      "record": {
37 37
        "properties": {
38 38
          "affiliations": {
39 39
            "description": "Current institutional affiliations with optional ROR IDs",
40 40
            "items": {
41 41
              "ref": "pub.chive.defs#affiliation",
42 42
              "type": "ref"
43 43
            },
44 44
            "maxLength": 10,
45 45
            "type": "array"
46 46
          },
47 47
          "arxivAuthorId": {
48 48
            "description": "arXiv author identifier",
49 49
            "maxLength": 100,
50 50
            "type": "string"
51 51
          },
52 52
          "avatar": {
53 53
            "accept": [
54 54
              "image/png",
55 55
              "image/jpeg"
56 56
            ],
57 57
            "maxSize": 1048576,
58 58
            "type": "blob"
59 59
          },
60 60
          "bio": {
61 61
            "maxLength": 2000,
62 62
            "type": "string"
63 63
          },
64 64
          "dblpId": {
65 65
            "description": "DBLP author identifier (e.g., homepages/s/JohnSmith)",
66 66
            "maxLength": 200,
67 67
            "type": "string"
68 68
          },
69 69
          "displayName": {
70 70
            "maxLength": 200,
71 71
            "type": "string"
72 72
          },
73 73
          "fieldUris": {
74 74
            "description": "AT-URIs of field nodes (subkind=field)",
75 75
            "items": {
76 76
              "format": "at-uri",
77 77
              "type": "string"
78 78
            },
79 79
            "maxLength": 20,
80 80
            "type": "array"
81 81
          },
82 82
          "googleScholarId": {
83 83
            "description": "Google Scholar profile ID",
84 84
            "maxLength": 50,
85 85
            "type": "string"
86 86
          },
87 87
          "nameVariants": {
88 88
            "description": "Alternative name forms for paper matching (e.g., maiden name, transliterations, initials like 'J. Smith')",
89 89
            "items": {
90 90
              "maxLength": 200,
91 91
              "type": "string"
92 92
            },
93 93
            "maxLength": 20,
94 94
            "type": "array"
95 95
          },
96 96
          "openAlexId": {
97 97
            "description": "OpenAlex author ID (e.g., A5023888391)",
98 98
            "maxLength": 50,
99 99
            "type": "string"
100 100
          },
101 101
          "openReviewId": {
102 102
            "description": "OpenReview profile ID",
103 103
            "maxLength": 100,
104 104
            "type": "string"
105 105
          },
106 106
          "orcid": {
107 -
            "description": "ORCID identifier",
108 -
            "pattern": "^\\d{4}-\\d{4}-\\d{4}-\\d{3}[0-9X]$",
107 +
            "description": "ORCID identifier in the form 0000-0000-0000-000X. The Lexicon spec defines no `pattern` constraint for strings, so the regular expression that used to sit here was ignored by every validator and this field accepted any string. Length is the strongest constraint the spec can express; the digit and checksum shape is enforced in application code.",
108 +
            "maxLength": 19,
109 +
            "minLength": 19,
109 110
            "type": "string"
110 111
          },
111 112
          "previousAffiliations": {
112 113
            "description": "Past institutional affiliations that may appear on older papers",
113 114
            "items": {
114 115
              "ref": "pub.chive.defs#affiliation",
115 116
              "type": "ref"
116 117
            },
117 118
            "maxLength": 20,
118 119
            "type": "array"
119 120
          },
120 121
          "researchKeywords": {
121 122
            "description": "Research topics and keywords with optional authority IDs",
122 123
            "items": {
123 124
              "ref": "#keyword",
124 125
              "type": "ref"
125 126
            },
126 127
            "maxLength": 50,
127 128
            "type": "array"
128 129
          },
129 130
          "schemaRevision": {
130 131
            "description": "Schema revision this record was created with. Absent means revision 1.",
131 132
            "minimum": 1,
132 133
            "type": "integer"
133 134
          },
134 135
          "scopusAuthorId": {
135 136
            "description": "Scopus author ID",
136 137
            "maxLength": 50,
137 138
            "type": "string"
138 139
          },
139 140
          "semanticScholarId": {
140 141
            "description": "Semantic Scholar author ID",
141 142
            "maxLength": 50,
142 143
            "type": "string"
143 144
          }
144 145
        },
145 146
        "type": "object"
146 147
      },
147 148
      "type": "record"
148 149
    }
149 150
  },
150 151
  "id": "pub.chive.actor.profile",
151 152
  "lexicon": 1,
152 153
  "revision": 2
153 154
}

Compare Other Versions

Lexicon Garden

@