org.hypercerts.context.measurement
Schema Diff
+5 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 4 non-breaking changes.
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "app.certified.signature.defs#list" }
- AddedVertex AddedVertex { vertex_id: "org.hypercerts.context.measurement:body.signatures" }
- AddedEdge AddedEdge { src: "org.hypercerts.context.measurement:body", tgt: "org.hypercerts.context.measurement:body.signatures", kind: "prop", name: Some("signatures") }
- AddedEdge AddedEdge { src: "org.hypercerts.context.measurement:body.signatures", tgt: "app.certified.signature.defs#list", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.certified.signature.defs#list" }AddedVertex { vertex_id: "org.hypercerts.context.measurement:body.signatures" }
Additional Notes
- Non-breaking: AddedEdge { src: "org.hypercerts.context.measurement:body", tgt: "org.hypercerts.context.measurement:body.signatures", kind: "prop", name: Some("signatures") }
- Non-breaking: AddedEdge { src: "org.hypercerts.context.measurement:body.signatures", tgt: "app.certified.signature.defs#list", kind: "ref", name: None }
1
1
{
2
2
"id": "org.hypercerts.context.measurement",
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
"metric",
11
11
"unit",
12
12
"value",
13
13
"createdAt"
14
14
],
15
15
"properties": {
16
16
"unit": {
17
17
"type": "string",
18
18
"maxLength": 50,
19
19
"description": "The unit of the measured value (e.g. kg CO₂e, hectares, %, index score)."
20
20
},
21
21
"value": {
22
22
"type": "string",
23
23
"maxLength": 500,
24
24
"description": "The measured value as a numeric string (e.g. '1234.56')"
25
25
},
26
26
"metric": {
27
27
"type": "string",
28
28
"maxLength": 500,
29
29
"description": "The metric being measured, e.g. forest area restored, number of users, etc."
30
30
},
31
31
"comment": {
32
32
"type": "string",
33
33
"maxLength": 3000,
34
34
"description": "Short comment of this measurement, suitable for previews and list views. Rich text annotations may be provided via `commentFacets`.",
35
35
"maxGraphemes": 300
36
36
},
37
37
"endDate": {
38
38
"type": "string",
39
39
"format": "datetime",
40
40
"description": "The end date and time when the measurement ended. For one-time measurements, this should equal the start date."
41
41
},
42
42
"subjects": {
43
43
"type": "array",
44
44
"items": {
45
45
"ref": "com.atproto.repo.strongRef",
46
46
"type": "ref"
47
47
},
48
48
"maxLength": 100,
49
49
"description": "Strong references to the records this measurement refers to (e.g. activities, projects, or claims)."
50
50
},
51
51
"createdAt": {
52
52
"type": "string",
53
53
"format": "datetime",
54
54
"description": "Client-declared timestamp when this record was originally created"
55
55
},
56
56
"locations": {
57
57
"type": "array",
58
58
"items": {
59
59
"ref": "com.atproto.repo.strongRef",
60
60
"type": "ref"
61
61
},
62
62
"maxLength": 100,
63
63
"description": "Optional geographic references related to where the measurement was taken. Each referenced record must conform with the app.certified.location lexicon."
64
64
},
65
65
"measurers": {
66
66
"type": "array",
67
67
"items": {
68
68
"ref": "app.certified.defs#did",
69
69
"type": "ref"
70
70
},
71
71
"maxLength": 100,
72
72
"description": "DIDs of the entities that performed this measurement"
73
73
},
74
74
"methodURI": {
75
75
"type": "string",
76
76
"format": "uri",
77
77
"description": "URI to methodology documentation, standard protocol, or measurement procedure"
78
78
},
79
79
"startDate": {
80
80
"type": "string",
81
81
"format": "datetime",
82
82
"description": "The start date and time when the measurement began."
83
83
},
84
84
"methodType": {
85
85
"type": "string",
86
86
"maxLength": 30,
87
87
"description": "Short identifier for the measurement methodology"
88
88
},
89
+
"signatures": {
90
+
"ref": "app.certified.signature.defs#list",
91
+
"type": "ref",
92
+
"description": "Optional cryptographic signatures attesting to this record's content."
93
+
},
89
94
"evidenceURI": {
90
95
"type": "array",
91
96
"items": {
92
97
"type": "string",
93
98
"format": "uri"
94
99
},
95
100
"maxLength": 50,
96
101
"description": "URIs to related evidence or underlying data (e.g. org.hypercerts.claim.evidence records or raw datasets)"
97
102
},
98
103
"commentFacets": {
99
104
"type": "array",
100
105
"items": {
101
106
"ref": "app.bsky.richtext.facet",
102
107
"type": "ref"
103
108
},
104
109
"description": "Rich text annotations for `comment` (mentions, URLs, hashtags, etc)."
105
110
}
106
111
}
107
112
},
108
113
"description": "Measurement data related to one or more records (e.g. activities, projects, etc.)."
109
114
}
110
115
},
111
116
"$type": "com.atproto.lexicon.schema",
112
117
"lexicon": 1
113
118
}