@welldot/core 0.1.1 → 0.2.3

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.
@@ -0,0 +1,954 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://raw.githubusercontent.com/rafaeelneto/welldot/main/packages/core/docs/schema/v2/well.schema.json",
4
+ "title": "well",
5
+ "description": "The .well open format — a JSON standard for water well data. Depths in meters, diameters in millimeters, measured from ground level.",
6
+ "type": "object",
7
+ "properties": {
8
+ "version": {
9
+ "type": "integer"
10
+ },
11
+ "@context": {
12
+ "anyOf": [
13
+ {
14
+ "type": "string"
15
+ },
16
+ {
17
+ "type": "array",
18
+ "items": {}
19
+ },
20
+ {
21
+ "type": "object",
22
+ "additionalProperties": {}
23
+ }
24
+ ]
25
+ },
26
+ "well_id": {
27
+ "type": "array",
28
+ "items": {
29
+ "type": "object",
30
+ "properties": {
31
+ "authority": {
32
+ "type": "string"
33
+ },
34
+ "id": {
35
+ "type": "string"
36
+ },
37
+ "primary": {
38
+ "type": "boolean"
39
+ }
40
+ },
41
+ "required": [
42
+ "authority",
43
+ "id"
44
+ ],
45
+ "additionalProperties": false
46
+ }
47
+ },
48
+ "location": {
49
+ "type": "object",
50
+ "properties": {
51
+ "lat": {
52
+ "type": "number"
53
+ },
54
+ "lng": {
55
+ "type": "number"
56
+ },
57
+ "elevation": {
58
+ "type": "number"
59
+ },
60
+ "properties": {
61
+ "type": "object",
62
+ "properties": {
63
+ "elevation_datum": {
64
+ "type": "string"
65
+ },
66
+ "crs": {
67
+ "type": "string"
68
+ },
69
+ "lat_precision": {
70
+ "type": "number"
71
+ },
72
+ "lng_precision": {
73
+ "type": "number"
74
+ },
75
+ "elevation_precision": {
76
+ "type": "number"
77
+ },
78
+ "original_crs": {
79
+ "type": "string"
80
+ }
81
+ },
82
+ "additionalProperties": false
83
+ }
84
+ },
85
+ "required": [
86
+ "lat",
87
+ "lng"
88
+ ],
89
+ "additionalProperties": false
90
+ },
91
+ "profiles": {
92
+ "type": "array",
93
+ "items": {
94
+ "type": "string",
95
+ "format": "uri"
96
+ }
97
+ },
98
+ "well_type": {
99
+ "type": "string"
100
+ },
101
+ "name": {
102
+ "type": "string"
103
+ },
104
+ "well_driller": {
105
+ "type": "string"
106
+ },
107
+ "construction_date": {
108
+ "type": "string",
109
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
110
+ },
111
+ "obs": {
112
+ "type": "string"
113
+ },
114
+ "lat": {
115
+ "type": "number"
116
+ },
117
+ "lng": {
118
+ "type": "number"
119
+ },
120
+ "elevation": {
121
+ "type": "number"
122
+ },
123
+ "well_depth": {
124
+ "type": "number"
125
+ },
126
+ "bore_hole": {
127
+ "type": "array",
128
+ "items": {
129
+ "type": "object",
130
+ "properties": {
131
+ "from": {
132
+ "type": "number"
133
+ },
134
+ "to": {
135
+ "type": "number"
136
+ },
137
+ "diameter": {
138
+ "type": "number"
139
+ },
140
+ "drilling_method": {
141
+ "type": "string"
142
+ }
143
+ },
144
+ "required": [
145
+ "from",
146
+ "to",
147
+ "diameter"
148
+ ],
149
+ "additionalProperties": false
150
+ }
151
+ },
152
+ "well_case": {
153
+ "type": "array",
154
+ "items": {
155
+ "type": "object",
156
+ "properties": {
157
+ "from": {
158
+ "type": "number"
159
+ },
160
+ "to": {
161
+ "type": "number"
162
+ },
163
+ "type": {
164
+ "type": "string"
165
+ },
166
+ "diameter": {
167
+ "type": "number"
168
+ }
169
+ },
170
+ "required": [
171
+ "from",
172
+ "to",
173
+ "type",
174
+ "diameter"
175
+ ],
176
+ "additionalProperties": false
177
+ }
178
+ },
179
+ "reduction": {
180
+ "type": "array",
181
+ "items": {
182
+ "type": "object",
183
+ "properties": {
184
+ "from": {
185
+ "type": "number"
186
+ },
187
+ "to": {
188
+ "type": "number"
189
+ },
190
+ "diam_from": {
191
+ "type": "number"
192
+ },
193
+ "diam_to": {
194
+ "type": "number"
195
+ },
196
+ "type": {
197
+ "type": "string"
198
+ }
199
+ },
200
+ "required": [
201
+ "from",
202
+ "to",
203
+ "diam_from",
204
+ "diam_to",
205
+ "type"
206
+ ],
207
+ "additionalProperties": false
208
+ }
209
+ },
210
+ "well_screen": {
211
+ "type": "array",
212
+ "items": {
213
+ "type": "object",
214
+ "properties": {
215
+ "from": {
216
+ "type": "number"
217
+ },
218
+ "to": {
219
+ "type": "number"
220
+ },
221
+ "type": {
222
+ "type": "string"
223
+ },
224
+ "diameter": {
225
+ "type": "number"
226
+ },
227
+ "screen_slot": {
228
+ "type": "number"
229
+ }
230
+ },
231
+ "required": [
232
+ "from",
233
+ "to",
234
+ "type",
235
+ "diameter",
236
+ "screen_slot"
237
+ ],
238
+ "additionalProperties": false
239
+ }
240
+ },
241
+ "surface_case": {
242
+ "type": "array",
243
+ "items": {
244
+ "type": "object",
245
+ "properties": {
246
+ "from": {
247
+ "type": "number"
248
+ },
249
+ "to": {
250
+ "type": "number"
251
+ },
252
+ "diameter": {
253
+ "type": "number"
254
+ }
255
+ },
256
+ "required": [
257
+ "from",
258
+ "to",
259
+ "diameter"
260
+ ],
261
+ "additionalProperties": false
262
+ }
263
+ },
264
+ "hole_fill": {
265
+ "type": "array",
266
+ "items": {
267
+ "type": "object",
268
+ "properties": {
269
+ "from": {
270
+ "type": "number"
271
+ },
272
+ "to": {
273
+ "type": "number"
274
+ },
275
+ "type": {
276
+ "type": "string",
277
+ "enum": [
278
+ "gravel_pack",
279
+ "seal"
280
+ ]
281
+ },
282
+ "diameter": {
283
+ "type": "number"
284
+ },
285
+ "description": {
286
+ "type": "string"
287
+ }
288
+ },
289
+ "required": [
290
+ "from",
291
+ "to",
292
+ "type",
293
+ "diameter",
294
+ "description"
295
+ ],
296
+ "additionalProperties": false
297
+ }
298
+ },
299
+ "cement_pad": {
300
+ "type": "object",
301
+ "properties": {
302
+ "type": {
303
+ "type": "string"
304
+ },
305
+ "width": {
306
+ "type": "number"
307
+ },
308
+ "thickness": {
309
+ "type": "number"
310
+ },
311
+ "length": {
312
+ "type": "number"
313
+ }
314
+ },
315
+ "required": [
316
+ "type",
317
+ "width",
318
+ "thickness",
319
+ "length"
320
+ ],
321
+ "additionalProperties": false
322
+ },
323
+ "lithology": {
324
+ "type": "array",
325
+ "items": {
326
+ "type": "object",
327
+ "properties": {
328
+ "from": {
329
+ "type": "number"
330
+ },
331
+ "to": {
332
+ "type": "number"
333
+ },
334
+ "description": {
335
+ "type": "string"
336
+ },
337
+ "color": {
338
+ "type": "string"
339
+ },
340
+ "texture": {
341
+ "type": "object",
342
+ "properties": {
343
+ "code": {
344
+ "type": [
345
+ "string",
346
+ "number"
347
+ ]
348
+ },
349
+ "vocabulary": {
350
+ "type": "string"
351
+ }
352
+ },
353
+ "required": [
354
+ "code"
355
+ ],
356
+ "additionalProperties": false
357
+ },
358
+ "geologic_unit": {
359
+ "type": "string"
360
+ },
361
+ "aquifer_unit": {
362
+ "type": "string"
363
+ }
364
+ },
365
+ "required": [
366
+ "from",
367
+ "to",
368
+ "description",
369
+ "color",
370
+ "texture",
371
+ "geologic_unit",
372
+ "aquifer_unit"
373
+ ],
374
+ "additionalProperties": false
375
+ }
376
+ },
377
+ "fractures": {
378
+ "type": "array",
379
+ "items": {
380
+ "type": "object",
381
+ "properties": {
382
+ "depth": {
383
+ "type": "number"
384
+ },
385
+ "water_intake": {
386
+ "type": "boolean"
387
+ },
388
+ "description": {
389
+ "type": "string"
390
+ },
391
+ "swarm": {
392
+ "type": "boolean"
393
+ },
394
+ "azimuth": {
395
+ "type": "number"
396
+ },
397
+ "dip": {
398
+ "type": "number"
399
+ },
400
+ "depth_precision": {
401
+ "type": "number"
402
+ }
403
+ },
404
+ "required": [
405
+ "depth",
406
+ "water_intake",
407
+ "description",
408
+ "swarm",
409
+ "azimuth",
410
+ "dip"
411
+ ],
412
+ "additionalProperties": false
413
+ }
414
+ },
415
+ "caves": {
416
+ "type": "array",
417
+ "items": {
418
+ "type": "object",
419
+ "properties": {
420
+ "from": {
421
+ "type": "number"
422
+ },
423
+ "to": {
424
+ "type": "number"
425
+ },
426
+ "water_intake": {
427
+ "type": "boolean"
428
+ },
429
+ "description": {
430
+ "type": "string"
431
+ }
432
+ },
433
+ "required": [
434
+ "from",
435
+ "to",
436
+ "water_intake",
437
+ "description"
438
+ ],
439
+ "additionalProperties": false
440
+ }
441
+ },
442
+ "hydrodynamic_events": {
443
+ "type": "array",
444
+ "items": {
445
+ "anyOf": [
446
+ {
447
+ "anyOf": [
448
+ {
449
+ "type": "object",
450
+ "properties": {
451
+ "id": {
452
+ "type": "string"
453
+ },
454
+ "type": {
455
+ "type": "string",
456
+ "const": "spot_measurement"
457
+ },
458
+ "datetime": {
459
+ "type": "string",
460
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})$"
461
+ },
462
+ "sequence": {
463
+ "type": "integer"
464
+ },
465
+ "operator": {
466
+ "type": "string"
467
+ },
468
+ "equipment": {
469
+ "type": "string"
470
+ },
471
+ "notes": {
472
+ "type": "string"
473
+ },
474
+ "static_level": {
475
+ "type": "number"
476
+ },
477
+ "static_level_precision": {
478
+ "type": "number"
479
+ },
480
+ "measurement_method": {
481
+ "type": "string"
482
+ },
483
+ "steps": {
484
+ "type": "array",
485
+ "items": {
486
+ "type": "object",
487
+ "properties": {
488
+ "rate": {
489
+ "type": "number"
490
+ },
491
+ "rate_precision": {
492
+ "type": "number"
493
+ },
494
+ "duration": {
495
+ "type": "number"
496
+ },
497
+ "readings": {
498
+ "type": "array",
499
+ "items": {
500
+ "type": "object",
501
+ "properties": {
502
+ "elapsed": {
503
+ "type": "number"
504
+ },
505
+ "depth": {
506
+ "type": "number"
507
+ },
508
+ "depth_precision": {
509
+ "type": "number"
510
+ },
511
+ "pressure": {
512
+ "type": "number"
513
+ }
514
+ },
515
+ "required": [
516
+ "elapsed",
517
+ "depth"
518
+ ],
519
+ "additionalProperties": false
520
+ }
521
+ }
522
+ },
523
+ "required": [
524
+ "rate"
525
+ ],
526
+ "additionalProperties": false
527
+ },
528
+ "maxItems": 1
529
+ },
530
+ "recovery": {
531
+ "type": "object",
532
+ "properties": {
533
+ "readings": {
534
+ "type": "array",
535
+ "items": {
536
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/steps/items/properties/readings/items"
537
+ }
538
+ }
539
+ },
540
+ "required": [
541
+ "readings"
542
+ ],
543
+ "additionalProperties": false
544
+ }
545
+ },
546
+ "required": [
547
+ "id",
548
+ "type",
549
+ "datetime",
550
+ "static_level"
551
+ ],
552
+ "additionalProperties": false
553
+ },
554
+ {
555
+ "type": "object",
556
+ "properties": {
557
+ "id": {
558
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/id"
559
+ },
560
+ "type": {
561
+ "type": "string",
562
+ "const": "constant_rate"
563
+ },
564
+ "datetime": {
565
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/datetime"
566
+ },
567
+ "sequence": {
568
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/sequence"
569
+ },
570
+ "operator": {
571
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/operator"
572
+ },
573
+ "equipment": {
574
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/equipment"
575
+ },
576
+ "notes": {
577
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/notes"
578
+ },
579
+ "static_level": {
580
+ "type": "number"
581
+ },
582
+ "static_level_precision": {
583
+ "type": "number"
584
+ },
585
+ "steps": {
586
+ "type": "array",
587
+ "minItems": 1,
588
+ "maxItems": 1,
589
+ "items": {
590
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/steps/items"
591
+ }
592
+ },
593
+ "recovery": {
594
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/recovery"
595
+ }
596
+ },
597
+ "required": [
598
+ "id",
599
+ "type",
600
+ "datetime"
601
+ ],
602
+ "additionalProperties": false
603
+ },
604
+ {
605
+ "type": "object",
606
+ "properties": {
607
+ "id": {
608
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/id"
609
+ },
610
+ "type": {
611
+ "type": "string",
612
+ "const": "step_drawdown"
613
+ },
614
+ "datetime": {
615
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/datetime"
616
+ },
617
+ "sequence": {
618
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/sequence"
619
+ },
620
+ "operator": {
621
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/operator"
622
+ },
623
+ "equipment": {
624
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/equipment"
625
+ },
626
+ "notes": {
627
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/notes"
628
+ },
629
+ "static_level": {
630
+ "type": "number"
631
+ },
632
+ "static_level_precision": {
633
+ "type": "number"
634
+ },
635
+ "steps": {
636
+ "type": "array",
637
+ "items": {
638
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/steps/items"
639
+ }
640
+ },
641
+ "recovery": {
642
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/recovery"
643
+ }
644
+ },
645
+ "required": [
646
+ "id",
647
+ "type",
648
+ "datetime",
649
+ "steps"
650
+ ],
651
+ "additionalProperties": false
652
+ },
653
+ {
654
+ "type": "object",
655
+ "properties": {
656
+ "id": {
657
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/id"
658
+ },
659
+ "type": {
660
+ "type": "string",
661
+ "const": "airlift"
662
+ },
663
+ "datetime": {
664
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/datetime"
665
+ },
666
+ "sequence": {
667
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/sequence"
668
+ },
669
+ "operator": {
670
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/operator"
671
+ },
672
+ "equipment": {
673
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/equipment"
674
+ },
675
+ "notes": {
676
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/notes"
677
+ },
678
+ "steps": {
679
+ "type": "array",
680
+ "items": {
681
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/steps/items"
682
+ }
683
+ },
684
+ "recovery": {
685
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/recovery"
686
+ }
687
+ },
688
+ "required": [
689
+ "id",
690
+ "type",
691
+ "datetime",
692
+ "steps"
693
+ ],
694
+ "additionalProperties": false
695
+ },
696
+ {
697
+ "type": "object",
698
+ "properties": {
699
+ "id": {
700
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/id"
701
+ },
702
+ "type": {
703
+ "type": "string",
704
+ "const": "recovery_only"
705
+ },
706
+ "datetime": {
707
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/datetime"
708
+ },
709
+ "sequence": {
710
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/sequence"
711
+ },
712
+ "operator": {
713
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/operator"
714
+ },
715
+ "equipment": {
716
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/equipment"
717
+ },
718
+ "notes": {
719
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/notes"
720
+ },
721
+ "pumping_rate": {
722
+ "type": "number"
723
+ },
724
+ "pumping_duration": {
725
+ "type": "number"
726
+ },
727
+ "recovery": {
728
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/recovery"
729
+ }
730
+ },
731
+ "required": [
732
+ "id",
733
+ "type",
734
+ "datetime",
735
+ "recovery"
736
+ ],
737
+ "additionalProperties": false
738
+ }
739
+ ]
740
+ },
741
+ {
742
+ "type": "object",
743
+ "properties": {
744
+ "id": {
745
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/id"
746
+ },
747
+ "type": {
748
+ "type": "string"
749
+ },
750
+ "datetime": {
751
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/datetime"
752
+ },
753
+ "sequence": {
754
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/sequence"
755
+ },
756
+ "operator": {
757
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/operator"
758
+ },
759
+ "equipment": {
760
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/equipment"
761
+ },
762
+ "notes": {
763
+ "$ref": "#/properties/hydrodynamic_events/items/anyOf/0/anyOf/0/properties/notes"
764
+ }
765
+ },
766
+ "required": [
767
+ "id",
768
+ "type",
769
+ "datetime"
770
+ ],
771
+ "additionalProperties": true
772
+ }
773
+ ]
774
+ }
775
+ },
776
+ "aquifer_analysis": {
777
+ "type": "array",
778
+ "items": {
779
+ "type": "object",
780
+ "properties": {
781
+ "id": {
782
+ "type": "string"
783
+ },
784
+ "datetime": {
785
+ "type": "string",
786
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})$"
787
+ },
788
+ "analyst": {
789
+ "type": "string"
790
+ },
791
+ "source_event_ids": {
792
+ "type": "array",
793
+ "items": {
794
+ "type": "string"
795
+ }
796
+ },
797
+ "method": {
798
+ "type": "string"
799
+ },
800
+ "static_level": {
801
+ "type": "number"
802
+ },
803
+ "static_level_precision": {
804
+ "type": "number"
805
+ },
806
+ "static_level_source_id": {
807
+ "type": "string"
808
+ },
809
+ "dynamic_level": {
810
+ "type": "number"
811
+ },
812
+ "dynamic_level_precision": {
813
+ "type": "number"
814
+ },
815
+ "flow_rate": {
816
+ "type": "number"
817
+ },
818
+ "flow_rate_precision": {
819
+ "type": "number"
820
+ },
821
+ "max_flow_rate": {
822
+ "type": "number"
823
+ },
824
+ "max_flow_rate_precision": {
825
+ "type": "number"
826
+ },
827
+ "max_flow_rate_basis": {
828
+ "type": "string"
829
+ },
830
+ "specific_capacity": {
831
+ "type": "number"
832
+ },
833
+ "transmissivity": {
834
+ "type": "number"
835
+ },
836
+ "storativity": {
837
+ "type": [
838
+ "number",
839
+ "null"
840
+ ]
841
+ },
842
+ "hydraulic_conductivity": {
843
+ "type": "number"
844
+ },
845
+ "aquifer_thickness": {
846
+ "type": "number"
847
+ },
848
+ "jacob_b": {
849
+ "type": "number"
850
+ },
851
+ "jacob_c": {
852
+ "type": "number"
853
+ },
854
+ "well_efficiency_pct": {
855
+ "type": "number"
856
+ },
857
+ "notes": {
858
+ "type": "string"
859
+ }
860
+ },
861
+ "required": [
862
+ "id",
863
+ "datetime",
864
+ "source_event_ids"
865
+ ],
866
+ "additionalProperties": false
867
+ }
868
+ },
869
+ "history_logs": {
870
+ "type": "array",
871
+ "items": {
872
+ "type": "object",
873
+ "properties": {
874
+ "id": {
875
+ "type": "string"
876
+ },
877
+ "datetime": {
878
+ "type": "string",
879
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})$"
880
+ },
881
+ "updated_at": {
882
+ "type": "string",
883
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})$"
884
+ },
885
+ "category": {
886
+ "type": "string"
887
+ },
888
+ "description": {
889
+ "type": "string"
890
+ },
891
+ "author": {
892
+ "type": "string"
893
+ },
894
+ "severity": {
895
+ "type": "string"
896
+ },
897
+ "attachments": {
898
+ "type": "array",
899
+ "items": {
900
+ "type": "object",
901
+ "properties": {
902
+ "id": {
903
+ "type": "string"
904
+ },
905
+ "uri": {
906
+ "type": "string",
907
+ "format": "uri"
908
+ },
909
+ "media_type": {
910
+ "type": "string"
911
+ },
912
+ "filename": {
913
+ "type": "string"
914
+ },
915
+ "description": {
916
+ "type": "string"
917
+ },
918
+ "sha256": {
919
+ "type": "string"
920
+ }
921
+ },
922
+ "required": [
923
+ "id",
924
+ "uri",
925
+ "media_type"
926
+ ],
927
+ "additionalProperties": false
928
+ }
929
+ }
930
+ },
931
+ "required": [
932
+ "id",
933
+ "datetime",
934
+ "category",
935
+ "description"
936
+ ],
937
+ "additionalProperties": false
938
+ }
939
+ }
940
+ },
941
+ "required": [
942
+ "version",
943
+ "bore_hole",
944
+ "well_case",
945
+ "reduction",
946
+ "well_screen",
947
+ "surface_case",
948
+ "hole_fill",
949
+ "lithology",
950
+ "fractures",
951
+ "caves"
952
+ ],
953
+ "additionalProperties": true
954
+ }