hsds_transformer 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1579 @@
1
+ {
2
+ "name": "human_services_data",
3
+ "title": "Human Services Data Specification Template",
4
+ "description": "This is a template datapackage.json file for producing a Tabular Data Package of data according to the Human Services Data Specification. You should provide an edited version of this file as part of any datapackage you provide, updating the title, description, license and homepage information to reflect the data you are publishing.",
5
+ "license": {
6
+ "url": "https://creativecommons.org/licenses/by-sa/4.0/",
7
+ "type": "CC-BY-SA-4.0",
8
+ "name": "Creative Commons Attribution-ShareAlike 4.0"
9
+ },
10
+ "version": "1.0",
11
+ "homepage": "http://docs.openreferral.org",
12
+ "resources": [{
13
+ "name": "organization",
14
+ "path": "organizations.csv",
15
+ "description": "The organization record is used to provide basic description and details about each organization delivering services. Each service should be linked to the organization responsible for its delivery. One organization may deliver many services.",
16
+ "format": "csv",
17
+ "mediatype": "text/csv",
18
+ "schema": {
19
+ "fields": [{
20
+ "name": "id",
21
+ "type": "string",
22
+ "description": "Each organization must have a unique identifier.",
23
+ "constraints": {
24
+ "required": true,
25
+ "unique": true
26
+ }
27
+ },
28
+ {
29
+ "name": "name",
30
+ "type": "string",
31
+ "description": "The official or public name of the organization.",
32
+ "constraints": {
33
+ "required": true
34
+ }
35
+ },
36
+ {
37
+ "name": "alternate_name",
38
+ "type": "string",
39
+ "description": "Alternative or commonly used name for the organization.",
40
+ "constraints": {
41
+ "required": false
42
+ }
43
+ },
44
+ {
45
+ "name": "description",
46
+ "type": "string",
47
+ "description": "A brief summary about the organization. It can contain markup such as HTML or Markdown.",
48
+ "constraints": {
49
+ "required": true
50
+ }
51
+ },
52
+ {
53
+ "name": "email",
54
+ "type": "string",
55
+ "description": "The contact e-mail address for the organization.",
56
+ "format": "email",
57
+ "constraints": {
58
+ "required": false
59
+ }
60
+ },
61
+ {
62
+ "name": "url",
63
+ "type": "string",
64
+ "format": "url",
65
+ "description": "The URL (website address) of the organization.",
66
+ "constraints": {
67
+ "required": false
68
+ }
69
+ },
70
+ {
71
+ "name": "tax_status",
72
+ "type": "string",
73
+ "description": "Government assigned tax designation for tax-exempt organizations.",
74
+ "constraints": {
75
+ "required": false
76
+ }
77
+ },
78
+ {
79
+ "name": "tax_id",
80
+ "type": "string",
81
+ "description": "A government issued identifier used for the purpose of tax administration.",
82
+ "constraints": {
83
+ "required": false
84
+ }
85
+ },
86
+ {
87
+ "name": "year_incorporated",
88
+ "type": "date",
89
+ "format": "%Y",
90
+ "description": "The year in which the organization was legally formed.",
91
+ "constraints": {
92
+ "required": false
93
+ }
94
+ },
95
+ {
96
+ "name": "legal_status",
97
+ "type": "string",
98
+ "description": "The legal status defines the conditions that an organization is operating under; e.g. non-profit, private corporation or a government organization.",
99
+ "constraints": {
100
+ "required": false
101
+ }
102
+ }
103
+ ],
104
+ "primaryKey": "id"
105
+ }
106
+ },
107
+ {
108
+ "name": "program",
109
+ "path": "programs.csv",
110
+ "description": "Some organizations organise their services into programs. A program brings together a number of related services.",
111
+ "format": "csv",
112
+ "mediatype": "text/csv",
113
+ "schema": {
114
+ "fields": [{
115
+ "name": "id",
116
+ "type": "string",
117
+ "description": "Each program must have a unique identifier.",
118
+ "constraints": {
119
+ "required": true,
120
+ "unique": true
121
+ }
122
+ },
123
+ {
124
+ "name": "organization_id",
125
+ "type": "string",
126
+ "description": "Each program must belong to a single organization. The identifier of the organization should be given here.",
127
+ "constraints": {
128
+ "required": true
129
+ }
130
+ },
131
+ {
132
+ "name": "name",
133
+ "description": "The name of the program",
134
+ "type": "string",
135
+ "constraints": {
136
+ "required": true
137
+ }
138
+ },
139
+ {
140
+ "name": "alternate_name",
141
+ "description": "An alternative name for the program",
142
+ "type": "string",
143
+ "constraints": {
144
+ "required": false
145
+ }
146
+ }
147
+ ],
148
+ "primaryKey": "id",
149
+ "foreignKeys": [{
150
+ "fields": "organization_id",
151
+ "reference": {
152
+ "resource": "organization",
153
+ "fields": "id"
154
+ }
155
+ }]
156
+ }
157
+ },
158
+ {
159
+ "name": "service",
160
+ "description": "Services are provided by organizations to a range of different groups. Details on where each service is delivered are contained in the services_at_location table.",
161
+ "path": "services.csv",
162
+ "format": "csv",
163
+ "mediatype": "text/csv",
164
+ "schema": {
165
+ "fields": [{
166
+ "name": "id",
167
+ "type": "string",
168
+ "description": "Each service must have a unique identifier.",
169
+ "constraints": {
170
+ "required": true,
171
+ "unique": true
172
+ }
173
+ },
174
+ {
175
+ "name": "organization_id",
176
+ "type": "string",
177
+ "description": "The identifier of the organization that provides this service.",
178
+ "constraints": {
179
+ "required": true
180
+ }
181
+
182
+ },
183
+ {
184
+ "name": "program_id",
185
+ "description": "The identifier of the program this service is delivered under.",
186
+ "type": "string",
187
+ "constraints": {
188
+ "required": false
189
+ }
190
+ },
191
+ {
192
+ "name": "name",
193
+ "description": "The official or public name of the service.",
194
+ "type": "string",
195
+ "constraints": {
196
+ "required": true
197
+ }
198
+ },
199
+ {
200
+ "name": "alternate_name",
201
+ "description": "Alternative or commonly used name for a service.",
202
+ "type": "string",
203
+ "constraints": {
204
+ "required": false
205
+ }
206
+
207
+ },
208
+ {
209
+ "name": "description",
210
+ "description": "A description of the service.",
211
+ "type": "string",
212
+ "constraints": {
213
+ "required": false
214
+ }
215
+ },
216
+ {
217
+ "name": "url",
218
+ "description": "URL of the service",
219
+ "type": "string",
220
+ "format": "url",
221
+ "constraints": {
222
+ "required": false
223
+ }
224
+ },
225
+ {
226
+ "name": "email",
227
+ "description": "Email address for the service",
228
+ "type": "string",
229
+ "format": "email",
230
+ "constraints": {
231
+ "required": false
232
+ }
233
+ },
234
+ {
235
+ "name": "status",
236
+ "description": "The current status of the service.",
237
+ "type": "string",
238
+ "constraints": {
239
+ "enum": ["active", "inactive", "defunct", "temporarily closed"],
240
+ "required": true
241
+ }
242
+ },
243
+ {
244
+ "name": "interpretation_services",
245
+ "description": "A description of any interpretation services available for accessing this service.",
246
+ "type": "string",
247
+ "constraints": {
248
+ "required": false
249
+ }
250
+ },
251
+ {
252
+ "name": "application_process",
253
+ "description": "The steps needed to access the service.",
254
+ "type": "string",
255
+ "constraints": {
256
+ "required": false
257
+ }
258
+ },
259
+ {
260
+ "name": "wait_time",
261
+ "description": "Time a client may expect to wait before receiving a service.",
262
+ "type": "string",
263
+ "constraints": {
264
+ "required": false
265
+ }
266
+ },
267
+ {
268
+ "name": "fees",
269
+ "description": "Details of any charges for service users to access this service.",
270
+ "type": "string",
271
+ "constraints": {
272
+ "required": false
273
+ }
274
+ },
275
+ {
276
+ "name": "accreditations",
277
+ "description": "Details of any accreditations. Accreditation is the formal evaluation of an organization or program against best practice standards set by an accrediting organization.",
278
+ "type": "string",
279
+ "constraints": {
280
+ "required": false
281
+ }
282
+ },
283
+ {
284
+ "name": "licenses",
285
+ "description": "An organization may have a license issued by a government entity to operate legally. A list of any such licenses can be provided here.",
286
+ "type": "string",
287
+ "constraints": {
288
+ "required": false
289
+ }
290
+ },
291
+ {
292
+ "name": "taxonomy_ids",
293
+ "description": "(Deprecated) A comma separated list of identifiers from the taxonomy table. This field is deprecated in favour of using the service_taxonomy table.",
294
+ "type": "string",
295
+ "constraints": {
296
+ "required": false
297
+ }
298
+ }
299
+ ],
300
+ "primaryKey": "id",
301
+ "foreignKeys": [{
302
+ "fields": "organization_id",
303
+ "reference": {
304
+ "resource": "organization",
305
+ "fields": "id"
306
+ }
307
+ },
308
+ {
309
+ "fields": "program_id",
310
+ "reference": {
311
+ "resource": "program",
312
+ "fields": "id"
313
+ }
314
+ }
315
+ ]
316
+ }
317
+ },
318
+ {
319
+ "name": "service_taxonomy",
320
+ "path": "services_taxonomy.csv",
321
+ "description": "The service taxonomy creates a link between a service and one or more classifications that describe the nature of the service provided.",
322
+ "format": "csv",
323
+ "mediatype": "text/csv",
324
+ "schema": {
325
+ "fields": [{
326
+ "name": "id",
327
+ "type": "string",
328
+ "description": "Each service must have a unique identifier.",
329
+ "constraints": {
330
+ "required": true,
331
+ "unique": true
332
+ }
333
+ },
334
+ {
335
+ "name": "service_id",
336
+ "description": "The identifier of the service at a given location.",
337
+ "type": "string",
338
+ "constraints": {
339
+ "required": true
340
+ }
341
+ },
342
+ {
343
+ "name": "taxonomy_id",
344
+ "description": "The identifier of this classification from the taxonomy table.",
345
+ "type": "string",
346
+ "constraints": {
347
+ "required": true
348
+ }
349
+ },
350
+ {
351
+ "name": "taxonomy_detail",
352
+ "description": "For advanced uses, this field can indicate a constraint on this classification, using * to combine two taxonomy terms. For example: 'Food Pantry*Homeless' (where 'Food Pantry' and 'Homeless' are identifiers in the taxonomy table) to indicate a food pantry service for homeless clients, but not available to other client groups. In this example, there would be two entries in service_taxonomy, one with 'Food Pantry' and one for 'Homeless' in the taxonomy_id field, but both with the same 'Food Pantry*Homeless' value in the taxonomy_detail field.",
353
+ "type": "string"
354
+ }
355
+ ],
356
+ "primaryKey": "id",
357
+ "foreignKeys": [{
358
+ "fields": "service_id",
359
+ "reference": {
360
+ "resource": "service",
361
+ "fields": "id"
362
+ }
363
+ },
364
+ {
365
+ "fields": "taxonomy_id",
366
+ "reference": {
367
+ "resource": "taxonomy",
368
+ "fields": "id"
369
+ }
370
+ }
371
+ ]
372
+ }
373
+ },
374
+ {
375
+ "name": "service_at_location",
376
+ "path": "services_at_location.csv",
377
+ "description": "The services at location table creates a link between a service and a specific location.",
378
+ "format": "csv",
379
+ "mediatype": "text/csv",
380
+ "schema": {
381
+ "fields": [{
382
+ "name": "id",
383
+ "description": "Each entry must have a unique identifier.",
384
+ "type": "string",
385
+ "constraints": {
386
+ "required": true,
387
+ "unique": true
388
+ }
389
+ },
390
+ {
391
+ "name": "service_id",
392
+ "description": "The identifier of the service at a given location.",
393
+ "type": "string",
394
+ "constraints": {
395
+ "required": true
396
+ }
397
+ },
398
+ {
399
+ "name": "location_id",
400
+ "description": "The identifier of the location where this service operates.",
401
+ "type": "string",
402
+ "constraints": {
403
+ "required": true
404
+ }
405
+ },
406
+ {
407
+ "name": "description",
408
+ "description": "Any additional information that should be displayed to users about the service at this specific location.",
409
+ "type": "string"
410
+ }
411
+ ],
412
+ "primaryKey": "id",
413
+ "foreignKeys": [{
414
+ "fields": "service_id",
415
+ "reference": {
416
+ "resource": "service",
417
+ "fields": "id"
418
+ }
419
+ },
420
+ {
421
+ "fields": "location_id",
422
+ "reference": {
423
+ "resource": "location",
424
+ "fields": "id"
425
+ }
426
+ }
427
+ ]
428
+ }
429
+ },
430
+ {
431
+ "name": "location",
432
+ "path": "locations.csv",
433
+ "description": "The location tables provides details of the locations where organizations operate. Locations may be virtual, and one organization may have many locations.",
434
+ "format": "csv",
435
+ "mediatype": "text/csv",
436
+ "schema": {
437
+ "fields": [{
438
+ "name": "id",
439
+ "description": "Each location must have a unique identifier",
440
+ "type": "string",
441
+ "constraints": {
442
+ "required": true
443
+ }
444
+ },
445
+ {
446
+ "name": "organization_id",
447
+ "description": "Each location entry should be linked to a single organization. This is the organization that is responsible for maintaining information about this location. The identifier of the organization should be given here. Details of the services the organisation delivers at this location should be provided in the services_at_location table.",
448
+ "type": "string"
449
+ },
450
+ {
451
+ "name": "name",
452
+ "description": "The name of the location",
453
+ "type": "string"
454
+ },
455
+ {
456
+ "name": "alternate_name",
457
+ "description": "An alternative name for the location",
458
+ "type": "string"
459
+ },
460
+ {
461
+ "name": "description",
462
+ "description": "A description of this location.",
463
+ "type": "string",
464
+ "constraints": {
465
+ "required": false
466
+ }
467
+ },
468
+ {
469
+ "name": "transportation",
470
+ "description": "A description of the access to public or private transportation to and from the location.",
471
+ "type": "string"
472
+ },
473
+ {
474
+ "name": "latitude",
475
+ "description": "Y coordinate of location expressed in decimal degrees in WGS84 datum.",
476
+ "type": "number"
477
+ },
478
+ {
479
+ "name": "longitude",
480
+ "description": "X coordinate of location expressed in decimal degrees in WGS84 datum.",
481
+ "type": "number"
482
+ }
483
+ ],
484
+ "primaryKey": "id",
485
+ "foreignKeys": [{
486
+ "fields": "organization_id",
487
+ "reference": {
488
+ "resource": "organization",
489
+ "fields": "id"
490
+ }
491
+ }]
492
+ }
493
+ },
494
+ {
495
+ "name": "phone",
496
+ "path": "phones.csv",
497
+ "description": "The phone table contains details of the telephone numbers are used to contact organizations, services, and locations.",
498
+ "format": "csv",
499
+ "mediatype": "text/csv",
500
+ "schema": {
501
+ "fields": [{
502
+ "name": "id",
503
+ "description": "Each entry must have a unique identifier",
504
+ "type": "string",
505
+ "constraints": {
506
+ "required": true
507
+ }
508
+ }, {
509
+ "name": "location_id",
510
+ "description": "The identifier of the location where this phone number is located",
511
+ "type": "string"
512
+ },
513
+ {
514
+ "name": "service_id",
515
+ "description": "The identifier of the service for which this is the phone number",
516
+ "type": "string"
517
+ },
518
+ {
519
+ "name": "organization_id",
520
+ "description": "The identifier of the organisation for which this is the phone number",
521
+ "type": "string"
522
+ },
523
+ {
524
+ "name": "contact_id",
525
+ "description": "The identifier of the contact for which this is the phone number",
526
+ "type": "string"
527
+ },
528
+ {
529
+ "name": "service_at_location_id",
530
+ "description": "The identifier of the 'service at location' table entry, when this phone number is specific to a service in a particular location.",
531
+ "type": "string"
532
+ },
533
+ {
534
+ "name": "number",
535
+ "description": "The phone number",
536
+ "type": "string",
537
+ "constraints": {
538
+ "required": true
539
+ }
540
+ },
541
+ {
542
+ "name": "extension",
543
+ "description": "The extension of the phone number",
544
+ "type": "number"
545
+ },
546
+ {
547
+ "name": "type",
548
+ "description": "Indicates the type of phone service, drawing from the RFC6350 list of types (text (for SMS), voice, fax, cell, video, pager, textphone).",
549
+ "type": "string",
550
+ "constraints": {
551
+ "enum": ["text", "voice", "fax", "cell", "video", "pager", "textphone"]
552
+ }
553
+ },
554
+ {
555
+ "name": "language",
556
+ "description": "A comma separated list of ISO 639-1, or ISO 639-2 [language codes](available at http://www.loc.gov/standards/iso639-2/php/code_list.php) to represent the languages available from this phone service. The three-letter codes from ISO 639-2 provide greater accuracy when describing variants of languages, which may be relevant to particular communities.",
557
+ "type": "string"
558
+ },
559
+ {
560
+ "name": "description",
561
+ "description": "A description providing extra information about the phone service (e.g. any special arrangements for accessing, or details of availability at particular times.",
562
+ "type": "string"
563
+ },
564
+ {
565
+ "name": "department",
566
+ "description": "(Deprecated) The department for which this is the phone number. This field is deprecated and will be removed in a future version of HSDS.",
567
+ "type": "string"
568
+ }
569
+ ],
570
+ "primaryKey": "id",
571
+ "foreignKeys": [{
572
+ "fields": "organization_id",
573
+ "reference": {
574
+ "resource": "organization",
575
+ "fields": "id"
576
+ }
577
+ },
578
+ {
579
+ "fields": "location_id",
580
+ "reference": {
581
+ "resource": "location",
582
+ "fields": "id"
583
+ }
584
+ },
585
+ {
586
+ "fields": "service_id",
587
+ "reference": {
588
+ "resource": "service",
589
+ "fields": "id"
590
+ }
591
+ },
592
+ {
593
+ "fields": "contact_id",
594
+ "reference": {
595
+ "resource": "contact",
596
+ "fields": "id"
597
+ }
598
+ },
599
+ {
600
+ "fields": "service_at_location_id",
601
+ "reference": {
602
+ "resource": "service_at_location",
603
+ "fields": "id"
604
+ }
605
+ }
606
+ ]
607
+ }
608
+ },
609
+ {
610
+ "name": "contact",
611
+ "path": "contacts.csv",
612
+ "description": "The contact table contains details of the named contacts for services and organizations. Note that in the HSDS data package format, if an individual is the contact for multiple services, their details may be duplicated multiple times in this table, each time with a new identifier, and with the rows containing different service ids.",
613
+ "format": "csv",
614
+ "mediatype": "text/csv",
615
+ "schema": {
616
+ "fields": [{
617
+ "name": "id",
618
+ "description": "Each contact must have a unique identifier",
619
+ "type": "string",
620
+ "constraints": {
621
+ "required": true
622
+ }
623
+ },
624
+ {
625
+ "name": "organization_id",
626
+ "description": "The identifier of the organization for which this is a contact",
627
+ "type": "string"
628
+ },
629
+ {
630
+ "name": "service_id",
631
+ "description": "The identifier of the service for which this is a contact",
632
+ "type": "string"
633
+ },
634
+ {
635
+ "name": "service_at_location_id",
636
+ "description": "The identifier of the 'service at location' table entry, when this contact is specific to a service in a particular location.",
637
+ "type": "string"
638
+ },
639
+ {
640
+ "name": "name",
641
+ "description": "The name of the person",
642
+ "type": "string"
643
+ },
644
+ {
645
+ "name": "title",
646
+ "description": "The job title of the person",
647
+ "type": "string"
648
+ },
649
+ {
650
+ "name": "department",
651
+ "description": "The department that the person is part of",
652
+ "type": "string"
653
+ },
654
+ {
655
+ "name": "email",
656
+ "description": "The email address of the person",
657
+ "type": "string",
658
+ "format": "email"
659
+ }
660
+ ],
661
+ "primaryKey": "id",
662
+ "foreignKeys": [{
663
+ "fields": "organization_id",
664
+ "reference": {
665
+ "resource": "organization",
666
+ "fields": "id"
667
+ }
668
+ },
669
+ {
670
+ "fields": "service_id",
671
+ "reference": {
672
+ "resource": "service",
673
+ "fields": "id"
674
+ }
675
+ },
676
+ {
677
+ "fields": "service_at_location_id",
678
+ "reference": {
679
+ "resource": "service_at_location",
680
+ "fields": "id"
681
+ }
682
+ }
683
+ ]
684
+ }
685
+ },
686
+ {
687
+ "name": "physical_address",
688
+ "path": "physical_addresses.csv",
689
+ "description": "The addresses table contains the physical addresses for locations",
690
+ "format": "csv",
691
+ "mediatype": "text/csv",
692
+ "schema": {
693
+ "fields": [{
694
+ "name": "id",
695
+ "description": "Each physical address must have a unique identifier.",
696
+ "type": "string",
697
+ "constraints": {
698
+ "required": true
699
+ }
700
+ },
701
+ {
702
+ "name": "location_id",
703
+ "description": "The identifier of the location for which this is the address.",
704
+ "type": "string"
705
+ },
706
+ {
707
+ "name": "attention",
708
+ "description": "The person or entity whose attention should be sought at the location (Often included as 'care of' component of an address.)",
709
+ "type": "string"
710
+ },
711
+ {
712
+ "name": "address_1",
713
+ "description": "The first line(s) of the address, including office, building number and street.",
714
+ "type": "string",
715
+ "constraints": {
716
+ "required": true
717
+ }
718
+ },
719
+ {
720
+ "name": "address_2",
721
+ "description": "(Deprecated) A second (additional) line of address information. (This field is deprecated: we recommend including all address information before 'city' as a comma separated list in address_1. There is no guarantee that systems will read this line of address information.)",
722
+ "type": "string"
723
+ },
724
+ {
725
+ "name": "address_3",
726
+ "description": "(Deprecated) A third (additional) line of address information. (This field is deprecated: we recommend including all address information before 'city' as a comma separated list in address_1. There is no guarantee that systems will read this line of address information.)",
727
+ "type": "string"
728
+ },
729
+ {
730
+ "name": "address_4",
731
+ "description": "(Deprecated) The fourth (additional) line of address information. (This field is deprecated: we recommend including all address information before 'city' as a comma separated list in address_1. There is no guarantee that systems will read this line of address information.)",
732
+ "type": "string"
733
+ },
734
+ {
735
+ "name": "city",
736
+ "description": "The city in which the address is located.",
737
+ "type": "string",
738
+ "constraints": {
739
+ "required": true
740
+ }
741
+ },
742
+ {
743
+ "name": "region",
744
+ "description": "The region in which the address is located (optional).",
745
+ "type": "string",
746
+ "constraints": {
747
+ "required": false
748
+ }
749
+ },
750
+ {
751
+ "name": "state_province",
752
+ "description": "The state or province in which the address is located.",
753
+ "type": "string",
754
+ "constraints": {
755
+ "required": true
756
+ }
757
+ },
758
+ {
759
+ "name": "postal_code",
760
+ "description": "The postal code for the address.",
761
+ "type": "string",
762
+ "constraints": {
763
+ "required": true
764
+ }
765
+ },
766
+ {
767
+ "name": "country",
768
+ "description": "The country in which the address is located. This should be given as an ISO 3361-1 country code (two letter abbreviation).",
769
+ "type": "string",
770
+ "constraints": {
771
+ "required": true
772
+ }
773
+ }
774
+ ],
775
+ "primaryKey": "id",
776
+ "foreignKeys": [{
777
+ "fields": "location_id",
778
+ "reference": {
779
+ "resource": "location",
780
+ "fields": "id"
781
+ }
782
+ }]
783
+ }
784
+ },
785
+ {
786
+ "name": "postal_address",
787
+ "path": "postal_addresses.csv",
788
+ "description": "The postal_address table contains the postal addresses for mail to a certain location. This may differ from the physical location.",
789
+ "format": "csv",
790
+ "mediatype": "text/csv",
791
+ "schema": {
792
+ "fields": [{
793
+ "name": "id",
794
+ "description": "Each postal address must have a unique identifier",
795
+ "type": "string",
796
+ "constraints": {
797
+ "required": true
798
+ }
799
+ },
800
+ {
801
+ "name": "location_id",
802
+ "description": "The identifier of the location for which this is the postal address.",
803
+ "type": "string"
804
+ },
805
+ {
806
+ "name": "attention",
807
+ "description": "The person or entity whose attention should be sought at the location (Often included as 'care of' component of an address.)",
808
+ "type": "string"
809
+ },
810
+ {
811
+ "name": "address_1",
812
+ "description": "The first line(s) of the address, including office, building number and street.",
813
+ "type": "string",
814
+ "constraints": {
815
+ "required": true
816
+ }
817
+ },
818
+ {
819
+ "name": "address_2",
820
+ "description": "(Deprecated) A second (additional) line of address information. (This field is deprecated: we recommend including all address information before 'city' as a comma separated list in address_1. There is no guarantee that systems will read this line of address information.)",
821
+ "type": "string"
822
+ },
823
+ {
824
+ "name": "address_3",
825
+ "description": "(Deprecated) A third (additional) line of address information. (This field is deprecated: we recommend including all address information before 'city' as a comma separated list in address_1. There is no guarantee that systems will read this line of address information.)",
826
+ "type": "string"
827
+ },
828
+ {
829
+ "name": "address_4",
830
+ "description": "(Deprecated) The fourth (additional) line of address information. (This field is deprecated: we recommend including all address information before 'city' as a comma separated list in address_1. There is no guarantee that systems will read this line of address information.)",
831
+ "type": "string"
832
+ },
833
+ {
834
+ "name": "city",
835
+ "description": "The city in which the address is located.",
836
+ "type": "string",
837
+ "constraints": {
838
+ "required": true
839
+ }
840
+ },
841
+ {
842
+ "name": "region",
843
+ "description": "The region in which the address is located (optional).",
844
+ "type": "string",
845
+ "constraints": {
846
+ "required": false
847
+ }
848
+ },
849
+ {
850
+ "name": "state_province",
851
+ "description": "The state or province in which the address is located.",
852
+ "type": "string",
853
+ "constraints": {
854
+ "required": true
855
+ }
856
+ },
857
+ {
858
+ "name": "postal_code",
859
+ "description": "The postal code for the address.",
860
+ "type": "string",
861
+ "constraints": {
862
+ "required": true
863
+ }
864
+ },
865
+ {
866
+ "name": "country",
867
+ "description": "The country in which the address is located. This should be given as an ISO 3361-1 country code (two letter abbreviation)",
868
+ "type": "string",
869
+ "constraints": {
870
+ "required": true
871
+ }
872
+
873
+ }
874
+ ],
875
+ "primaryKey": "id",
876
+ "foreignKeys": [{
877
+ "fields": "location_id",
878
+ "reference": {
879
+ "resource": "location",
880
+ "fields": "id"
881
+ }
882
+ }]
883
+ }
884
+ },
885
+ {
886
+ "name": "regular_schedule",
887
+ "path": "regular_schedules.csv",
888
+ "description": "The regular_schedule table contains details of when a service or location is open under normal circumstances. Each entry in the table can relate to one and only one day of the week.",
889
+ "format": "csv",
890
+ "mediatype": "text/csv",
891
+ "schema": {
892
+ "fields": [{
893
+ "name": "id",
894
+ "description": "Each entry must have a unique identifier",
895
+ "type": "string",
896
+ "constraints": {
897
+ "required": true
898
+ }
899
+ },
900
+ {
901
+ "name": "service_id",
902
+ "description": "The identifier of the service for which this is the regular schedule",
903
+ "type": "string"
904
+ },
905
+ {
906
+ "name": "location_id",
907
+ "description": "The identifier of the location for which this is the regular schedule",
908
+ "type": "string"
909
+ },
910
+ {
911
+ "name": "service_at_location_id",
912
+ "description": "The identifier of the 'service at location' table entry, when this schedule is specific to a service in a particular location.",
913
+ "type": "string"
914
+ },
915
+ {
916
+ "name": "weekday",
917
+ "description": "The day of the week that this entry relates to",
918
+ "type": "integer",
919
+ "constraints": {
920
+ "required": true
921
+ }
922
+ },
923
+ {
924
+ "name": "opens_at",
925
+ "description": "The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix 'Z' when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time. ",
926
+ "type": "time"
927
+ },
928
+ {
929
+ "name": "closes_at",
930
+ "description": "The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix 'Z' when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.",
931
+ "type": "time"
932
+ }
933
+ ],
934
+ "primaryKey": "id",
935
+ "foreignKeys": [{
936
+ "fields": "location_id",
937
+ "reference": {
938
+ "resource": "location",
939
+ "fields": "id"
940
+ }
941
+ },
942
+ {
943
+ "fields": "service_id",
944
+ "reference": {
945
+ "resource": "service",
946
+ "fields": "id"
947
+ }
948
+ },
949
+ {
950
+ "fields": "service_at_location_id",
951
+ "reference": {
952
+ "resource": "service_at_location",
953
+ "fields": "id"
954
+ }
955
+ }
956
+ ]
957
+ }
958
+ },
959
+ {
960
+ "name": "holiday_schedule",
961
+ "path": "holiday_schedules.csv",
962
+ "description": "The holiday_schedule table contains details of when a service or location is open during holidays. Each entry in the table describes a period of one or more days, and the operating times on those days.",
963
+ "format": "csv",
964
+ "mediatype": "text/csv",
965
+ "schema": {
966
+ "fields": [{
967
+ "name": "id",
968
+ "description": "Each entry must have a unique identifier",
969
+ "type": "string",
970
+ "constraints": {
971
+ "required": true
972
+ }
973
+ },
974
+ {
975
+ "name": "service_id",
976
+ "description": "The identifier of the service for which this is the holiday schedule",
977
+ "type": "string"
978
+ },
979
+ {
980
+ "name": "location_id",
981
+ "description": "The identifier of the location for which this is the holiday schedule",
982
+ "type": "string"
983
+ },
984
+ {
985
+ "name": "service_at_location_id",
986
+ "description": "The identifier of the 'service at location' table entry, when this schedule is specific to a service in a particular location.",
987
+ "type": "string"
988
+ },
989
+ {
990
+ "name": "closed",
991
+ "description": "Indicates if a service or location is closed during a public holiday",
992
+ "type": "boolean",
993
+ "constraints": {
994
+ "required": true
995
+ }
996
+ },
997
+ {
998
+ "name": "opens_at",
999
+ "description": "The time when a service or location opens. This should use HH:MM format and should include timezone information, either adding the suffix 'Z' when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.",
1000
+ "type": "time"
1001
+ },
1002
+ {
1003
+ "name": "closes_at",
1004
+ "description": "The time when a service or location closes. This should use HH:MM format and should include timezone information, either adding the suffix 'Z' when the date is in UTC, or including an offset from UTC (e.g. 09:00-05:00 for 9am East Coast Time.",
1005
+ "type": "time"
1006
+ },
1007
+ {
1008
+ "name": "start_date",
1009
+ "description": "The first day that a service or location is closed during a public or private holiday",
1010
+ "type": "date",
1011
+ "constraints": {
1012
+ "required": true
1013
+ }
1014
+ },
1015
+ {
1016
+ "name": "end_date",
1017
+ "description": "The last day that a service or location is closed during a public or private holiday",
1018
+ "type": "date",
1019
+ "constraints": {
1020
+ "required": true
1021
+ }
1022
+ }
1023
+ ],
1024
+ "primaryKey": "id",
1025
+ "foreignKeys": [{
1026
+ "fields": "location_id",
1027
+ "reference": {
1028
+ "resource": "location",
1029
+ "fields": "id"
1030
+ }
1031
+ },
1032
+ {
1033
+ "fields": "service_id",
1034
+ "reference": {
1035
+ "resource": "service",
1036
+ "fields": "id"
1037
+ }
1038
+ },
1039
+ {
1040
+ "fields": "service_at_location_id",
1041
+ "reference": {
1042
+ "resource": "service_at_location",
1043
+ "fields": "id"
1044
+ }
1045
+ }
1046
+ ]
1047
+ }
1048
+ },
1049
+ {
1050
+ "name": "funding",
1051
+ "path": "funding.csv",
1052
+ "description": "The funding table describes the sources of funding for a service or organisation",
1053
+ "format": "csv",
1054
+ "mediatype": "text/csv",
1055
+ "schema": {
1056
+ "fields": [{
1057
+ "name": "id",
1058
+ "description": "Each entry must have a unique identifier",
1059
+ "type": "string",
1060
+ "constraints": {
1061
+ "required": true
1062
+ }
1063
+ },
1064
+ {
1065
+ "name": "organization_id",
1066
+ "description": "The identifier of the organization in receipt of this funding.",
1067
+ "type": "string"
1068
+ },
1069
+ {
1070
+ "name": "service_id",
1071
+ "description": "The identifier of the service in receipt of this funding",
1072
+ "type": "string"
1073
+ },
1074
+ {
1075
+ "name": "source",
1076
+ "description": "A free text description of the source of funds for this organization or service.",
1077
+ "type": "string"
1078
+ }
1079
+ ],
1080
+ "primaryKey": "id",
1081
+ "foreignKeys": [{
1082
+ "fields": "service_id",
1083
+ "reference": {
1084
+ "resource": "service",
1085
+ "fields": "id"
1086
+ }
1087
+ },
1088
+ {
1089
+ "fields": "organization_id",
1090
+ "reference": {
1091
+ "resource": "organization",
1092
+ "fields": "id"
1093
+ }
1094
+ }
1095
+ ]
1096
+ }
1097
+ },
1098
+ {
1099
+ "name": "eligibility",
1100
+ "path": "eligibility.csv",
1101
+ "description": "The eligibility tables contains details of the eligibility criteria for particular services",
1102
+ "format": "csv",
1103
+ "mediatype": "text/csv",
1104
+ "schema": {
1105
+ "fields": [{
1106
+ "name": "id",
1107
+ "description": "Each entry must have a unique identifier",
1108
+ "type": "string",
1109
+ "constraints": {
1110
+ "required": true
1111
+ }
1112
+ },
1113
+ {
1114
+ "name": "service_id",
1115
+ "description": "The identifier of the service for which this entry describes the eligibility criteria",
1116
+ "type": "string"
1117
+ },
1118
+ {
1119
+ "name": "eligibility",
1120
+ "description": "The rules or guidelines that determine who can receive the service.",
1121
+ "type": "string",
1122
+ "constraints": {
1123
+ "enum": ["adult", "child", "teen", "family", "female", "male",
1124
+ "Transgender", "Transgender - M to F", "Transgender - F to M"
1125
+ ]
1126
+ }
1127
+ }
1128
+ ],
1129
+ "primaryKey": "id",
1130
+ "foreignKeys": [{
1131
+ "fields": "service_id",
1132
+ "reference": {
1133
+ "resource": "service",
1134
+ "fields": "id"
1135
+ }
1136
+ }]
1137
+ }
1138
+ },
1139
+ {
1140
+ "name": "service_area",
1141
+ "path": "service_areas.csv",
1142
+ "description": "The service_area table contains details of the geographic area for which a service is available.",
1143
+ "format": "csv",
1144
+ "mediatype": "text/csv",
1145
+ "schema": {
1146
+ "fields": [{
1147
+ "name": "id",
1148
+ "description": "Each service area must have a unique identifier",
1149
+ "type": "string",
1150
+ "constraints": {
1151
+ "required": true
1152
+ }
1153
+ },
1154
+ {
1155
+ "name": "service_id",
1156
+ "description": "The identifier of the service for which this entry describes the service area",
1157
+ "type": "string"
1158
+ },
1159
+ {
1160
+ "name": "service_area",
1161
+ "description": "The geographic area where a service is available. This is a free-text description, and so may be precise or indefinite as necessary.",
1162
+ "type": "string"
1163
+ },
1164
+ {
1165
+ "name": "description",
1166
+ "description": "A more detailed description of this service area. Used to provide any additional information that cannot be communicated using the structured area and geometry fields.",
1167
+ "type": "string"
1168
+ }
1169
+ ],
1170
+ "primaryKey": "id",
1171
+ "foreignKeys": [{
1172
+ "fields": "service_id",
1173
+ "reference": {
1174
+ "resource": "service",
1175
+ "fields": "id"
1176
+ }
1177
+ }]
1178
+ }
1179
+ },
1180
+ {
1181
+ "name": "required_document",
1182
+ "path": "required_documents.csv",
1183
+ "description": "The required_document table contains details of any documents that are required in order to access or use services.",
1184
+ "format": "csv",
1185
+ "mediatype": "text/csv",
1186
+ "schema": {
1187
+ "fields": [{
1188
+ "name": "id",
1189
+ "description": "Each document must have a unique identifier",
1190
+ "type": "string",
1191
+ "constraints": {
1192
+ "required": true
1193
+ }
1194
+ },
1195
+ {
1196
+ "name": "service_id",
1197
+ "description": "The identifier of the service for which this entry describes the required document",
1198
+ "type": "string"
1199
+ },
1200
+ {
1201
+ "name": "document",
1202
+ "description": "The document required to apply for or receive the service. e.g. 'Government-issued ID', 'EU Passport'",
1203
+ "type": "string"
1204
+ }
1205
+ ],
1206
+ "primaryKey": "id",
1207
+ "foreignKeys": [{
1208
+ "fields": "service_id",
1209
+ "reference": {
1210
+ "resource": "service",
1211
+ "fields": "id"
1212
+ }
1213
+ }]
1214
+ }
1215
+ },
1216
+ {
1217
+ "name": "payment_accepted",
1218
+ "path": "payments_accepted.csv",
1219
+ "description": "The payment_accepted table contains details of the methods of payment that can be used in order to pay for services",
1220
+ "format": "csv",
1221
+ "mediatype": "text/csv",
1222
+ "schema": {
1223
+ "fields": [{
1224
+ "name": "id",
1225
+ "description": "Each entry must have a unique identifier",
1226
+ "type": "string",
1227
+ "constraints": {
1228
+ "required": true
1229
+ }
1230
+ },
1231
+ {
1232
+ "name": "service_id",
1233
+ "description": "The identifier of the services for which the entry describes the accepted payment methods",
1234
+ "type": "string"
1235
+ },
1236
+ {
1237
+ "name": "payment",
1238
+ "description": "The methods of payment accepted for the service",
1239
+ "type": "string",
1240
+ "constraints": {
1241
+ "enum": ["cash", "check", "money order", "credit card", "medicare", "SNAP", "WIC", "EBT"]
1242
+ }
1243
+ }
1244
+ ],
1245
+ "primaryKey": "id",
1246
+ "foreignKeys": [{
1247
+ "fields": "service_id",
1248
+ "reference": {
1249
+ "resource": "service",
1250
+ "fields": "id"
1251
+ }
1252
+ }]
1253
+ }
1254
+ },
1255
+ {
1256
+ "name": "language",
1257
+ "path": "languages.csv",
1258
+ "description": "The language table contains details of the languages that are spoken at locations or services. This does not include languages which can only be used with intepretation.",
1259
+ "format": "csv",
1260
+ "mediatype": "text/csv",
1261
+ "schema": {
1262
+ "fields": [{
1263
+ "name": "id",
1264
+ "description": "Each language must have a unique identifier",
1265
+ "type": "string",
1266
+ "constraints": {
1267
+ "required": true
1268
+ }
1269
+ },
1270
+ {
1271
+ "name": "service_id",
1272
+ "description": "The identifier of the service for which the entry describes the languages in which services are delivered",
1273
+ "type": "string"
1274
+ },
1275
+ {
1276
+ "name": "location_id",
1277
+ "description": "The identifier of the location for which the entry describes the languages in which services are delivered",
1278
+ "type": "string"
1279
+ },
1280
+ {
1281
+ "name": "language",
1282
+ "description": "Languages, other than English, in which the service is delivered. Languages are listed as ISO639-1 codes.",
1283
+ "type": "string"
1284
+ }
1285
+ ],
1286
+ "primaryKey": "id",
1287
+ "foreignKeys": [{
1288
+ "fields": "service_id",
1289
+ "reference": {
1290
+ "resource": "service",
1291
+ "fields": "id"
1292
+ }
1293
+ },
1294
+ {
1295
+ "fields": "location_id",
1296
+ "reference": {
1297
+ "resource": "location",
1298
+ "fields": "id"
1299
+ }
1300
+ }
1301
+ ]
1302
+ }
1303
+ },
1304
+ {
1305
+ "name": "accessibility_for_disabilities",
1306
+ "path": "accessibility_for_disabilities.csv",
1307
+ "description": "The accessibility_for_disabilities table contains details of the arrangements for access to locations for people who have disabilities",
1308
+ "format": "csv",
1309
+ "mediatype": "text/csv",
1310
+ "schema": {
1311
+ "fields": [{
1312
+ "name": "id",
1313
+ "description": "Each entry must have a unique identifier",
1314
+ "type": "string",
1315
+ "constraints": {
1316
+ "required": true
1317
+ }
1318
+ },
1319
+ {
1320
+ "name": "location_id",
1321
+ "description": "The identifier of the location for which the entry describes the accessibility provision",
1322
+ "type": "string"
1323
+ },
1324
+ {
1325
+ "name": "accessibility",
1326
+ "description": "Description of assistance or infrastructure that facilitate access to clients with disabilities.",
1327
+ "type": "string",
1328
+ "constraints": {
1329
+ "enum": ["cd", "deaf_interpreter", "disabled_parking", "elevator",
1330
+ "ramp", "restroom", "tape_braille", "tty", "wheelchair", "wheelchair_van"
1331
+ ]
1332
+ }
1333
+ },
1334
+ {
1335
+ "name": "details",
1336
+ "description": "Any further details relating to the relevant accessibility arrangements at this location. E.g. whether advance notice is required to use an accessibility facility.",
1337
+ "type": "string",
1338
+ "constraints": {
1339
+ "required": false
1340
+ }
1341
+ }
1342
+ ],
1343
+ "primaryKey": "id",
1344
+ "foreignKeys": [{
1345
+ "fields": "location_id",
1346
+ "reference": {
1347
+ "resource": "location",
1348
+ "fields": "id"
1349
+ }
1350
+ }]
1351
+ }
1352
+ },
1353
+ {
1354
+ "name": "taxonomy",
1355
+ "path": "taxonomy.csv",
1356
+ "description": "Each service can be categorized according to one or more taxonomy terms. The taxonomy table contains a list of taxonomy identifiers, their names, and, for hierarchical taxonomies, their structure.",
1357
+ "format": "csv",
1358
+ "mediatype": "text/csv",
1359
+ "schema": {
1360
+ "fields": [{
1361
+ "name": "id",
1362
+ "description": "Each taxonomy entry must have a unique identifier. If combining multiple taxonomies with overlapping identifiers, use a prefix to distinguish them.",
1363
+ "type": "string",
1364
+ "constraints": {
1365
+ "required": true,
1366
+ "unique": true
1367
+ }
1368
+ },
1369
+ {
1370
+ "name": "name",
1371
+ "description": "The name of this taxonomy term or category.",
1372
+ "type": "string",
1373
+ "constraints": {
1374
+ "required": true
1375
+ }
1376
+ },
1377
+ {
1378
+ "name": "parent_id",
1379
+ "description": "If this is a child category in a hierarchical taxonomy, give the identifier of the parent category. For top-level categories, this should be left blank.",
1380
+ "type": "string",
1381
+ "constraints": {
1382
+ "required": false
1383
+ }
1384
+ },
1385
+ {
1386
+ "name": "parent_name",
1387
+ "description": "If this is a child category in a hierarchical taxonomy, give the name of the parent category. For top-level categories, this should be left blank.",
1388
+ "type": "string",
1389
+ "constraints": {
1390
+ "required": false
1391
+ }
1392
+ },
1393
+ {
1394
+ "name": "vocabulary",
1395
+ "description": "If this is an established taxonomy, detail which taxonomy is in use. For example, AIRS or Open Eligibility.",
1396
+ "type": "string",
1397
+ "constraints": {
1398
+ "required": false
1399
+ }
1400
+ }
1401
+ ],
1402
+ "primaryKey": "id"
1403
+ }
1404
+ },
1405
+ {
1406
+ "name": "metadata",
1407
+ "path": "metadata.csv",
1408
+ "description": "The metadata table contains a record of the changes that have been made to the data in order to maintain provenance information.",
1409
+ "format": "csv",
1410
+ "mediatype": "text/csv",
1411
+ "schema": {
1412
+ "fields": [{
1413
+ "name": "id",
1414
+ "description": "Each entry must have a unique identifier",
1415
+ "type": "string",
1416
+ "constraints": {
1417
+ "required": true
1418
+ }
1419
+ },
1420
+ {
1421
+ "name": "resource_id",
1422
+ "description": "Each service, program. location, address, or contact will have a unique identifier. Unique ids are UUIDs.",
1423
+ "type": "string",
1424
+ "constraints": {
1425
+ "required": true
1426
+ }
1427
+ },
1428
+ {
1429
+ "name": "last_action_date",
1430
+ "description": "The date when data was changed.",
1431
+ "type": "datetime",
1432
+ "constraints": {
1433
+ "required": true
1434
+ }
1435
+ },
1436
+ {
1437
+ "name": "last_action_type",
1438
+ "description": "The kind of change made to the data; eg create, update, delete",
1439
+ "type": "string",
1440
+ "constraints": {
1441
+ "required": true
1442
+ }
1443
+ },
1444
+ {
1445
+ "name": "field_name",
1446
+ "description": "The name of field that has been modified",
1447
+ "type": "string",
1448
+ "constraints": {
1449
+ "required": true
1450
+ }
1451
+ },
1452
+ {
1453
+ "name": "previous_value",
1454
+ "description": "The previous value of a field that has been updated",
1455
+ "type": "string",
1456
+ "constraints": {
1457
+ "required": true
1458
+ }
1459
+ },
1460
+ {
1461
+ "name": "replacement_value",
1462
+ "description": "The new value of a field that has been updated",
1463
+ "type": "string",
1464
+ "constraints": {
1465
+ "required": true
1466
+ }
1467
+ },
1468
+ {
1469
+ "name": "updated_by",
1470
+ "description": "The name of the person who updated a value",
1471
+ "type": "string",
1472
+ "constraints": {
1473
+ "required": true
1474
+ }
1475
+ }
1476
+ ],
1477
+ "primaryKey": "id",
1478
+ "foreignKeys": [{
1479
+ "fields": "resource_id",
1480
+ "reference": {
1481
+ "resource": "location",
1482
+ "fields": "id"
1483
+ }
1484
+ },
1485
+ {
1486
+ "fields": "resource_id",
1487
+ "reference": {
1488
+ "resource": "service",
1489
+ "fields": "id"
1490
+ }
1491
+ },
1492
+ {
1493
+ "fields": "resource_id",
1494
+ "reference": {
1495
+ "resource": "organization",
1496
+ "fields": "id"
1497
+ }
1498
+ },
1499
+ {
1500
+ "fields": "resource_id",
1501
+ "reference": {
1502
+ "resource": "program",
1503
+ "fields": "id"
1504
+ }
1505
+ },
1506
+ {
1507
+ "fields": "resource_id",
1508
+ "reference": {
1509
+ "resource": "address",
1510
+ "fields": "id"
1511
+ }
1512
+ },
1513
+ {
1514
+ "fields": "resource_id",
1515
+ "reference": {
1516
+ "resource": "contact",
1517
+ "fields": "id"
1518
+ }
1519
+ },
1520
+ {
1521
+ "fields": "resource_id",
1522
+ "reference": {
1523
+ "resource": "holiday_schedules",
1524
+ "fields": "id"
1525
+ }
1526
+ },
1527
+ {
1528
+ "fields": "resource_id",
1529
+ "reference": {
1530
+ "resource": "regular_schedules",
1531
+ "fields": "id"
1532
+ }
1533
+ },
1534
+ {
1535
+ "fields": "resource_id",
1536
+ "reference": {
1537
+ "resource": "phone",
1538
+ "fields": "id"
1539
+ }
1540
+ }
1541
+ ]
1542
+ }
1543
+ },
1544
+ {
1545
+ "name": "meta_table_description",
1546
+ "path": "meta_table_descriptions.csv",
1547
+ "description": "The meta_table_description table contains metadata about individual tables.",
1548
+ "format": "csv",
1549
+ "mediatype": "text/csv",
1550
+ "schema": {
1551
+ "fields": [{
1552
+ "name": "id",
1553
+ "description": "Each entry must have a unique identifier",
1554
+ "type": "string",
1555
+ "constraints": {
1556
+ "required": true
1557
+ }
1558
+ },
1559
+ {
1560
+ "name": "name",
1561
+ "description": "",
1562
+ "type": "string"
1563
+ },
1564
+ {
1565
+ "name": "language",
1566
+ "description": "",
1567
+ "type": "string"
1568
+ },
1569
+ {
1570
+ "name": "character_set",
1571
+ "description": "",
1572
+ "type": "string"
1573
+ }
1574
+ ],
1575
+ "primaryKey": "id"
1576
+ }
1577
+ }
1578
+ ]
1579
+ }