space.opendeck.card
Schema Diff
+14 -4
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 6 non-breaking changes.
Breaking Changes (2)
- RemovedVertex RemovedVertex { vertex_id: "space.opendeck.card:body.phonetic" }
- RemovedEdge RemovedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.phonetic", kind: "prop", name: Some("phonetic") }
Non-Breaking Changes (6)
- AddedVertex AddedVertex { vertex_id: "space.opendeck.card:body.backReading" }
- AddedVertex AddedVertex { vertex_id: "space.opendeck.card:body.frontReading" }
- AddedVertex AddedVertex { vertex_id: "space.opendeck.card:body.updatedAt" }
- AddedEdge AddedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.backReading", kind: "prop", name: Some("backReading") }
- AddedEdge AddedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.frontReading", kind: "prop", name: Some("frontReading") }
- AddedEdge AddedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.updatedAt", kind: "prop", name: Some("updatedAt") }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "space.opendeck.card:body.phonetic" }
Added Elements
AddedVertex { vertex_id: "space.opendeck.card:body.backReading" }AddedVertex { vertex_id: "space.opendeck.card:body.frontReading" }AddedVertex { vertex_id: "space.opendeck.card:body.updatedAt" }
Additional Notes
- Breaking: RemovedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.phonetic", kind: "prop", name: Some("phonetic") }
- Non-breaking: AddedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.backReading", kind: "prop", name: Some("backReading") }
- Non-breaking: AddedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.frontReading", kind: "prop", name: Some("frontReading") }
- Non-breaking: AddedEdge { src: "space.opendeck.card:body", tgt: "space.opendeck.card:body.updatedAt", kind: "prop", name: Some("updatedAt") }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "A flashcard belonging to a deck.",
6
6
"key": "tid",
7
7
"record": {
8
8
"properties": {
9
9
"audio": {
10
10
"accept": [
11
11
"audio/*"
12
12
],
13
13
"description": "Optional audio blob (pronunciation).",
14
14
"maxSize": 5000000,
15
15
"type": "blob"
16
16
},
17
17
"back": {
18
18
"maxGraphemes": 2000,
19
19
"maxLength": 20000,
20
20
"type": "string"
21
21
},
22
+
"backReading": {
23
+
"description": "Reading of the back, e.g. IPA, pinyin or rōmaji.",
24
+
"maxGraphemes": 500,
25
+
"maxLength": 5000,
26
+
"type": "string"
27
+
},
22
28
"createdAt": {
23
29
"format": "datetime",
24
30
"type": "string"
25
31
},
26
32
"deck": {
27
33
"description": "Record key (rkey) of the owning deck in the same repo.",
28
34
"maxGraphemes": 64,
29
35
"maxLength": 640,
30
36
"type": "string"
31
37
},
32
38
"examples": {
33
39
"items": {
34
40
"maxGraphemes": 1000,
35
41
"maxLength": 10000,
36
42
"type": "string"
37
43
},
38
44
"maxLength": 20,
39
45
"type": "array"
40
46
},
41
47
"front": {
42
48
"maxGraphemes": 2000,
43
49
"maxLength": 20000,
44
50
"type": "string"
45
51
},
52
+
"frontReading": {
53
+
"description": "Reading of the front, e.g. IPA, pinyin or rōmaji.",
54
+
"maxGraphemes": 500,
55
+
"maxLength": 5000,
56
+
"type": "string"
57
+
},
46
58
"hint": {
47
59
"maxGraphemes": 1000,
48
60
"maxLength": 10000,
49
61
"type": "string"
50
62
},
51
63
"image": {
52
64
"accept": [
53
65
"image/*"
54
66
],
55
67
"description": "Optional image blob shown on the card.",
56
68
"maxSize": 5000000,
57
69
"type": "blob"
58
70
},
59
71
"imageAlt": {
60
72
"description": "Alt text for the image (accessibility).",
61
73
"maxGraphemes": 1000,
62
74
"maxLength": 10000,
63
75
"type": "string"
64
76
},
65
77
"order": {
66
78
"type": "integer"
67
79
},
68
-
"phonetic": {
69
-
"description": "Pronunciation, e.g. IPA or pinyin.",
70
-
"maxGraphemes": 500,
71
-
"maxLength": 5000,
80
+
"updatedAt": {
81
+
"format": "datetime",
72
82
"type": "string"
73
83
}
74
84
},
75
85
"required": [
76
86
"deck",
77
87
"front",
78
88
"back",
79
89
"createdAt"
80
90
],
81
91
"type": "object"
82
92
},
83
93
"type": "record"
84
94
}
85
95
},
86
96
"id": "space.opendeck.card",
87
97
"lexicon": 1
88
98
}