@planning-inspectorate/data-model 2.10.2 → 2.11.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/appeal-document.md +2 -0
- package/docs/appeal-has.md +1 -0
- package/docs/appeal-s78.md +118 -0
- package/package.json +1 -1
- package/pins_data_model/models/model_appeal_document.py +3 -1
- package/pins_data_model/models/model_appeal_has.py +2 -1
- package/pins_data_model/models/model_appeal_s78.py +38 -1
- package/schemas/appeal-document.schema.json +2 -0
- package/schemas/appeal-has.schema.json +1 -0
- package/schemas/appeal-s78.schema.json +20 -0
- package/schemas/commands/appeals-components/appeal-common-planning.schema.json +54 -0
- package/schemas/commands/appeals-components/appeal-common-submission.schema.json +7 -81
- package/schemas/commands/appeals-components/appeal-land-ownership.schema.json +48 -0
- package/schemas/commands/appeals-components/appeal-ldc.submission.schema.json +19 -0
- package/schemas/commands/appeals-components/appeal-site-area.schema.json +21 -0
- package/schemas/commands/appeals-components/lpa-questionnaire-common.schema.json +6 -1
- package/schemas/commands/appeals-components/lpa-questionnaire-has.schema.json +0 -5
- package/schemas/commands/appeals-components/lpa-questionnaire-ldc.schema.json +31 -0
- package/schemas/commands/appellant-submission.schema.json +20 -4
- package/schemas/commands/lpa-questionnaire.schema.json +13 -1
- package/src/enums.cjs +17 -0
- package/src/enums.d.ts +15 -0
- package/src/enums.js +15 -0
- package/src/index.cjs +17 -0
- package/src/schemas.d.ts +139 -89
- package/tests/appeals/appeal-s78.test.js +16 -1
- package/tests/appeals/commands/ldc-questionnaire.test.js +83 -0
- package/tests/appeals/commands/ldc-submission.test.js +172 -0
- package/schemas/commands/appeals-components/appeal-has-submission.schema.json +0 -81
package/docs/appeal-document.md
CHANGED
|
@@ -620,6 +620,8 @@ The type of document, used for exchange, migrations and consumption from the app
|
|
|
620
620
|
| `"groundGSupporting"` | |
|
|
621
621
|
| `"groundAFeeReceipt"` | |
|
|
622
622
|
| `"delegatedReport"` | |
|
|
623
|
+
| `"relatedApplications"` | |
|
|
624
|
+
| `"otherRelevantMatters"` | |
|
|
623
625
|
| `null` | |
|
|
624
626
|
|
|
625
627
|
## sourceSystem
|
package/docs/appeal-has.md
CHANGED
|
@@ -2462,6 +2462,7 @@ Indicates if the appellant has applied for costs
|
|
|
2462
2462
|
| `"listed-building"` | |
|
|
2463
2463
|
| `"minor-commercial-development"` | |
|
|
2464
2464
|
| `"advertisement"` | |
|
|
2465
|
+
| `"lawful-development-certificate"` | |
|
|
2465
2466
|
| `null` | |
|
|
2466
2467
|
|
|
2467
2468
|
## siteGridReferenceEasting
|
package/docs/appeal-s78.md
CHANGED
|
@@ -191,6 +191,11 @@ any of
|
|
|
191
191
|
| [isSiteSubjectToArticle4Direction](#issitesubjecttoarticle4direction) | `boolean` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-issitesubjecttoarticle4direction.md "appeal-s78.schema.json#/properties/isSiteSubjectToArticle4Direction") |
|
|
192
192
|
| [article4AffectedDevelopmentRights](#article4affecteddevelopmentrights) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-article4affecteddevelopmentrights.md "appeal-s78.schema.json#/properties/article4AffectedDevelopmentRights") |
|
|
193
193
|
| [pcnRestrictedDevelopmentRights](#pcnrestricteddevelopmentrights) | `boolean` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-pcnrestricteddevelopmentrights.md "appeal-s78.schema.json#/properties/pcnRestrictedDevelopmentRights") |
|
|
194
|
+
| [applicationMadeUnderActSection](#applicationmadeunderactsection) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-applicationmadeunderactsection.md "appeal-s78.schema.json#/properties/applicationMadeUnderActSection") |
|
|
195
|
+
| [siteUseAtTimeOfApplication](#siteuseattimeofapplication) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-siteuseattimeofapplication.md "appeal-s78.schema.json#/properties/siteUseAtTimeOfApplication") |
|
|
196
|
+
| [appealUnderActSection](#appealunderactsection) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-appealunderactsection.md "appeal-s78.schema.json#/properties/appealUnderActSection") |
|
|
197
|
+
| [lpaConsiderAppealInvalid](#lpaconsiderappealinvalid) | `boolean` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-lpaconsiderappealinvalid.md "appeal-s78.schema.json#/properties/lpaConsiderAppealInvalid") |
|
|
198
|
+
| [lpaAppealInvalidReasons](#lpaappealinvalidreasons) | `string` | Optional | can be null | [Appeal S78 Case](appeal-s78-properties-lpaappealinvalidreasons.md "appeal-s78.schema.json#/properties/lpaAppealInvalidReasons") |
|
|
194
199
|
| Additional Properties | Any | Optional | can be null | |
|
|
195
200
|
|
|
196
201
|
## caseId
|
|
@@ -3571,6 +3576,7 @@ The net gain in residences of the proposed development
|
|
|
3571
3576
|
| `"listed-building"` | |
|
|
3572
3577
|
| `"minor-commercial-development"` | |
|
|
3573
3578
|
| `"advertisement"` | |
|
|
3579
|
+
| `"lawful-development-certificate"` | |
|
|
3574
3580
|
| `null` | |
|
|
3575
3581
|
|
|
3576
3582
|
## developmentType
|
|
@@ -4512,6 +4518,118 @@ Have any development rights been restricted by means of a planning condition?
|
|
|
4512
4518
|
|
|
4513
4519
|
`boolean`
|
|
4514
4520
|
|
|
4521
|
+
## applicationMadeUnderActSection
|
|
4522
|
+
|
|
4523
|
+
|
|
4524
|
+
|
|
4525
|
+
`applicationMadeUnderActSection`
|
|
4526
|
+
|
|
4527
|
+
* is optional
|
|
4528
|
+
|
|
4529
|
+
* Type: `string`
|
|
4530
|
+
|
|
4531
|
+
* can be null
|
|
4532
|
+
|
|
4533
|
+
* defined in: [Appeal S78 Case](appeal-s78-properties-applicationmadeunderactsection.md "appeal-s78.schema.json#/properties/applicationMadeUnderActSection")
|
|
4534
|
+
|
|
4535
|
+
### applicationMadeUnderActSection Type
|
|
4536
|
+
|
|
4537
|
+
`string`
|
|
4538
|
+
|
|
4539
|
+
### applicationMadeUnderActSection Constraints
|
|
4540
|
+
|
|
4541
|
+
**enum**: the value of this property must be equal to one of the following values:
|
|
4542
|
+
|
|
4543
|
+
| Value | Explanation |
|
|
4544
|
+
| :---------------------------------------- | :---------- |
|
|
4545
|
+
| `"existing-development"` | |
|
|
4546
|
+
| `"proposed-use-of-a-development"` | |
|
|
4547
|
+
| `"proposed-changes-to-a-listed-building"` | |
|
|
4548
|
+
| `null` | |
|
|
4549
|
+
|
|
4550
|
+
## siteUseAtTimeOfApplication
|
|
4551
|
+
|
|
4552
|
+
Site use at time of application
|
|
4553
|
+
|
|
4554
|
+
`siteUseAtTimeOfApplication`
|
|
4555
|
+
|
|
4556
|
+
* is optional
|
|
4557
|
+
|
|
4558
|
+
* Type: `string`
|
|
4559
|
+
|
|
4560
|
+
* can be null
|
|
4561
|
+
|
|
4562
|
+
* defined in: [Appeal S78 Case](appeal-s78-properties-siteuseattimeofapplication.md "appeal-s78.schema.json#/properties/siteUseAtTimeOfApplication")
|
|
4563
|
+
|
|
4564
|
+
### siteUseAtTimeOfApplication Type
|
|
4565
|
+
|
|
4566
|
+
`string`
|
|
4567
|
+
|
|
4568
|
+
## appealUnderActSection
|
|
4569
|
+
|
|
4570
|
+
|
|
4571
|
+
|
|
4572
|
+
`appealUnderActSection`
|
|
4573
|
+
|
|
4574
|
+
* is optional
|
|
4575
|
+
|
|
4576
|
+
* Type: `string`
|
|
4577
|
+
|
|
4578
|
+
* can be null
|
|
4579
|
+
|
|
4580
|
+
* defined in: [Appeal S78 Case](appeal-s78-properties-appealunderactsection.md "appeal-s78.schema.json#/properties/appealUnderActSection")
|
|
4581
|
+
|
|
4582
|
+
### appealUnderActSection Type
|
|
4583
|
+
|
|
4584
|
+
`string`
|
|
4585
|
+
|
|
4586
|
+
### appealUnderActSection Constraints
|
|
4587
|
+
|
|
4588
|
+
**enum**: the value of this property must be equal to one of the following values:
|
|
4589
|
+
|
|
4590
|
+
| Value | Explanation |
|
|
4591
|
+
| :---------------------------------------- | :---------- |
|
|
4592
|
+
| `"existing-development"` | |
|
|
4593
|
+
| `"proposed-use-of-a-development"` | |
|
|
4594
|
+
| `"proposed-changes-to-a-listed-building"` | |
|
|
4595
|
+
| `null` | |
|
|
4596
|
+
|
|
4597
|
+
## lpaConsiderAppealInvalid
|
|
4598
|
+
|
|
4599
|
+
|
|
4600
|
+
|
|
4601
|
+
`lpaConsiderAppealInvalid`
|
|
4602
|
+
|
|
4603
|
+
* is optional
|
|
4604
|
+
|
|
4605
|
+
* Type: `boolean`
|
|
4606
|
+
|
|
4607
|
+
* can be null
|
|
4608
|
+
|
|
4609
|
+
* defined in: [Appeal S78 Case](appeal-s78-properties-lpaconsiderappealinvalid.md "appeal-s78.schema.json#/properties/lpaConsiderAppealInvalid")
|
|
4610
|
+
|
|
4611
|
+
### lpaConsiderAppealInvalid Type
|
|
4612
|
+
|
|
4613
|
+
`boolean`
|
|
4614
|
+
|
|
4615
|
+
## lpaAppealInvalidReasons
|
|
4616
|
+
|
|
4617
|
+
Reason(s) why LPA consider the appeal invalid
|
|
4618
|
+
|
|
4619
|
+
`lpaAppealInvalidReasons`
|
|
4620
|
+
|
|
4621
|
+
* is optional
|
|
4622
|
+
|
|
4623
|
+
* Type: `string`
|
|
4624
|
+
|
|
4625
|
+
* can be null
|
|
4626
|
+
|
|
4627
|
+
* defined in: [Appeal S78 Case](appeal-s78-properties-lpaappealinvalidreasons.md "appeal-s78.schema.json#/properties/lpaAppealInvalidReasons")
|
|
4628
|
+
|
|
4629
|
+
### lpaAppealInvalidReasons Type
|
|
4630
|
+
|
|
4631
|
+
`string`
|
|
4632
|
+
|
|
4515
4633
|
## Additional Properties
|
|
4516
4634
|
|
|
4517
4635
|
Additional properties are allowed and do not have to follow a specific schema
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: appeal-document.schema.json
|
|
3
|
-
# timestamp: 2026-01-
|
|
3
|
+
# timestamp: 2026-01-21T12:30:03+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -142,6 +142,8 @@ class DocumentType(Enum):
|
|
|
142
142
|
groundGSupporting = "groundGSupporting"
|
|
143
143
|
groundAFeeReceipt = "groundAFeeReceipt"
|
|
144
144
|
delegatedReport = "delegatedReport"
|
|
145
|
+
relatedApplications = "relatedApplications"
|
|
146
|
+
otherRelevantMatters = "otherRelevantMatters"
|
|
145
147
|
NoneType_None = None
|
|
146
148
|
|
|
147
149
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: appeal-has.schema.json
|
|
3
|
-
# timestamp: 2026-01-
|
|
3
|
+
# timestamp: 2026-01-21T12:30:03+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -229,6 +229,7 @@ class TypeOfPlanningApplication(Enum):
|
|
|
229
229
|
listed_building = "listed-building"
|
|
230
230
|
minor_commercial_development = "minor-commercial-development"
|
|
231
231
|
advertisement = "advertisement"
|
|
232
|
+
lawful_development_certificate = "lawful-development-certificate"
|
|
232
233
|
NoneType_None = None
|
|
233
234
|
|
|
234
235
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: appeal-s78.schema.json
|
|
3
|
-
# timestamp: 2026-01-
|
|
3
|
+
# timestamp: 2026-01-21T12:30:03+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -281,6 +281,7 @@ class TypeOfPlanningApplication(Enum):
|
|
|
281
281
|
listed_building = "listed-building"
|
|
282
282
|
minor_commercial_development = "minor-commercial-development"
|
|
283
283
|
advertisement = "advertisement"
|
|
284
|
+
lawful_development_certificate = "lawful-development-certificate"
|
|
284
285
|
NoneType_None = None
|
|
285
286
|
|
|
286
287
|
|
|
@@ -370,6 +371,20 @@ class ApplicationPartOrWholeDevelopment(Enum):
|
|
|
370
371
|
NoneType_None = None
|
|
371
372
|
|
|
372
373
|
|
|
374
|
+
class ApplicationMadeUnderActSection(Enum):
|
|
375
|
+
existing_development = "existing-development"
|
|
376
|
+
proposed_use_of_a_development = "proposed-use-of-a-development"
|
|
377
|
+
proposed_changes_to_a_listed_building = "proposed-changes-to-a-listed-building"
|
|
378
|
+
NoneType_None = None
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
class AppealUnderActSection(Enum):
|
|
382
|
+
existing_development = "existing-development"
|
|
383
|
+
proposed_use_of_a_development = "proposed-use-of-a-development"
|
|
384
|
+
proposed_changes_to_a_listed_building = "proposed-changes-to-a-listed-building"
|
|
385
|
+
NoneType_None = None
|
|
386
|
+
|
|
387
|
+
|
|
373
388
|
class AppealS78Case1(BaseModel):
|
|
374
389
|
"""
|
|
375
390
|
Group B - Schema defining the metadata for an appeal
|
|
@@ -1065,6 +1080,17 @@ class AppealS78Case1(BaseModel):
|
|
|
1065
1080
|
"""
|
|
1066
1081
|
Have any development rights been restricted by means of a planning condition?
|
|
1067
1082
|
"""
|
|
1083
|
+
applicationMadeUnderActSection: ApplicationMadeUnderActSection | None = None
|
|
1084
|
+
siteUseAtTimeOfApplication: str | None = None
|
|
1085
|
+
"""
|
|
1086
|
+
Site use at time of application
|
|
1087
|
+
"""
|
|
1088
|
+
appealUnderActSection: AppealUnderActSection | None = None
|
|
1089
|
+
lpaConsiderAppealInvalid: bool | None = None
|
|
1090
|
+
lpaAppealInvalidReasons: str | None = None
|
|
1091
|
+
"""
|
|
1092
|
+
Reason(s) why LPA consider the appeal invalid
|
|
1093
|
+
"""
|
|
1068
1094
|
|
|
1069
1095
|
|
|
1070
1096
|
class AdvertDetail1(BaseModel):
|
|
@@ -1791,6 +1817,17 @@ class AppealS78Case2(BaseModel):
|
|
|
1791
1817
|
"""
|
|
1792
1818
|
Have any development rights been restricted by means of a planning condition?
|
|
1793
1819
|
"""
|
|
1820
|
+
applicationMadeUnderActSection: ApplicationMadeUnderActSection | None = None
|
|
1821
|
+
siteUseAtTimeOfApplication: str | None = None
|
|
1822
|
+
"""
|
|
1823
|
+
Site use at time of application
|
|
1824
|
+
"""
|
|
1825
|
+
appealUnderActSection: AppealUnderActSection | None = None
|
|
1826
|
+
lpaConsiderAppealInvalid: bool | None = None
|
|
1827
|
+
lpaAppealInvalidReasons: str | None = None
|
|
1828
|
+
"""
|
|
1829
|
+
Reason(s) why LPA consider the appeal invalid
|
|
1830
|
+
"""
|
|
1794
1831
|
|
|
1795
1832
|
|
|
1796
1833
|
class AppealS78Case(RootModel[AppealS78Case1 | AppealS78Case2]):
|
|
@@ -220,6 +220,8 @@
|
|
|
220
220
|
"groundGSupporting",
|
|
221
221
|
"groundAFeeReceipt",
|
|
222
222
|
"delegatedReport",
|
|
223
|
+
"relatedApplications",
|
|
224
|
+
"otherRelevantMatters",
|
|
223
225
|
null
|
|
224
226
|
],
|
|
225
227
|
"description": "The type of document, used for exchange, migrations and consumption from the appeal back-office system"
|
|
@@ -1014,6 +1014,7 @@
|
|
|
1014
1014
|
"listed-building",
|
|
1015
1015
|
"minor-commercial-development",
|
|
1016
1016
|
"advertisement",
|
|
1017
|
+
"lawful-development-certificate",
|
|
1017
1018
|
null
|
|
1018
1019
|
]
|
|
1019
1020
|
},
|
|
@@ -1265,6 +1266,25 @@
|
|
|
1265
1266
|
"pcnRestrictedDevelopmentRights": {
|
|
1266
1267
|
"type": ["boolean", "null"],
|
|
1267
1268
|
"description": "Have any development rights been restricted by means of a planning condition?"
|
|
1269
|
+
},
|
|
1270
|
+
"applicationMadeUnderActSection": {
|
|
1271
|
+
"type": ["string", "null"],
|
|
1272
|
+
"enum": ["existing-development", "proposed-use-of-a-development", "proposed-changes-to-a-listed-building", null]
|
|
1273
|
+
},
|
|
1274
|
+
"siteUseAtTimeOfApplication": {
|
|
1275
|
+
"type": ["string", "null"],
|
|
1276
|
+
"description": "Site use at time of application"
|
|
1277
|
+
},
|
|
1278
|
+
"appealUnderActSection": {
|
|
1279
|
+
"type": ["string", "null"],
|
|
1280
|
+
"enum": ["existing-development", "proposed-use-of-a-development", "proposed-changes-to-a-listed-building", null]
|
|
1281
|
+
},
|
|
1282
|
+
"lpaConsiderAppealInvalid": {
|
|
1283
|
+
"type": ["boolean", "null"]
|
|
1284
|
+
},
|
|
1285
|
+
"lpaAppealInvalidReasons": {
|
|
1286
|
+
"type": ["string", "null"],
|
|
1287
|
+
"description": "Reason(s) why LPA consider the appeal invalid"
|
|
1268
1288
|
}
|
|
1269
1289
|
}
|
|
1270
1290
|
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "commands/appeals-components/appeal-common-planning.schema.json",
|
|
4
|
+
"title": "Appellant common planning properties",
|
|
5
|
+
"description": "Schema defining any properties common across all planning appeal types for appeal submissions",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true,
|
|
8
|
+
"required": [
|
|
9
|
+
"applicationReference",
|
|
10
|
+
"applicationDate",
|
|
11
|
+
"applicationDecision",
|
|
12
|
+
"applicationDecisionDate",
|
|
13
|
+
"isGreenBelt",
|
|
14
|
+
"originalDevelopmentDescription",
|
|
15
|
+
"changedDevelopmentDescription"
|
|
16
|
+
],
|
|
17
|
+
"properties": {
|
|
18
|
+
"applicationReference": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"examples": ["43010/APP/1/290572"],
|
|
21
|
+
"description": "The unique identifier of the LPA application"
|
|
22
|
+
},
|
|
23
|
+
"applicationDate": {
|
|
24
|
+
"type": ["string", "null"],
|
|
25
|
+
"format": "date-time",
|
|
26
|
+
"examples": ["2023-07-27T20:30:00.000Z"],
|
|
27
|
+
"description": "The date of the original LPA application"
|
|
28
|
+
},
|
|
29
|
+
"applicationDecision": {
|
|
30
|
+
"type": ["string", "null"],
|
|
31
|
+
"enum": ["granted", "refused", "not_received", null],
|
|
32
|
+
"description": "The outcome of the original LPA decision"
|
|
33
|
+
},
|
|
34
|
+
"applicationDecisionDate": {
|
|
35
|
+
"type": ["string", "null"],
|
|
36
|
+
"format": "date-time",
|
|
37
|
+
"examples": ["2023-07-27T20:30:00.000Z"],
|
|
38
|
+
"description": "The date of the original LPA decision"
|
|
39
|
+
},
|
|
40
|
+
"isGreenBelt": {
|
|
41
|
+
"type": ["boolean", "null"],
|
|
42
|
+
"description": "Indicates if the site is in a green belt"
|
|
43
|
+
},
|
|
44
|
+
"originalDevelopmentDescription": {
|
|
45
|
+
"type": ["string", "null"],
|
|
46
|
+
"examples": ["Replacement of an existing gate to access the property"],
|
|
47
|
+
"description": "The original description of the development, as provided by the appellant"
|
|
48
|
+
},
|
|
49
|
+
"changedDevelopmentDescription": {
|
|
50
|
+
"type": ["boolean", "null"],
|
|
51
|
+
"description": "Indicates that the LPA has changed the development description"
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -11,15 +11,11 @@
|
|
|
11
11
|
"lpaCode",
|
|
12
12
|
"caseSubmittedDate",
|
|
13
13
|
"enforcementNotice",
|
|
14
|
-
"applicationReference",
|
|
15
|
-
"applicationDate",
|
|
16
|
-
"applicationDecision",
|
|
17
|
-
"applicationDecisionDate",
|
|
18
14
|
"caseSubmissionDueDate",
|
|
19
15
|
"siteAccessDetails",
|
|
20
16
|
"siteSafetyDetails",
|
|
21
|
-
"
|
|
22
|
-
"
|
|
17
|
+
"nearbyCaseReferences",
|
|
18
|
+
"appellantCostsAppliedFor"
|
|
23
19
|
],
|
|
24
20
|
"anyOf": [
|
|
25
21
|
{
|
|
@@ -66,28 +62,6 @@
|
|
|
66
62
|
"type": ["boolean", "null"],
|
|
67
63
|
"description": "Indicates if an enforcement notice is the reason for the appeal"
|
|
68
64
|
},
|
|
69
|
-
"applicationReference": {
|
|
70
|
-
"type": "string",
|
|
71
|
-
"examples": ["43010/APP/1/290572"],
|
|
72
|
-
"description": "The unique identifier of the LPA application"
|
|
73
|
-
},
|
|
74
|
-
"applicationDate": {
|
|
75
|
-
"type": "string",
|
|
76
|
-
"format": "date-time",
|
|
77
|
-
"examples": ["2023-07-27T20:30:00.000Z"],
|
|
78
|
-
"description": "The date of the original LPA application"
|
|
79
|
-
},
|
|
80
|
-
"applicationDecision": {
|
|
81
|
-
"type": "string",
|
|
82
|
-
"enum": ["granted", "refused", "not_received"],
|
|
83
|
-
"description": "The outcome of the original LPA decision"
|
|
84
|
-
},
|
|
85
|
-
"applicationDecisionDate": {
|
|
86
|
-
"type": ["string", "null"],
|
|
87
|
-
"format": "date-time",
|
|
88
|
-
"examples": ["2023-07-27T20:30:00.000Z"],
|
|
89
|
-
"description": "The date of the original LPA decision"
|
|
90
|
-
},
|
|
91
65
|
"caseSubmissionDueDate": {
|
|
92
66
|
"type": ["string", "null"],
|
|
93
67
|
"format": "date-time",
|
|
@@ -145,59 +119,6 @@
|
|
|
145
119
|
},
|
|
146
120
|
"description": "Provided information on site health and safety"
|
|
147
121
|
},
|
|
148
|
-
"neighbouringSiteAddresses": {
|
|
149
|
-
"type": ["array", "null"],
|
|
150
|
-
"items": {
|
|
151
|
-
"type": "object",
|
|
152
|
-
"additionalProperties": true,
|
|
153
|
-
"properties": {
|
|
154
|
-
"neighbouringSiteAddressLine1": {
|
|
155
|
-
"type": "string",
|
|
156
|
-
"examples": ["96 The Avenue"],
|
|
157
|
-
"description": "First line of address of the site"
|
|
158
|
-
},
|
|
159
|
-
"neighbouringSiteAddressLine2": {
|
|
160
|
-
"type": ["string", "null"],
|
|
161
|
-
"description": "Second line of address of the site"
|
|
162
|
-
},
|
|
163
|
-
"neighbouringSiteAddressTown": {
|
|
164
|
-
"type": "string",
|
|
165
|
-
"examples": ["Maidstone"],
|
|
166
|
-
"description": "Town / City of the site address"
|
|
167
|
-
},
|
|
168
|
-
"neighbouringSiteAddressCounty": {
|
|
169
|
-
"type": ["string", "null"],
|
|
170
|
-
"examples": ["Kent"],
|
|
171
|
-
"description": "County of the site address"
|
|
172
|
-
},
|
|
173
|
-
"neighbouringSiteAddressPostcode": {
|
|
174
|
-
"type": "string",
|
|
175
|
-
"examples": ["MD21 5XY"],
|
|
176
|
-
"description": "Postal code of the site address"
|
|
177
|
-
},
|
|
178
|
-
"neighbouringSiteAccessDetails": {
|
|
179
|
-
"type": ["string", "null"],
|
|
180
|
-
"examples": ["Ongoing road works at this address"],
|
|
181
|
-
"description": "Provided information on site accessibility on this address"
|
|
182
|
-
},
|
|
183
|
-
"neighbouringSiteSafetyDetails": {
|
|
184
|
-
"type": ["string", "null"],
|
|
185
|
-
"examples": ["Ongoing road works at this address"],
|
|
186
|
-
"description": "Provided information on site health and safety on this address"
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
"required": [
|
|
190
|
-
"neighbouringSiteAddressLine1",
|
|
191
|
-
"neighbouringSiteAddressLine2",
|
|
192
|
-
"neighbouringSiteAddressTown",
|
|
193
|
-
"neighbouringSiteAddressCounty",
|
|
194
|
-
"neighbouringSiteAddressPostcode",
|
|
195
|
-
"neighbouringSiteAccessDetails",
|
|
196
|
-
"neighbouringSiteSafetyDetails"
|
|
197
|
-
]
|
|
198
|
-
},
|
|
199
|
-
"description": "A list of neighbouring site addresses"
|
|
200
|
-
},
|
|
201
122
|
"nearbyCaseReferences": {
|
|
202
123
|
"type": ["array", "null"],
|
|
203
124
|
"items": {
|
|
@@ -218,8 +139,13 @@
|
|
|
218
139
|
"listed-building",
|
|
219
140
|
"minor-commercial-development",
|
|
220
141
|
"advertisement",
|
|
142
|
+
"lawful-development-certificate",
|
|
221
143
|
null
|
|
222
144
|
]
|
|
145
|
+
},
|
|
146
|
+
"appellantCostsAppliedFor": {
|
|
147
|
+
"type": ["boolean", "null"],
|
|
148
|
+
"description": "Indicates if the appellant has applied for costs"
|
|
223
149
|
}
|
|
224
150
|
}
|
|
225
151
|
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "commands/appeals-components/appeal-land-ownership.schema.json",
|
|
4
|
+
"title": "Appeal land ownership properties",
|
|
5
|
+
"description": "Schema defining properties relating to land ownership",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true,
|
|
8
|
+
"required": [
|
|
9
|
+
"ownsAllLand",
|
|
10
|
+
"ownsSomeLand",
|
|
11
|
+
"knowsOtherOwners",
|
|
12
|
+
"knowsAllOwners",
|
|
13
|
+
"advertisedAppeal",
|
|
14
|
+
"ownersInformed"
|
|
15
|
+
],
|
|
16
|
+
"allOf": [
|
|
17
|
+
{
|
|
18
|
+
"properties": {
|
|
19
|
+
"ownsAllLand": {
|
|
20
|
+
"type": ["boolean", "null"],
|
|
21
|
+
"description": "Indicates if the appellant has complete ownership of the site"
|
|
22
|
+
},
|
|
23
|
+
"ownsSomeLand": {
|
|
24
|
+
"type": ["boolean", "null"],
|
|
25
|
+
"description": "Indicates if the appellant has partial ownership of the site"
|
|
26
|
+
},
|
|
27
|
+
"knowsOtherOwners": {
|
|
28
|
+
"type": ["string", "null"],
|
|
29
|
+
"enum": ["Yes", "No", "Some", null],
|
|
30
|
+
"description": "Indicates if the appellant knows other owners of the site"
|
|
31
|
+
},
|
|
32
|
+
"knowsAllOwners": {
|
|
33
|
+
"type": ["string", "null"],
|
|
34
|
+
"enum": ["Yes", "No", "Some", null],
|
|
35
|
+
"description": "Indicates if the appellant knows all owners of the site"
|
|
36
|
+
},
|
|
37
|
+
"advertisedAppeal": {
|
|
38
|
+
"type": ["boolean", "null"],
|
|
39
|
+
"description": "Indicates if the appellant has advertised the appeal to the LPA decision"
|
|
40
|
+
},
|
|
41
|
+
"ownersInformed": {
|
|
42
|
+
"type": ["boolean", "null"],
|
|
43
|
+
"description": "Indicates if the appellant has informed other owners of the site"
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
]
|
|
48
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "commands/appeals-components/appeal-ldc.submission.schema.json",
|
|
4
|
+
"title": "LDC specific properties",
|
|
5
|
+
"description": "Schema defining any properties for ldc appeals",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true,
|
|
8
|
+
"required": ["siteUseAtTimeOfApplication", "applicationMadeUnderActSection"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"siteUseAtTimeOfApplication": {
|
|
11
|
+
"type": ["string", "null"],
|
|
12
|
+
"description": "Site use at time of application"
|
|
13
|
+
},
|
|
14
|
+
"applicationMadeUnderActSection": {
|
|
15
|
+
"type": ["string", "null"],
|
|
16
|
+
"enum": ["existing-development", "proposed-use-of-a-development", "proposed-changes-to-a-listed-building", null]
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "commands/appeals-components/appeal-site-area.schema.json",
|
|
4
|
+
"title": "Site area properties",
|
|
5
|
+
"description": "Schema defining any properties for site area for an appeal",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true,
|
|
8
|
+
"required": ["siteAreaSquareMetres", "floorSpaceSquareMetres"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"siteAreaSquareMetres": {
|
|
11
|
+
"type": ["number", "null"],
|
|
12
|
+
"examples": [45.7],
|
|
13
|
+
"description": "The site area, in square meters"
|
|
14
|
+
},
|
|
15
|
+
"floorSpaceSquareMetres": {
|
|
16
|
+
"type": ["number", "null"],
|
|
17
|
+
"examples": [3.5],
|
|
18
|
+
"description": "The floor space, in square meters"
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
"siteAccessDetails",
|
|
12
12
|
"siteSafetyDetails",
|
|
13
13
|
"nearbyCaseReferences",
|
|
14
|
-
"neighbouringSiteAddresses"
|
|
14
|
+
"neighbouringSiteAddresses",
|
|
15
|
+
"isCorrectAppealType"
|
|
15
16
|
],
|
|
16
17
|
"properties": {
|
|
17
18
|
"caseReference": {
|
|
@@ -105,6 +106,10 @@
|
|
|
105
106
|
"reasonForNeighbourVisits": {
|
|
106
107
|
"type": ["string", "null"],
|
|
107
108
|
"description": "A general reason given for the need to visit any neighbours"
|
|
109
|
+
},
|
|
110
|
+
"isCorrectAppealType": {
|
|
111
|
+
"type": ["boolean", "null"],
|
|
112
|
+
"description": "Indicates if the LPA considers the appeal type appropriate"
|
|
108
113
|
}
|
|
109
114
|
}
|
|
110
115
|
}
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
"type": "object",
|
|
7
7
|
"additionalProperties": true,
|
|
8
8
|
"required": [
|
|
9
|
-
"isCorrectAppealType",
|
|
10
9
|
"affectedListedBuildingNumbers",
|
|
11
10
|
"isGreenBelt",
|
|
12
11
|
"inConservationArea",
|
|
@@ -18,10 +17,6 @@
|
|
|
18
17
|
"allOf": [
|
|
19
18
|
{
|
|
20
19
|
"properties": {
|
|
21
|
-
"isCorrectAppealType": {
|
|
22
|
-
"type": ["boolean", "null"],
|
|
23
|
-
"description": "Indicates if the LPA considers the appeal type appropriate"
|
|
24
|
-
},
|
|
25
20
|
"affectedListedBuildingNumbers": {
|
|
26
21
|
"type": ["array", "null"],
|
|
27
22
|
"items": {
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "commands/appeals-components/lpa-questionnaire-ldc.schema.json",
|
|
4
|
+
"title": "LPAQ LDC submission properties",
|
|
5
|
+
"description": "Schema defining any LDC specific properties for LPAQ submissions",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true,
|
|
8
|
+
"required": ["appealUnderActSection", "lpaConsiderAppealInvalid", "lpaAppealInvalidReasons"],
|
|
9
|
+
"allOf": [
|
|
10
|
+
{
|
|
11
|
+
"properties": {
|
|
12
|
+
"appealUnderActSection": {
|
|
13
|
+
"type": ["string", "null"],
|
|
14
|
+
"enum": [
|
|
15
|
+
"existing-development",
|
|
16
|
+
"proposed-use-of-a-development",
|
|
17
|
+
"proposed-changes-to-a-listed-building",
|
|
18
|
+
null
|
|
19
|
+
]
|
|
20
|
+
},
|
|
21
|
+
"lpaConsiderAppealInvalid": {
|
|
22
|
+
"type": ["boolean", "null"]
|
|
23
|
+
},
|
|
24
|
+
"lpaAppealInvalidReasons": {
|
|
25
|
+
"type": ["string", "null"],
|
|
26
|
+
"description": "Reason(s) why LPA consider the appeal invalid"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
}
|