@disclosureos/schema 1.0.0 → 2.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/README.md +93 -1
  3. package/dist/experimental/v2/index.d.ts +1602 -0
  4. package/dist/experimental/v2/index.js +4532 -0
  5. package/dist/experimental/v2/index.js.map +1 -0
  6. package/dist/index.d.ts +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/package.json +45 -7
  10. package/schema/enriched-observation.schema.json +31 -2
  11. package/schema/experimental/acquisition-bindings-0.1.0.schema.json +127 -0
  12. package/schema/experimental/dataset-release-0.1.0.schema.json +279 -0
  13. package/schema/experimental/historical-testimony-selection-0.1.0.schema.json +102 -0
  14. package/schema/experimental/instrument-research-review-0.1.0.schema.json +627 -0
  15. package/schema/experimental/measurement-bindings-0.1.0.schema.json +199 -0
  16. package/schema/experimental/migration-compatibility-0.1.0.schema.json +189 -0
  17. package/schema/experimental/migration-legacy-scores-0.1.0.schema.json +116 -0
  18. package/schema/experimental/migration-resolution-0.1.0.schema.json +120 -0
  19. package/schema/experimental/migration-review-0.1.0.schema.json +223 -0
  20. package/schema/experimental/physical-sample-selection-0.1.0.schema.json +278 -0
  21. package/schema/experimental/profile-evaluation-0.1.0.schema.json +231 -0
  22. package/schema/experimental/profile-preparation-0.1.0.schema.json +177 -0
  23. package/schema/experimental/released-document-selection-0.1.0.schema.json +102 -0
  24. package/schema/experimental/reproduction-packet-0.1.0.schema.json +252 -0
  25. package/schema/experimental/research-evaluation-0.1.0.schema.json +174 -0
  26. package/schema/experimental/source-intake-0.1.0.schema.json +497 -0
@@ -0,0 +1,199 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "kind": {
6
+ "type": "string",
7
+ "const": "measurement_bindings"
8
+ },
9
+ "schemaVersion": {
10
+ "type": "string",
11
+ "const": "0.1.0"
12
+ },
13
+ "id": {
14
+ "type": "string",
15
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
16
+ },
17
+ "historyId": {
18
+ "type": "string",
19
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
20
+ },
21
+ "observationId": {
22
+ "type": "string",
23
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
24
+ },
25
+ "contextId": {
26
+ "type": "string",
27
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
28
+ },
29
+ "acquisitionBindingsId": {
30
+ "type": "string",
31
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
32
+ },
33
+ "measurements": {
34
+ "type": "array",
35
+ "items": {
36
+ "type": "object",
37
+ "properties": {
38
+ "measurementRef": {
39
+ "type": "string",
40
+ "pattern": "^measurement:[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
41
+ },
42
+ "observationProductRef": {
43
+ "type": "string",
44
+ "pattern": "^product:[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
45
+ },
46
+ "channelId": {
47
+ "type": "string",
48
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]*(?![\\s\\S])"
49
+ },
50
+ "time": {
51
+ "anyOf": [
52
+ {
53
+ "type": "object",
54
+ "properties": {
55
+ "state": {
56
+ "type": "string",
57
+ "const": "unknown"
58
+ },
59
+ "reason": {
60
+ "type": "string",
61
+ "minLength": 1
62
+ }
63
+ },
64
+ "required": [
65
+ "state",
66
+ "reason"
67
+ ],
68
+ "additionalProperties": false
69
+ },
70
+ {
71
+ "type": "object",
72
+ "properties": {
73
+ "state": {
74
+ "type": "string",
75
+ "const": "known"
76
+ },
77
+ "kind": {
78
+ "type": "string",
79
+ "const": "instant"
80
+ },
81
+ "value": {
82
+ "type": "string",
83
+ "minLength": 1
84
+ },
85
+ "timeScale": {
86
+ "type": "string",
87
+ "const": "UTC"
88
+ }
89
+ },
90
+ "required": [
91
+ "state",
92
+ "kind",
93
+ "value",
94
+ "timeScale"
95
+ ],
96
+ "additionalProperties": false
97
+ },
98
+ {
99
+ "type": "object",
100
+ "properties": {
101
+ "state": {
102
+ "type": "string",
103
+ "const": "known"
104
+ },
105
+ "kind": {
106
+ "type": "string",
107
+ "const": "interval"
108
+ },
109
+ "start": {
110
+ "type": "string",
111
+ "minLength": 1
112
+ },
113
+ "end": {
114
+ "type": "string",
115
+ "minLength": 1
116
+ },
117
+ "timeScale": {
118
+ "type": "string",
119
+ "const": "UTC"
120
+ }
121
+ },
122
+ "required": [
123
+ "state",
124
+ "kind",
125
+ "start",
126
+ "end",
127
+ "timeScale"
128
+ ],
129
+ "additionalProperties": false
130
+ }
131
+ ]
132
+ }
133
+ },
134
+ "required": [
135
+ "measurementRef",
136
+ "observationProductRef",
137
+ "channelId",
138
+ "time"
139
+ ],
140
+ "additionalProperties": false
141
+ }
142
+ },
143
+ "extensions": {
144
+ "type": "object",
145
+ "propertyNames": {
146
+ "type": "string",
147
+ "pattern": "^[a-z][a-z0-9_-]*(?:\\.[a-z0-9_-]+)+(?![\\s\\S])"
148
+ },
149
+ "additionalProperties": {
150
+ "$ref": "#/$defs/__schema0"
151
+ }
152
+ }
153
+ },
154
+ "required": [
155
+ "kind",
156
+ "schemaVersion",
157
+ "id",
158
+ "historyId",
159
+ "observationId",
160
+ "contextId",
161
+ "acquisitionBindingsId",
162
+ "measurements"
163
+ ],
164
+ "additionalProperties": false,
165
+ "$defs": {
166
+ "__schema0": {
167
+ "anyOf": [
168
+ {
169
+ "type": "string"
170
+ },
171
+ {
172
+ "type": "number"
173
+ },
174
+ {
175
+ "type": "boolean"
176
+ },
177
+ {
178
+ "type": "null"
179
+ },
180
+ {
181
+ "type": "array",
182
+ "items": {
183
+ "$ref": "#/$defs/__schema0"
184
+ }
185
+ },
186
+ {
187
+ "type": "object",
188
+ "propertyNames": {
189
+ "type": "string"
190
+ },
191
+ "additionalProperties": {
192
+ "$ref": "#/$defs/__schema0"
193
+ }
194
+ }
195
+ ]
196
+ }
197
+ },
198
+ "$id": "urn:disclosureos:experimental:measurement-bindings:0.1.0"
199
+ }
@@ -0,0 +1,189 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "kind": {
6
+ "type": "string",
7
+ "const": "legacy_sensor_revision_review"
8
+ },
9
+ "schemaVersion": {
10
+ "type": "string",
11
+ "const": "0.1.0"
12
+ },
13
+ "source": {
14
+ "type": "object",
15
+ "properties": {
16
+ "sha256": {
17
+ "type": "string",
18
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
19
+ },
20
+ "byteLength": {
21
+ "type": "integer",
22
+ "minimum": 1,
23
+ "maximum": 8388608
24
+ }
25
+ },
26
+ "required": [
27
+ "sha256",
28
+ "byteLength"
29
+ ],
30
+ "additionalProperties": false
31
+ },
32
+ "namespace": {
33
+ "type": "string",
34
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}(?![\\s\\S])"
35
+ },
36
+ "reviewedBy": {
37
+ "type": "string",
38
+ "minLength": 1,
39
+ "pattern": "\\S"
40
+ },
41
+ "reviewedAt": {
42
+ "type": "string",
43
+ "allOf": [
44
+ {
45
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
46
+ },
47
+ {
48
+ "pattern": "^(?!0000)"
49
+ },
50
+ {
51
+ "pattern": "T[0-9]{2}:[0-9]{2}:[0-9]{2}"
52
+ }
53
+ ]
54
+ },
55
+ "context": {
56
+ "type": "object",
57
+ "properties": {
58
+ "sha256": {
59
+ "type": "string",
60
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
61
+ },
62
+ "byteLength": {
63
+ "type": "integer",
64
+ "minimum": 1,
65
+ "maximum": 2097152
66
+ },
67
+ "bytes": {
68
+ "type": "string",
69
+ "minLength": 1
70
+ }
71
+ },
72
+ "required": [
73
+ "sha256",
74
+ "byteLength",
75
+ "bytes"
76
+ ],
77
+ "additionalProperties": false
78
+ },
79
+ "decisions": {
80
+ "maxItems": 10000,
81
+ "type": "array",
82
+ "items": {
83
+ "type": "object",
84
+ "properties": {
85
+ "sourceId": {
86
+ "type": "string",
87
+ "minLength": 1,
88
+ "pattern": "\\S"
89
+ },
90
+ "sensorPointer": {
91
+ "type": "string",
92
+ "pattern": "^\\/sensorEvidence\\/sensors\\/(?:0|[1-9][0-9]*)\\/sensorRef(?![\\s\\S])"
93
+ },
94
+ "legacyRef": {
95
+ "type": "string",
96
+ "minLength": 1,
97
+ "pattern": "\\S"
98
+ },
99
+ "acquisitionRef": {
100
+ "type": "string",
101
+ "minLength": 1,
102
+ "pattern": "\\S"
103
+ },
104
+ "manifest": {
105
+ "type": "object",
106
+ "properties": {
107
+ "sha256": {
108
+ "type": "string",
109
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
110
+ },
111
+ "byteLength": {
112
+ "type": "integer",
113
+ "minimum": 1,
114
+ "maximum": 2097152
115
+ },
116
+ "bytes": {
117
+ "type": "string",
118
+ "minLength": 1
119
+ }
120
+ },
121
+ "required": [
122
+ "sha256",
123
+ "byteLength",
124
+ "bytes"
125
+ ],
126
+ "additionalProperties": false
127
+ },
128
+ "provenance": {
129
+ "type": "object",
130
+ "properties": {
131
+ "sha256": {
132
+ "type": "string",
133
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
134
+ },
135
+ "byteLength": {
136
+ "type": "integer",
137
+ "minimum": 1,
138
+ "maximum": 2097152
139
+ },
140
+ "bytes": {
141
+ "type": "string",
142
+ "minLength": 1
143
+ }
144
+ },
145
+ "required": [
146
+ "sha256",
147
+ "byteLength",
148
+ "bytes"
149
+ ],
150
+ "additionalProperties": false
151
+ },
152
+ "provenanceLocator": {
153
+ "type": "string",
154
+ "minLength": 1,
155
+ "pattern": "\\S"
156
+ },
157
+ "rationale": {
158
+ "type": "string",
159
+ "minLength": 1,
160
+ "pattern": "\\S"
161
+ }
162
+ },
163
+ "required": [
164
+ "sourceId",
165
+ "sensorPointer",
166
+ "legacyRef",
167
+ "acquisitionRef",
168
+ "manifest",
169
+ "provenance",
170
+ "provenanceLocator",
171
+ "rationale"
172
+ ],
173
+ "additionalProperties": false
174
+ }
175
+ }
176
+ },
177
+ "required": [
178
+ "kind",
179
+ "schemaVersion",
180
+ "source",
181
+ "namespace",
182
+ "reviewedBy",
183
+ "reviewedAt",
184
+ "context",
185
+ "decisions"
186
+ ],
187
+ "additionalProperties": false,
188
+ "$id": "urn:disclosureos:experimental:migration-compatibility:0.1.0"
189
+ }
@@ -0,0 +1,116 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "kind": {
6
+ "type": "string",
7
+ "const": "legacy_score_preservation_plan"
8
+ },
9
+ "schemaVersion": {
10
+ "type": "string",
11
+ "const": "0.1.0"
12
+ },
13
+ "namespace": {
14
+ "type": "string",
15
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}(?![\\s\\S])"
16
+ },
17
+ "source": {
18
+ "type": "object",
19
+ "properties": {
20
+ "sha256": {
21
+ "type": "string",
22
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
23
+ },
24
+ "byteLength": {
25
+ "type": "integer",
26
+ "minimum": 1,
27
+ "maximum": 8388608
28
+ }
29
+ },
30
+ "required": [
31
+ "sha256",
32
+ "byteLength"
33
+ ],
34
+ "additionalProperties": false
35
+ },
36
+ "reviewedBy": {
37
+ "type": "string",
38
+ "minLength": 1,
39
+ "pattern": "\\S"
40
+ },
41
+ "reviewedAt": {
42
+ "type": "string",
43
+ "allOf": [
44
+ {
45
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
46
+ },
47
+ {
48
+ "pattern": "^(?!0000)"
49
+ },
50
+ {
51
+ "pattern": "T[0-9]{2}:[0-9]{2}:[0-9]{2}"
52
+ }
53
+ ]
54
+ },
55
+ "decisions": {
56
+ "maxItems": 10000,
57
+ "type": "array",
58
+ "items": {
59
+ "type": "object",
60
+ "properties": {
61
+ "sourcePointer": {
62
+ "type": "string",
63
+ "pattern": "^(?:|\\/(?:0|[1-9][0-9]*))(?![\\s\\S])"
64
+ },
65
+ "sourceId": {
66
+ "type": "string",
67
+ "minLength": 1,
68
+ "pattern": "\\S"
69
+ },
70
+ "resultKind": {
71
+ "type": "string",
72
+ "enum": [
73
+ "completeness",
74
+ "compellingness"
75
+ ]
76
+ },
77
+ "outputContractVersion": {
78
+ "type": "string",
79
+ "minLength": 1,
80
+ "pattern": "\\S"
81
+ },
82
+ "methodologyVersion": {
83
+ "type": "string",
84
+ "minLength": 1,
85
+ "pattern": "\\S"
86
+ },
87
+ "rationale": {
88
+ "type": "string",
89
+ "minLength": 1,
90
+ "pattern": "\\S"
91
+ }
92
+ },
93
+ "required": [
94
+ "sourcePointer",
95
+ "sourceId",
96
+ "resultKind",
97
+ "outputContractVersion",
98
+ "methodologyVersion",
99
+ "rationale"
100
+ ],
101
+ "additionalProperties": false
102
+ }
103
+ }
104
+ },
105
+ "required": [
106
+ "kind",
107
+ "schemaVersion",
108
+ "namespace",
109
+ "source",
110
+ "reviewedBy",
111
+ "reviewedAt",
112
+ "decisions"
113
+ ],
114
+ "additionalProperties": false,
115
+ "$id": "urn:disclosureos:experimental:migration-legacy-scores:0.1.0"
116
+ }
@@ -0,0 +1,120 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "kind": {
6
+ "type": "string",
7
+ "const": "legacy_migration_resolution"
8
+ },
9
+ "schemaVersion": {
10
+ "type": "string",
11
+ "const": "0.1.0"
12
+ },
13
+ "ledger": {
14
+ "type": "object",
15
+ "properties": {
16
+ "sha256": {
17
+ "type": "string",
18
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
19
+ },
20
+ "byteLength": {
21
+ "type": "integer",
22
+ "minimum": 1,
23
+ "maximum": 268435456
24
+ }
25
+ },
26
+ "required": [
27
+ "sha256",
28
+ "byteLength"
29
+ ],
30
+ "additionalProperties": false
31
+ },
32
+ "decidedBy": {
33
+ "type": "string",
34
+ "minLength": 1,
35
+ "pattern": "\\S"
36
+ },
37
+ "decidedAt": {
38
+ "type": "string",
39
+ "allOf": [
40
+ {
41
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
42
+ },
43
+ {
44
+ "pattern": "^(?!0000)"
45
+ }
46
+ ]
47
+ },
48
+ "decisions": {
49
+ "maxItems": 20000,
50
+ "type": "array",
51
+ "items": {
52
+ "oneOf": [
53
+ {
54
+ "type": "object",
55
+ "properties": {
56
+ "identity": {
57
+ "type": "string",
58
+ "pattern": "^legacy-[a-f0-9]{64}(?![\\s\\S])"
59
+ },
60
+ "rationale": {
61
+ "type": "string",
62
+ "minLength": 1,
63
+ "pattern": "\\S"
64
+ },
65
+ "action": {
66
+ "type": "string",
67
+ "const": "select"
68
+ },
69
+ "revision": {
70
+ "type": "string",
71
+ "pattern": "^[a-f0-9]{64}(?![\\s\\S])"
72
+ }
73
+ },
74
+ "required": [
75
+ "identity",
76
+ "rationale",
77
+ "action",
78
+ "revision"
79
+ ],
80
+ "additionalProperties": false
81
+ },
82
+ {
83
+ "type": "object",
84
+ "properties": {
85
+ "identity": {
86
+ "type": "string",
87
+ "pattern": "^legacy-[a-f0-9]{64}(?![\\s\\S])"
88
+ },
89
+ "rationale": {
90
+ "type": "string",
91
+ "minLength": 1,
92
+ "pattern": "\\S"
93
+ },
94
+ "action": {
95
+ "type": "string",
96
+ "const": "defer"
97
+ }
98
+ },
99
+ "required": [
100
+ "identity",
101
+ "rationale",
102
+ "action"
103
+ ],
104
+ "additionalProperties": false
105
+ }
106
+ ]
107
+ }
108
+ }
109
+ },
110
+ "required": [
111
+ "kind",
112
+ "schemaVersion",
113
+ "ledger",
114
+ "decidedBy",
115
+ "decidedAt",
116
+ "decisions"
117
+ ],
118
+ "additionalProperties": false,
119
+ "$id": "urn:disclosureos:experimental:migration-resolution:0.1.0"
120
+ }