From
bafyreihdvpzxr5sf3jgmm3nivknmrm6fzcrlkxcdkqjuoagkqmn57gfdlm
indexed 2026-06-18 13:14 UTC
View this version
To
bafyreihdvpzxr5sf3jgmm3nivknmrm6fzcrlkxcdkqjuoagkqmn57gfdlm
indexed 2026-06-18 13:14 UTC
View this version
Compatibility
backward compatible No changes detected.
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"boundingRect": {55
"description": "Bounding rectangle coordinates for highlight positioning. All values stored as strings to preserve floating-point precision since ATProto only supports integer type.",66
"properties": {77
"height": {88
"description": "Page height reference (as string to preserve float precision)",99
"type": "string"1010
},1111
"pageNumber": {1212
"description": "Page number (1-indexed for the library)",1313
"minimum": 1,1414
"type": "integer"1515
},1616
"width": {1717
"description": "Page width reference (as string to preserve float precision)",1818
"type": "string"1919
},2020
"x1": {2121
"description": "Left edge coordinate (as string to preserve float precision)",2222
"type": "string"2323
},2424
"x2": {2525
"description": "Right edge coordinate (as string to preserve float precision)",2626
"type": "string"2727
},2828
"y1": {2929
"description": "Top edge coordinate (as string to preserve float precision)",3030
"type": "string"3131
},3232
"y2": {3333
"description": "Bottom edge coordinate (as string to preserve float precision)",3434
"type": "string"3535
}3636
},3737
"required": [3838
"x1",3939
"y1",4040
"x2",4141
"y2",4242
"width",4343
"height",4444
"pageNumber"4545
],4646
"type": "object"4747
},4848
"fragmentSelector": {4949
"description": "W3C Fragment Selector",5050
"properties": {5151
"conformsTo": {5252
"description": "Fragment syntax specification",5353
"format": "uri",5454
"type": "string"5555
},5656
"type": {5757
"const": "FragmentSelector",5858
"type": "string"5959
},6060
"value": {6161
"description": "Fragment identifier (e.g., page number, section ID)",6262
"maxLength": 200,6363
"type": "string"6464
}6565
},6666
"required": [6767
"type",6868
"value"6969
],7070
"type": "object"7171
},7272
"main": {7373
"description": "Review comment on preprint with rich body supporting text and node references",7474
"key": "tid",7575
"record": {7676
"properties": {7777
"body": {7878
"description": "Rich review body with formatting and references",7979
"items": {8080
"refs": [8181
"pub.chive.richtext.defs#textItem",8282
"pub.chive.richtext.defs#nodeRefItem",8383
"pub.chive.richtext.defs#wikidataRefItem",8484
"pub.chive.richtext.defs#fieldRefItem",8585
"pub.chive.richtext.defs#facetRefItem",8686
"pub.chive.richtext.defs#eprintRefItem",8787
"pub.chive.richtext.defs#annotationRefItem",8888
"pub.chive.richtext.defs#authorRefItem",8989
"pub.chive.richtext.defs#mentionItem",9090
"pub.chive.richtext.defs#linkItem",9191
"pub.chive.richtext.defs#tagItem",9292
"pub.chive.richtext.defs#latexItem",9393
"pub.chive.richtext.defs#codeBlockItem",9494
"pub.chive.richtext.defs#headingItem",9595
"pub.chive.richtext.defs#listItem",9696
"pub.chive.richtext.defs#blockquoteItem"9797
],9898
"type": "union"9999
},100100
"maxLength": 500,101101
"type": "array"102102
},103103
"createdAt": {104104
"format": "datetime",105105
"type": "string"106106
},107107
"eprintUri": {108108
"description": "Reviewed eprint URI",109109
"format": "at-uri",110110
"type": "string"111111
},112112
"motivationFallback": {113113
"description": "Fallback motivation if motivationUri not available",114114
"knownValues": [115115
"commenting",116116
"questioning",117117
"highlighting",118118
"replying",119119
"linking"120120
],121121
"type": "string"122122
},123123
"motivationUri": {124124
"description": "AT-URI of motivation type node (subkind=motivation)",125125
"format": "at-uri",126126
"type": "string"127127
},128128
"parentComment": {129129
"description": "Parent comment for threading",130130
"format": "at-uri",131131
"type": "string"132132
},133133
"schemaRevision": {134134
"description": "Schema revision this record was created with. Absent means revision 1.",135135
"minimum": 1,136136
"type": "integer"137137
},138138
"target": {139139
"description": "Target text span for inline annotations",140140
"ref": "#textSpanTarget",141141
"type": "ref"142142
}143143
},144144
"required": [145145
"eprintUri",146146
"body",147147
"createdAt"148148
],149149
"type": "object"150150
},151151
"type": "record"152152
},153153
"positionRefinement": {154154
"description": "Position refinement for precise visual rendering of annotations",155155
"properties": {156156
"boundingRect": {157157
"description": "Bounding rectangle for visual positioning",158158
"ref": "#boundingRect",159159
"type": "ref"160160
},161161
"end": {162162
"description": "Approximate character end offset",163163
"minimum": 0,164164
"type": "integer"165165
},166166
"pageNumber": {167167
"description": "0-indexed page number",168168
"minimum": 0,169169
"type": "integer"170170
},171171
"start": {172172
"description": "Approximate character start offset",173173
"minimum": 0,174174
"type": "integer"175175
},176176
"type": {177177
"const": "TextPositionSelector",178178
"type": "string"179179
}180180
},181181
"required": [182182
"type"183183
],184184
"type": "object"185185
},186186
"textPositionSelector": {187187
"description": "W3C Text Position Selector",188188
"properties": {189189
"end": {190190
"minimum": 0,191191
"type": "integer"192192
},193193
"start": {194194
"minimum": 0,195195
"type": "integer"196196
},197197
"type": {198198
"const": "TextPositionSelector",199199
"type": "string"200200
}201201
},202202
"required": [203203
"type",204204
"start",205205
"end"206206
],207207
"type": "object"208208
},209209
"textQuoteSelector": {210210
"description": "W3C Text Quote Selector",211211
"properties": {212212
"exact": {213213
"maxLength": 1000,214214
"type": "string"215215
},216216
"prefix": {217217
"maxLength": 100,218218
"type": "string"219219
},220220
"suffix": {221221
"maxLength": 100,222222
"type": "string"223223
},224224
"type": {225225
"const": "TextQuoteSelector",226226
"type": "string"227227
}228228
},229229
"required": [230230
"type",231231
"exact"232232
],233233
"type": "object"234234
},235235
"textSpanTarget": {236236
"description": "Target text span for inline annotations (W3C Web Annotation compatible)",237237
"properties": {238238
"refinedBy": {239239
"description": "Position refinement with page number and bounding box for visual rendering",240240
"ref": "#positionRefinement",241241
"type": "ref"242242
},243243
"selector": {244244
"refs": [245245
"#textQuoteSelector",246246
"#textPositionSelector",247247
"#fragmentSelector"248248
],249249
"type": "union"250250
},251251
"versionUri": {252252
"description": "AT-URI of specific eprint version",253253
"format": "at-uri",254254
"type": "string"255255
}256256
},257257
"required": [258258
"selector"259259
],260260
"type": "object"261261
}262262
},263263
"id": "pub.chive.review.comment",264264
"lexicon": 1,265265
"revision": 1266266
}