app.certified.location
Schema Diff
+28 -6
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 5 non-breaking changes.
Breaking Changes (2)
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.location#string.string", sort: "maxGraphemes", value: "1000" }
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.location#string.string", sort: "maxLength", value: "10000" }
Non-Breaking Changes (5)
- AddedVertex AddedVertex { vertex_id: "app.certified.location#string" }
- AddedVertex AddedVertex { vertex_id: "app.certified.location#string.string" }
- AddedVertex AddedVertex { vertex_id: "app.certified.location:body.location:variant2" }
- AddedEdge AddedEdge { src: "app.certified.location#string", tgt: "app.certified.location#string.string", kind: "prop", name: Some("string") }
- AddedEdge AddedEdge { src: "app.certified.location:body.location", tgt: "app.certified.location:body.location:variant2", kind: "variant", name: Some("#string") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.certified.location#string" }AddedVertex { vertex_id: "app.certified.location#string.string" }AddedVertex { vertex_id: "app.certified.location:body.location:variant2" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.location#string.string", sort: "maxLength", value: "10000" }
- ConstraintAdded ConstraintAdded { vertex_id: "app.certified.location#string.string", sort: "maxGraphemes", value: "1000" }
Additional Notes
- Non-breaking: AddedEdge { src: "app.certified.location#string", tgt: "app.certified.location#string.string", kind: "prop", name: Some("string") }
- Non-breaking: AddedEdge { src: "app.certified.location:body.location", tgt: "app.certified.location:body.location:variant2", kind: "variant", name: Some("#string") }
1
1
{
2
2
"id": "app.certified.location",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"lpVersion",
11
11
"srs",
12
12
"locationType",
13
13
"location",
14
14
"createdAt"
15
15
],
16
16
"properties": {
17
17
"srs": {
18
18
"type": "string",
19
19
"format": "uri",
20
20
"maxLength": 100,
21
21
"description": "The Spatial Reference System URI (e.g., http://www.opengis.net/def/crs/OGC/1.3/CRS84) that defines the coordinate system."
22
22
},
23
23
"name": {
24
24
"type": "string",
25
25
"maxLength": 1000,
26
-
"description": "Optional name for this location",
26
+
"description": "Human-readable name for this location (e.g. 'Golden Gate Park', 'San Francisco Bay Area')",
27
27
"maxGraphemes": 100
28
28
},
29
29
"location": {
30
30
"refs": [
31
31
"org.hypercerts.defs#uri",
32
-
"org.hypercerts.defs#smallBlob"
32
+
"org.hypercerts.defs#smallBlob",
33
+
"#string"
33
34
],
34
35
"type": "union",
35
-
"description": "The location of where the work was performed as a URI or blob."
36
+
"description": "The location of where the work was performed as a URI, blob, or inline string."
36
37
},
37
38
"createdAt": {
38
39
"type": "string",
39
40
"format": "datetime",
40
41
"description": "Client-declared timestamp when this record was originally created"
41
42
},
42
43
"lpVersion": {
43
44
"type": "string",
44
45
"maxLength": 10,
45
46
"description": "The version of the Location Protocol"
46
47
},
47
48
"description": {
48
49
"type": "string",
49
50
"maxLength": 2000,
50
-
"description": "Optional description for this location",
51
+
"description": "Additional context about this location, such as its significance to the work or specific boundaries",
51
52
"maxGraphemes": 500
52
53
},
53
54
"locationType": {
54
55
"type": "string",
55
56
"maxLength": 20,
56
-
"description": "An identifier for the format of the location data (e.g., coordinate-decimal, geojson-point)",
57
+
"description": "An identifier for the format of the location data (e.g., coordinate-decimal, geojson-point). See the Location Protocol spec for the full registry: https://spec.decentralizedgeo.org/specification/location-types/#location-type-registry",
57
58
"knownValues": [
58
59
"coordinate-decimal",
59
-
"geojson-point"
60
+
"geojson-point",
61
+
"geojson",
62
+
"h3",
63
+
"geohash",
64
+
"wkt",
65
+
"address",
66
+
"scaledCoordinates"
60
67
]
61
68
}
62
69
}
63
70
},
64
71
"description": "A location reference"
72
+
},
73
+
"string": {
74
+
"type": "object",
75
+
"required": [
76
+
"string"
77
+
],
78
+
"properties": {
79
+
"string": {
80
+
"type": "string",
81
+
"maxLength": 10000,
82
+
"description": "The location string value",
83
+
"maxGraphemes": 1000
84
+
}
85
+
},
86
+
"description": "A location represented as a string, e.g. coordinates or a small GeoJSON string."
65
87
}
66
88
},
67
89
"$type": "com.atproto.lexicon.schema",
68
90
"lexicon": 1
69
91
}