@planning-inspectorate/data-model 2.56.0 → 2.58.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.
- package/docs/README.md +2 -0
- package/docs/appeal-document.md +25 -18
- package/docs/appeal-group-c.md +1420 -0
- package/docs/appeal-has.md +22 -17
- package/docs/appeal-s78.md +30 -17
- package/package.json +2 -2
- package/pins_data_model/models/model_appeal_document.py +7 -0
- package/pins_data_model/models/model_appeal_group_c.py +458 -0
- package/pins_data_model/models/model_appeal_has.py +5 -0
- package/pins_data_model/models/model_appeal_s78.py +13 -0
- package/schemas/appeal-document.schema.json +25 -1
- package/schemas/appeal-group-c.schema.json +406 -0
- package/schemas/appeal-has.schema.json +22 -1
- package/schemas/appeal-s78.schema.json +30 -1
- package/src/enums.cjs +45 -0
- package/src/enums.d.ts +43 -0
- package/src/enums.js +43 -0
- package/src/index.cjs +45 -0
- package/src/schemas.d.ts +367 -3
- package/tests/appeals/appeal-group-c.test.js +378 -0
package/src/schemas.d.ts
CHANGED
|
@@ -128,7 +128,28 @@ export interface AppealDocument {
|
|
|
128
128
|
/**
|
|
129
129
|
* The internal code for an appeal type, e.g. Householder (D)
|
|
130
130
|
*/
|
|
131
|
-
caseType:
|
|
131
|
+
caseType:
|
|
132
|
+
| 'C'
|
|
133
|
+
| 'D'
|
|
134
|
+
| 'F'
|
|
135
|
+
| 'G'
|
|
136
|
+
| 'H'
|
|
137
|
+
| 'L'
|
|
138
|
+
| 'Q'
|
|
139
|
+
| 'S'
|
|
140
|
+
| 'V'
|
|
141
|
+
| 'W'
|
|
142
|
+
| 'X'
|
|
143
|
+
| 'Y'
|
|
144
|
+
| 'Z'
|
|
145
|
+
| 'ZA'
|
|
146
|
+
| 'ZP'
|
|
147
|
+
| 'TPO'
|
|
148
|
+
| 'TRN'
|
|
149
|
+
| 'HH'
|
|
150
|
+
| 'HR'
|
|
151
|
+
| 'ENV'
|
|
152
|
+
| null;
|
|
132
153
|
/**
|
|
133
154
|
* Indicates the redaction status for the document
|
|
134
155
|
*/
|
|
@@ -137,6 +158,7 @@ export interface AppealDocument {
|
|
|
137
158
|
* The type of document, used for exchange, migrations and consumption from the appeal back-office system
|
|
138
159
|
*/
|
|
139
160
|
documentType:
|
|
161
|
+
| 'appellantCase'
|
|
140
162
|
| 'appellantCaseCorrespondence'
|
|
141
163
|
| 'appellantCaseWithdrawalLetter'
|
|
142
164
|
| 'appellantCostsApplication'
|
|
@@ -151,6 +173,7 @@ export interface AppealDocument {
|
|
|
151
173
|
| 'whoNotifiedLetterToNeighbours'
|
|
152
174
|
| 'whoNotifiedPressAdvert'
|
|
153
175
|
| 'conservationMap'
|
|
176
|
+
| 'lpaQuestionnaire'
|
|
154
177
|
| 'lpaCaseCorrespondence'
|
|
155
178
|
| 'lpaCostsApplication'
|
|
156
179
|
| 'lpaCostsCorrespondence'
|
|
@@ -394,6 +417,298 @@ export interface AppealEvent {
|
|
|
394
417
|
[k: string]: unknown;
|
|
395
418
|
}
|
|
396
419
|
|
|
420
|
+
/**
|
|
421
|
+
* Group C - Schema defining the metadata for generic and low-volume appeals
|
|
422
|
+
*/
|
|
423
|
+
export interface AppealGroupCCase {
|
|
424
|
+
/**
|
|
425
|
+
* Internal case identifier
|
|
426
|
+
*/
|
|
427
|
+
caseId: number | null;
|
|
428
|
+
/**
|
|
429
|
+
* External case identifier for Group C appeals (7 digit number starting in 6)
|
|
430
|
+
*/
|
|
431
|
+
caseReference: string;
|
|
432
|
+
/**
|
|
433
|
+
* Internal letter code for appeal types
|
|
434
|
+
*/
|
|
435
|
+
caseType:
|
|
436
|
+
| 'C'
|
|
437
|
+
| 'D'
|
|
438
|
+
| 'F'
|
|
439
|
+
| 'G'
|
|
440
|
+
| 'H'
|
|
441
|
+
| 'L'
|
|
442
|
+
| 'Q'
|
|
443
|
+
| 'S'
|
|
444
|
+
| 'V'
|
|
445
|
+
| 'W'
|
|
446
|
+
| 'X'
|
|
447
|
+
| 'Y'
|
|
448
|
+
| 'Z'
|
|
449
|
+
| 'ZA'
|
|
450
|
+
| 'ZP'
|
|
451
|
+
| 'TPO'
|
|
452
|
+
| 'TRN'
|
|
453
|
+
| 'HH'
|
|
454
|
+
| 'HR'
|
|
455
|
+
| 'ENV';
|
|
456
|
+
/**
|
|
457
|
+
* The processing status for the appeal
|
|
458
|
+
*/
|
|
459
|
+
caseStatus:
|
|
460
|
+
| 'assign_case_officer'
|
|
461
|
+
| 'validation'
|
|
462
|
+
| 'ready_to_start'
|
|
463
|
+
| 'lpa_questionnaire'
|
|
464
|
+
| 'issue_determination'
|
|
465
|
+
| 'statements'
|
|
466
|
+
| 'evidence'
|
|
467
|
+
| 'witnesses'
|
|
468
|
+
| 'final_comments'
|
|
469
|
+
| 'complete'
|
|
470
|
+
| 'invalid'
|
|
471
|
+
| 'closed'
|
|
472
|
+
| 'withdrawn'
|
|
473
|
+
| 'awaiting_transfer'
|
|
474
|
+
| 'transferred'
|
|
475
|
+
| 'event'
|
|
476
|
+
| 'awaiting_event'
|
|
477
|
+
| 'notice_withdrawn'
|
|
478
|
+
| 'closed_opened_in_error';
|
|
479
|
+
/**
|
|
480
|
+
* The type of procedure for the appeal
|
|
481
|
+
*/
|
|
482
|
+
caseProcedure: 'written' | 'hearing' | 'inquiry' | 'writtenPart1' | 'writtenPart2' | null;
|
|
483
|
+
/**
|
|
484
|
+
* The date the appeal was received
|
|
485
|
+
*/
|
|
486
|
+
caseCreatedDate: string;
|
|
487
|
+
/**
|
|
488
|
+
* The date the appeal was submitted by the appellant
|
|
489
|
+
*/
|
|
490
|
+
caseSubmittedDate: string | null;
|
|
491
|
+
/**
|
|
492
|
+
* The date the appeal was last updated in the back-office
|
|
493
|
+
*/
|
|
494
|
+
caseUpdatedDate: string | null;
|
|
495
|
+
/**
|
|
496
|
+
* The date since when the appeal was considered valid
|
|
497
|
+
*/
|
|
498
|
+
caseValidDate: string | null;
|
|
499
|
+
/**
|
|
500
|
+
* The date the appeal was validated in the back-office
|
|
501
|
+
*/
|
|
502
|
+
caseValidationDate: string | null;
|
|
503
|
+
/**
|
|
504
|
+
* The outcome of the validation action
|
|
505
|
+
*/
|
|
506
|
+
caseValidationOutcome: 'valid' | 'invalid' | 'incomplete' | null;
|
|
507
|
+
/**
|
|
508
|
+
* A date indicating when the case was started, resulting in the creation of a timetable
|
|
509
|
+
*/
|
|
510
|
+
caseStartedDate: string | null;
|
|
511
|
+
/**
|
|
512
|
+
* A date indicating when the case was published
|
|
513
|
+
*/
|
|
514
|
+
casePublishedDate: string | null;
|
|
515
|
+
/**
|
|
516
|
+
* The date the LPA response was received
|
|
517
|
+
*/
|
|
518
|
+
lpaQuestionnaireCreatedDate: string | null;
|
|
519
|
+
/**
|
|
520
|
+
* The date the LPA provided a response to the case
|
|
521
|
+
*/
|
|
522
|
+
lpaQuestionnaireSubmittedDate: string | null;
|
|
523
|
+
/**
|
|
524
|
+
* The outcome of the LPA questionnaire validation action
|
|
525
|
+
*/
|
|
526
|
+
lpaQuestionnaireValidationOutcome: 'complete' | 'incomplete' | null;
|
|
527
|
+
/**
|
|
528
|
+
* If the case is started and has a timetable, a deadline for the LPA to provide a response
|
|
529
|
+
*/
|
|
530
|
+
lpaQuestionnaireDueDate: string | null;
|
|
531
|
+
/**
|
|
532
|
+
* The date of the appeal decision
|
|
533
|
+
*/
|
|
534
|
+
caseDecisionOutcomeDate: string | null;
|
|
535
|
+
/**
|
|
536
|
+
* The final outcome for the decision
|
|
537
|
+
*/
|
|
538
|
+
caseDecisionOutcome:
|
|
539
|
+
| 'allowed'
|
|
540
|
+
| 'split_decision'
|
|
541
|
+
| 'dismissed'
|
|
542
|
+
| 'invalid'
|
|
543
|
+
| 'notice_upheld'
|
|
544
|
+
| 'planning_permission_granted'
|
|
545
|
+
| 'quashed_on_legal_grounds'
|
|
546
|
+
| 'notice_varied_and_upheld'
|
|
547
|
+
| 'notice_quashed'
|
|
548
|
+
| null;
|
|
549
|
+
/**
|
|
550
|
+
* The date the appeal decision letter was issued
|
|
551
|
+
*/
|
|
552
|
+
caseCompletedDate: string | null;
|
|
553
|
+
/**
|
|
554
|
+
* A unique identifier for the Local Planning Authority
|
|
555
|
+
*/
|
|
556
|
+
lpaCode: string | null;
|
|
557
|
+
/**
|
|
558
|
+
* Unique identifier for the case officer assigned to the case
|
|
559
|
+
*/
|
|
560
|
+
caseOfficerId: string | null;
|
|
561
|
+
/**
|
|
562
|
+
* Unique identifier for the inspector assigned to the case
|
|
563
|
+
*/
|
|
564
|
+
inspectorId: string | null;
|
|
565
|
+
/**
|
|
566
|
+
* padsSapId for PADS inspectors
|
|
567
|
+
*/
|
|
568
|
+
padsSapId: string | null;
|
|
569
|
+
/**
|
|
570
|
+
* A level used for allocation purposes
|
|
571
|
+
*/
|
|
572
|
+
allocationLevel: 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | null;
|
|
573
|
+
/**
|
|
574
|
+
* A band used for allocation purposes
|
|
575
|
+
*/
|
|
576
|
+
allocationBand: 1 | 2 | 3 | null;
|
|
577
|
+
/**
|
|
578
|
+
* A list of specialisms for allocation purposes
|
|
579
|
+
*/
|
|
580
|
+
caseSpecialisms: string[] | null;
|
|
581
|
+
/**
|
|
582
|
+
* First line of address for the appeal site
|
|
583
|
+
*/
|
|
584
|
+
siteAddressLine1: string | null;
|
|
585
|
+
/**
|
|
586
|
+
* Second line of address for the appeal site
|
|
587
|
+
*/
|
|
588
|
+
siteAddressLine2: string | null;
|
|
589
|
+
/**
|
|
590
|
+
* Town / City of the site address
|
|
591
|
+
*/
|
|
592
|
+
siteAddressTown: string | null;
|
|
593
|
+
/**
|
|
594
|
+
* County of the site address
|
|
595
|
+
*/
|
|
596
|
+
siteAddressCounty: string | null;
|
|
597
|
+
/**
|
|
598
|
+
* Postal code of the site address
|
|
599
|
+
*/
|
|
600
|
+
siteAddressPostcode: string | null;
|
|
601
|
+
/**
|
|
602
|
+
* The date of the Case Management Conference (CMC)
|
|
603
|
+
*/
|
|
604
|
+
caseManagementConferenceDate?: string | null;
|
|
605
|
+
/**
|
|
606
|
+
* Deadline for statements
|
|
607
|
+
*/
|
|
608
|
+
statementDueDate?: string | null;
|
|
609
|
+
/**
|
|
610
|
+
* Deadline for proofs of evidence
|
|
611
|
+
*/
|
|
612
|
+
proofsOfEvidenceDueDate?: string | null;
|
|
613
|
+
/**
|
|
614
|
+
* Deadline for final comments
|
|
615
|
+
*/
|
|
616
|
+
finalCommentsDueDate?: string | null;
|
|
617
|
+
/**
|
|
618
|
+
* Deadline for interested party representations
|
|
619
|
+
*/
|
|
620
|
+
interestedPartyRepsDueDate?: string | null;
|
|
621
|
+
/**
|
|
622
|
+
* Deadline for statement of common ground
|
|
623
|
+
*/
|
|
624
|
+
statementOfCommonGroundDueDate?: string | null;
|
|
625
|
+
/**
|
|
626
|
+
* Deadline for planning obligation
|
|
627
|
+
*/
|
|
628
|
+
planningObligationDueDate?: string | null;
|
|
629
|
+
/**
|
|
630
|
+
* The type of application or notice that is the subject of the appeal
|
|
631
|
+
*/
|
|
632
|
+
typeOfPlanningApplication?:
|
|
633
|
+
| 'full-appeal'
|
|
634
|
+
| 'householder-planning'
|
|
635
|
+
| 'outline-planning'
|
|
636
|
+
| 'prior-approval'
|
|
637
|
+
| 'reserved-matters'
|
|
638
|
+
| 'removal-or-variation-of-conditions'
|
|
639
|
+
| 'listed-building'
|
|
640
|
+
| 'minor-commercial-development'
|
|
641
|
+
| 'advertisement'
|
|
642
|
+
| 'lawful-development-certificate'
|
|
643
|
+
| 'discontinuance-notice'
|
|
644
|
+
| 'permission-in-principle'
|
|
645
|
+
| 'tree-preservation-order'
|
|
646
|
+
| 'tree-replacement-notice'
|
|
647
|
+
| 'high-hedge-appeal'
|
|
648
|
+
| 'hedgerows-appeal'
|
|
649
|
+
| 'community-infrastructure-levy'
|
|
650
|
+
| 'planning-obligation'
|
|
651
|
+
| 'environmental'
|
|
652
|
+
| null;
|
|
653
|
+
/**
|
|
654
|
+
* Sub-type categorization for generic/low-volume appeals
|
|
655
|
+
*/
|
|
656
|
+
caseSubType?:
|
|
657
|
+
| 'anti_pollution_works_notice'
|
|
658
|
+
| 'contaminated_land'
|
|
659
|
+
| 'marine_licensing'
|
|
660
|
+
| 'waste_carriers'
|
|
661
|
+
| 'water_abstraction'
|
|
662
|
+
| 'environmental_liability'
|
|
663
|
+
| 'environmental_permitting'
|
|
664
|
+
| 'hazardous_substances'
|
|
665
|
+
| 'silage_and_slurry'
|
|
666
|
+
| 'sssi'
|
|
667
|
+
| 'affordable_housing'
|
|
668
|
+
| null;
|
|
669
|
+
/**
|
|
670
|
+
* The date the appeal was withdrawn by the appellant
|
|
671
|
+
*/
|
|
672
|
+
caseWithdrawnDate: string | null;
|
|
673
|
+
/**
|
|
674
|
+
* The date the appeal was transferred to a new case of a different type
|
|
675
|
+
*/
|
|
676
|
+
caseTransferredDate: string | null;
|
|
677
|
+
/**
|
|
678
|
+
* The reference number of the enforcement notice
|
|
679
|
+
*/
|
|
680
|
+
enforcementNoticeReference?: string | null;
|
|
681
|
+
/**
|
|
682
|
+
* The unique identifier of the LPA or regulator application
|
|
683
|
+
*/
|
|
684
|
+
applicationReference?: string | null;
|
|
685
|
+
/**
|
|
686
|
+
* Indicates if the case is linked, and the type of relationship
|
|
687
|
+
*/
|
|
688
|
+
linkedCaseStatus?: 'lead' | 'child' | null;
|
|
689
|
+
/**
|
|
690
|
+
* The reference of the lead case, if the case is a child case
|
|
691
|
+
*/
|
|
692
|
+
leadCaseReference?: string | null;
|
|
693
|
+
/**
|
|
694
|
+
* Case sub-division applying to Environmental Permitting caseSubType
|
|
695
|
+
*/
|
|
696
|
+
environmentalPermitSubtypes?:
|
|
697
|
+
| 'refusal_of_a_permit'
|
|
698
|
+
| 'deemed_refusal'
|
|
699
|
+
| 'conditions_attached_to_a_permit'
|
|
700
|
+
| 'decision_to_impose_conditions_by_regulator'
|
|
701
|
+
| 'deemed_withdrawal'
|
|
702
|
+
| 'enforcement_notice'
|
|
703
|
+
| 'suspension_notice'
|
|
704
|
+
| 'closure_notice'
|
|
705
|
+
| 'flood_risk_activity'
|
|
706
|
+
| 'revocation_notice'
|
|
707
|
+
| 'prohibition_notice'
|
|
708
|
+
| null;
|
|
709
|
+
[k: string]: unknown;
|
|
710
|
+
}
|
|
711
|
+
|
|
397
712
|
/**
|
|
398
713
|
* Group A - Schema defining the metadata for an appeal
|
|
399
714
|
*/
|
|
@@ -432,7 +747,27 @@ export type AppealHASCase = (GridReference | SiteAddress) & {
|
|
|
432
747
|
/**
|
|
433
748
|
* The internal code for an appeal type, e.g. D (Householder)
|
|
434
749
|
*/
|
|
435
|
-
caseType:
|
|
750
|
+
caseType:
|
|
751
|
+
| 'C'
|
|
752
|
+
| 'D'
|
|
753
|
+
| 'F'
|
|
754
|
+
| 'G'
|
|
755
|
+
| 'H'
|
|
756
|
+
| 'L'
|
|
757
|
+
| 'Q'
|
|
758
|
+
| 'S'
|
|
759
|
+
| 'V'
|
|
760
|
+
| 'W'
|
|
761
|
+
| 'X'
|
|
762
|
+
| 'Y'
|
|
763
|
+
| 'Z'
|
|
764
|
+
| 'ZA'
|
|
765
|
+
| 'ZP'
|
|
766
|
+
| 'TPO'
|
|
767
|
+
| 'TRN'
|
|
768
|
+
| 'HH'
|
|
769
|
+
| 'HR'
|
|
770
|
+
| 'ENV';
|
|
436
771
|
/**
|
|
437
772
|
* The type of procedure for the appeal
|
|
438
773
|
*/
|
|
@@ -1062,7 +1397,27 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
|
|
|
1062
1397
|
/**
|
|
1063
1398
|
* The internal code for an appeal type, e.g. D (Householder)
|
|
1064
1399
|
*/
|
|
1065
|
-
caseType:
|
|
1400
|
+
caseType:
|
|
1401
|
+
| 'C'
|
|
1402
|
+
| 'D'
|
|
1403
|
+
| 'F'
|
|
1404
|
+
| 'G'
|
|
1405
|
+
| 'H'
|
|
1406
|
+
| 'L'
|
|
1407
|
+
| 'Q'
|
|
1408
|
+
| 'S'
|
|
1409
|
+
| 'V'
|
|
1410
|
+
| 'W'
|
|
1411
|
+
| 'X'
|
|
1412
|
+
| 'Y'
|
|
1413
|
+
| 'Z'
|
|
1414
|
+
| 'ZA'
|
|
1415
|
+
| 'ZP'
|
|
1416
|
+
| 'TPO'
|
|
1417
|
+
| 'TRN'
|
|
1418
|
+
| 'HH'
|
|
1419
|
+
| 'HR'
|
|
1420
|
+
| 'ENV';
|
|
1066
1421
|
/**
|
|
1067
1422
|
* The type of procedure for the appeal
|
|
1068
1423
|
*/
|
|
@@ -1211,6 +1566,7 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
|
|
|
1211
1566
|
| 'planning_permission_granted'
|
|
1212
1567
|
| 'quashed_on_legal_grounds'
|
|
1213
1568
|
| 'notice_varied_and_upheld'
|
|
1569
|
+
| 'notice_quashed'
|
|
1214
1570
|
| null;
|
|
1215
1571
|
/**
|
|
1216
1572
|
* The date the appeal decision letter
|
|
@@ -1591,6 +1947,13 @@ export type AppealS78Case = (GridReference | SiteAddress) & {
|
|
|
1591
1947
|
| 'lawful-development-certificate'
|
|
1592
1948
|
| 'discontinuance-notice'
|
|
1593
1949
|
| 'permission-in-principle'
|
|
1950
|
+
| 'tree-preservation-order'
|
|
1951
|
+
| 'tree-replacement-notice'
|
|
1952
|
+
| 'high-hedge-appeal'
|
|
1953
|
+
| 'hedgerows-appeal'
|
|
1954
|
+
| 'community-infrastructure-levy'
|
|
1955
|
+
| 'planning-obligation'
|
|
1956
|
+
| 'environmental'
|
|
1594
1957
|
| null;
|
|
1595
1958
|
developmentType:
|
|
1596
1959
|
| 'householder'
|
|
@@ -5922,6 +6285,7 @@ export type SchemaMap = {
|
|
|
5922
6285
|
'appeal-document.schema.json': AppealDocument;
|
|
5923
6286
|
'appeal-event-estimate.schema.json': AppealEventEstimate;
|
|
5924
6287
|
'appeal-event.schema.json': AppealEvent;
|
|
6288
|
+
'appeal-group-c.schema.json': AppealGroupCCase;
|
|
5925
6289
|
'appeal-has.schema.json': AppealHASCase;
|
|
5926
6290
|
'appeal-representation.schema.json': AppealRepresentation;
|
|
5927
6291
|
'appeal-s78.schema.json': AppealS78Case;
|