@pdtf/schemas 3.4.0-1 → 3.4.0-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.
package/index.js CHANGED
@@ -41,8 +41,9 @@ const overlaysMap = {
41
41
  fme1ed2: require("./src/schemas/v3/overlays/fme1.json"),
42
42
  llc1v2: require("./src/schemas/v3/overlays/llc1.json"),
43
43
  nts2023: require("./src/schemas/v3/overlays/nts.json"),
44
- sef24: require("./src/schemas/v3/overlays/nts-sef.json"),
45
44
  ntsl2023: require("./src/schemas/v3/overlays/ntsl.json"),
45
+ nts2025: require("./src/schemas/v3/overlays/nts2.json"),
46
+ ntsl2025: require("./src/schemas/v3/overlays/ntsl2.json"),
46
47
  con29R2019: require("./src/schemas/v3/overlays/con29R.json"),
47
48
  con29DW: require("./src/schemas/v3/overlays/con29DW.json"),
48
49
  rdsV333: require("./src/schemas/v3/overlays/rds.json"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pdtf/schemas",
3
- "version": "3.4.0-1",
3
+ "version": "3.4.0-3",
4
4
  "description": "Property Data Trust Framework Schemas and Utilities",
5
5
  "main": "index.js",
6
6
  "directories": {
@@ -362,7 +362,7 @@
362
362
  "centralHeatingFuelType": "Other",
363
363
  "otherCentralHeatingFuelType": "Ground-source Heat Pump"
364
364
  },
365
- "centralHeatingInstalled": "2016-04-20",
365
+ "centralHeatingInstalled": "Not known",
366
366
  "heatingLastServicedDate": "2021-03-26",
367
367
  "heatingLastServicedReport": "To follow"
368
368
  }
@@ -460,7 +460,8 @@
460
460
  "listingAndConservation",
461
461
  "rightsAndInformalArrangements",
462
462
  "environmentalIssues",
463
- "notices"
463
+ "notices",
464
+ "specialistIssues"
464
465
  ],
465
466
  "ntsl2Required": [
466
467
  "lettingInformation",
@@ -476,7 +477,8 @@
476
477
  "listingAndConservation",
477
478
  "rightsAndInformalArrangements",
478
479
  "environmentalIssues",
479
- "notices"
480
+ "notices",
481
+ "specialistIssues"
480
482
  ],
481
483
  "ta7Required": ["ownership"],
482
484
  "properties": {
@@ -1802,14 +1804,14 @@
1802
1804
  {
1803
1805
  "properties": {
1804
1806
  "yesNo": {
1805
- "enum": ["Yes"]
1807
+ "enum": ["No"]
1806
1808
  }
1807
1809
  }
1808
1810
  },
1809
1811
  {
1810
1812
  "properties": {
1811
1813
  "yesNo": {
1812
- "enum": ["No"]
1814
+ "enum": ["Yes"]
1813
1815
  },
1814
1816
  "details": {
1815
1817
  "nts2Ref": "A3.4.2",
@@ -4231,7 +4233,7 @@
4231
4233
  "ntsRef": "A3.7.1",
4232
4234
  "nts2Ref": "A3.7.1",
4233
4235
  "title": "Shared ownership percentage",
4234
- "type": "integer",
4236
+ "type": "number",
4235
4237
  "minimum": 5,
4236
4238
  "exclusiveMaximum": 100
4237
4239
  },
@@ -9766,9 +9768,19 @@
9766
9768
  "sprayFoamInsulation"
9767
9769
  ],
9768
9770
  "ntsRequired": ["isStandardForm", "buildingSafety"],
9769
- "nts2Required": ["isStandardForm", "buildingSafety", "loft"],
9771
+ "nts2Required": [
9772
+ "isStandardForm",
9773
+ "buildingSafety",
9774
+ "loft",
9775
+ "sprayFoamInsulation"
9776
+ ],
9770
9777
  "ntslRequired": ["isStandardForm", "buildingSafety"],
9771
- "ntsl2Required": ["isStandardForm", "buildingSafety", "loft"],
9778
+ "ntsl2Required": [
9779
+ "isStandardForm",
9780
+ "buildingSafety",
9781
+ "loft",
9782
+ "sprayFoamInsulation"
9783
+ ],
9772
9784
  "properties": {
9773
9785
  "isStandardForm": {
9774
9786
  "baspi4Ref": "A1.8.1",
@@ -10064,26 +10076,22 @@
10064
10076
  "enum": ["Yes", "No"]
10065
10077
  }
10066
10078
  },
10067
- "nts2Required": [
10068
- "loftAccess",
10069
- "loftBoarded",
10070
- "loftInsulated"
10071
- ],
10072
- "ntsl2Required": [
10073
- "loftAccess",
10074
- "loftBoarded",
10075
- "loftInsulated"
10076
- ]
10079
+ "nts2Required": ["details", "loftBoarded", "loftInsulated"],
10080
+ "ntsl2Required": ["details", "loftBoarded", "loftInsulated"]
10077
10081
  }
10078
10082
  ]
10079
10083
  },
10080
10084
  "sprayFoamInsulation": {
10081
10085
  "baspi4Ref": "A1.8.4",
10082
10086
  "baspi5Ref": "A1.8.4",
10087
+ "nts2Ref": "A4.2",
10088
+ "ntsl2Ref": "A4.2",
10083
10089
  "title": "Has spray foam insulation been installed at the property?",
10084
10090
  "type": "object",
10085
10091
  "properties": {
10086
10092
  "hasSprayFoamInstalled": {
10093
+ "nts2Ref": "A4.2.1",
10094
+ "ntsl2Ref": "A4.2.1",
10087
10095
  "baspi4Ref": "A1.8.4.1",
10088
10096
  "baspi5Ref": "A1.8.4.1",
10089
10097
  "type": "string",
@@ -10093,6 +10101,8 @@
10093
10101
  },
10094
10102
  "baspi4Required": ["hasSprayFoamInstalled"],
10095
10103
  "baspi5Required": ["hasSprayFoamInstalled"],
10104
+ "nts2Required": ["hasSprayFoamInstalled"],
10105
+ "ntsl2Required": ["hasSprayFoamInstalled"],
10096
10106
  "discriminator": {
10097
10107
  "propertyName": "hasSprayFoamInstalled"
10098
10108
  },
@@ -10112,7 +10122,11 @@
10112
10122
  "details": {
10113
10123
  "baspi4Ref": "A1.8.4.2",
10114
10124
  "baspi5Ref": "A1.8.4.2",
10125
+ "nts2Ref": "A4.2.2",
10126
+ "ntsl2Ref": "A4.2.2",
10115
10127
  "title": "Please give details together with certification from BBA or KIWA and the installation warranty for the work carried out",
10128
+ "nts2Title": "Please give details",
10129
+ "ntsl2Title": "Please give details",
10116
10130
  "type": "string",
10117
10131
  "minLength": 1
10118
10132
  },
@@ -10125,7 +10139,9 @@
10125
10139
  }
10126
10140
  },
10127
10141
  "baspi4Required": ["details", "attachments"],
10128
- "baspi5Required": ["details", "attachments"]
10142
+ "baspi5Required": ["details", "attachments"],
10143
+ "nts2Required": ["details"],
10144
+ "ntsl2Required": ["details"]
10129
10145
  }
10130
10146
  ]
10131
10147
  },
@@ -12882,12 +12898,26 @@
12882
12898
  "ongoingHealthOrSafetyIssue"
12883
12899
  ],
12884
12900
  "ta6Required": ["japaneseKnotweed"],
12885
- "nts2Required": ["japaneseKnotweed"],
12886
- "ntsl2Required": ["japaneseKnotweed"],
12901
+ "nts2Required": [
12902
+ "dryRotEtcTreatment",
12903
+ "containsAsbestos",
12904
+ "japaneseKnotweed",
12905
+ "subsidenceOrStructuralFault",
12906
+ "ongoingHealthOrSafetyIssue"
12907
+ ],
12908
+ "ntsl2Required": [
12909
+ "dryRotEtcTreatment",
12910
+ "containsAsbestos",
12911
+ "japaneseKnotweed",
12912
+ "subsidenceOrStructuralFault",
12913
+ "ongoingHealthOrSafetyIssue"
12914
+ ],
12887
12915
  "properties": {
12888
12916
  "dryRotEtcTreatment": {
12889
12917
  "baspi4Ref": "A5.1",
12890
12918
  "baspi5Ref": "A5.1",
12919
+ "nts2Ref": "A5.1",
12920
+ "ntsl2Ref": "A5.1",
12891
12921
  "rdsRef": "Property/Flags,BuildingSections/EnvironmentalIssues",
12892
12922
  "piqRef": "A5.1",
12893
12923
  "title": "To your knowledge, has there been any preventative work for, or treatment of dry rot, wet rot or damp carried out at the property?",
@@ -12896,6 +12926,8 @@
12896
12926
  "yesNo": {
12897
12927
  "baspi4Ref": "A5.1.1",
12898
12928
  "baspi5Ref": "A5.1.1",
12929
+ "nts2Ref": "A5.1.1",
12930
+ "ntsl2Ref": "A5.1.1",
12899
12931
  "piqRef": "A5.1.1",
12900
12932
  "type": "string",
12901
12933
  "title": "",
@@ -12904,6 +12936,8 @@
12904
12936
  },
12905
12937
  "baspi4Required": ["yesNo"],
12906
12938
  "baspi5Required": ["yesNo"],
12939
+ "nts2Required": ["yesNo"],
12940
+ "ntsl2Required": ["yesNo"],
12907
12941
  "discriminator": {
12908
12942
  "propertyName": "yesNo"
12909
12943
  },
@@ -12923,6 +12957,8 @@
12923
12957
  "details": {
12924
12958
  "baspi4Ref": "A5.1.2",
12925
12959
  "baspi5Ref": "A5.1.2",
12960
+ "nts2Ref": "A5.1.2",
12961
+ "ntsl2Ref": "A5.1.2",
12926
12962
  "title": "Details",
12927
12963
  "type": "string",
12928
12964
  "minLength": 1
@@ -12930,19 +12966,25 @@
12930
12966
  "attachments": {
12931
12967
  "baspi4Ref": "A5.1.3",
12932
12968
  "baspi5Ref": "A5.1.3",
12969
+ "nts2Ref": "A5.1.3",
12970
+ "ntsl2Ref": "A5.1.3",
12933
12971
  "title": "Attachments",
12934
12972
  "type": "string",
12935
12973
  "enum": ["Attached", "To follow"]
12936
12974
  }
12937
12975
  },
12938
12976
  "baspi4Required": ["details", "attachments"],
12939
- "baspi5Required": ["details", "attachments"]
12977
+ "baspi5Required": ["details", "attachments"],
12978
+ "nts2Required": ["details", "attachments"],
12979
+ "ntsl2Required": ["details", "attachments"]
12940
12980
  }
12941
12981
  ]
12942
12982
  },
12943
12983
  "containsAsbestos": {
12944
12984
  "baspi4Ref": "A5.2",
12945
12985
  "baspi5Ref": "A5.2",
12986
+ "nts2Ref": "A5.2",
12987
+ "ntsl2Ref": "A5.2",
12946
12988
  "rdsRef": "Property/Flags,BuildingSections/EnvironmentalIssues",
12947
12989
  "title": "To your knowledge, does any part of your property contain asbestos?",
12948
12990
  "type": "object",
@@ -12950,6 +12992,8 @@
12950
12992
  "yesNo": {
12951
12993
  "baspi4Ref": "A5.2.1",
12952
12994
  "baspi5Ref": "A5.2.1",
12995
+ "nts2Ref": "A5.2.1",
12996
+ "ntsl2Ref": "A5.2.1",
12953
12997
  "type": "string",
12954
12998
  "title": "",
12955
12999
  "enum": ["Yes", "No"]
@@ -12957,6 +13001,8 @@
12957
13001
  },
12958
13002
  "baspi4Required": ["yesNo"],
12959
13003
  "baspi5Required": ["yesNo"],
13004
+ "nts2Required": ["yesNo"],
13005
+ "ntsl2Required": ["yesNo"],
12960
13006
  "discriminator": {
12961
13007
  "propertyName": "yesNo"
12962
13008
  },
@@ -12976,7 +13022,11 @@
12976
13022
  "details": {
12977
13023
  "baspi4Ref": "A5.2.2",
12978
13024
  "baspi5Ref": "A5.2.2",
13025
+ "nts2Ref": "A5.2.2",
13026
+ "ntsl2Ref": "A5.2.2",
12979
13027
  "title": "Please state whether there is a management plan in place and attach a copy",
13028
+ "nts2Title": "Details",
13029
+ "ntsl2Title": "Details",
12980
13030
  "type": "string",
12981
13031
  "minLength": 1
12982
13032
  },
@@ -12989,7 +13039,9 @@
12989
13039
  }
12990
13040
  },
12991
13041
  "baspi4Required": ["details", "attachments"],
12992
- "baspi5Required": ["details", "attachments"]
13042
+ "baspi5Required": ["details", "attachments"],
13043
+ "nts2Required": ["details"],
13044
+ "ntsl2Required": ["details"]
12993
13045
  }
12994
13046
  ]
12995
13047
  },
@@ -13131,6 +13183,8 @@
13131
13183
  "ongoingHealthOrSafetyIssue": {
13132
13184
  "baspi4Ref": "A5.5",
13133
13185
  "baspi5Ref": "A5.5",
13186
+ "nts2Ref": "A5.5",
13187
+ "ntsl2Ref": "A5.5",
13134
13188
  "rdsRef": "Property/Flags,BuildingSections/EnvironmentalIssues",
13135
13189
  "title": "Have you been notified by a relevant authority or qualified expert of an on-going health or safety issue with the property?",
13136
13190
  "type": "object",
@@ -13138,6 +13192,8 @@
13138
13192
  "yesNo": {
13139
13193
  "baspi4Ref": "A5.5.1",
13140
13194
  "baspi5Ref": "A5.5.1",
13195
+ "nts2Ref": "A5.5.1",
13196
+ "ntsl2Ref": "A5.5.1",
13141
13197
  "type": "string",
13142
13198
  "title": "",
13143
13199
  "enum": ["Yes", "No"]
@@ -13145,6 +13201,8 @@
13145
13201
  },
13146
13202
  "baspi4Required": ["yesNo"],
13147
13203
  "baspi5Required": ["yesNo"],
13204
+ "nts2Required": ["yesNo"],
13205
+ "ntsl2Required": ["yesNo"],
13148
13206
  "discriminator": {
13149
13207
  "propertyName": "yesNo"
13150
13208
  },
@@ -13164,6 +13222,8 @@
13164
13222
  "details": {
13165
13223
  "baspi4Ref": "A5.5.2",
13166
13224
  "baspi5Ref": "A5.5.2",
13225
+ "nts2Ref": "A5.5.2",
13226
+ "ntsl2Ref": "A5.5.2",
13167
13227
  "title": "Details",
13168
13228
  "type": "string",
13169
13229
  "minLength": 1
@@ -13177,7 +13237,9 @@
13177
13237
  }
13178
13238
  },
13179
13239
  "baspi4Required": ["details", "attachments"],
13180
- "baspi5Required": ["details", "attachments"]
13240
+ "baspi5Required": ["details", "attachments"],
13241
+ "nts2Required": ["details"],
13242
+ "ntsl2Required": ["details"]
13181
13243
  }
13182
13244
  ]
13183
13245
  }
@@ -20651,7 +20713,14 @@
20651
20713
  "piqRef": "A7.4.1",
20652
20714
  "title": "When was the heating system installed?",
20653
20715
  "type": "string",
20654
- "format": "date"
20716
+ "oneOf": [
20717
+ {
20718
+ "format": "date"
20719
+ },
20720
+ {
20721
+ "enum": ["Not known"]
20722
+ }
20723
+ ]
20655
20724
  },
20656
20725
  "boilerInstallationCertificate": {
20657
20726
  "baspi4Ref": "A7.4.1.1",
@@ -287,7 +287,7 @@
287
287
  "properties": {
288
288
  "yesNo": {
289
289
  "enum": [
290
- "Yes"
290
+ "No"
291
291
  ]
292
292
  }
293
293
  }
@@ -296,7 +296,7 @@
296
296
  "properties": {
297
297
  "yesNo": {
298
298
  "enum": [
299
- "No"
299
+ "Yes"
300
300
  ]
301
301
  },
302
302
  "details": {
@@ -1008,7 +1008,8 @@
1008
1008
  "required": [
1009
1009
  "isStandardForm",
1010
1010
  "buildingSafety",
1011
- "loft"
1011
+ "loft",
1012
+ "sprayFoamInsulation"
1012
1013
  ],
1013
1014
  "properties": {
1014
1015
  "isStandardForm": {
@@ -1150,7 +1151,7 @@
1150
1151
  }
1151
1152
  },
1152
1153
  "required": [
1153
- "loftAccess",
1154
+ "details",
1154
1155
  "loftBoarded",
1155
1156
  "loftInsulated"
1156
1157
  ]
@@ -1165,6 +1166,47 @@
1165
1166
  }
1166
1167
  }
1167
1168
  },
1169
+ "sprayFoamInsulation": {
1170
+ "nts2Ref": "A4.2",
1171
+ "discriminator": {
1172
+ "propertyName": "hasSprayFoamInstalled"
1173
+ },
1174
+ "oneOf": [
1175
+ {
1176
+ "properties": {
1177
+ "hasSprayFoamInstalled": {
1178
+ "enum": [
1179
+ "No"
1180
+ ]
1181
+ }
1182
+ }
1183
+ },
1184
+ {
1185
+ "properties": {
1186
+ "hasSprayFoamInstalled": {
1187
+ "enum": [
1188
+ "Yes"
1189
+ ]
1190
+ },
1191
+ "details": {
1192
+ "nts2Ref": "A4.2.2",
1193
+ "title": "Please give details"
1194
+ }
1195
+ },
1196
+ "required": [
1197
+ "details"
1198
+ ]
1199
+ }
1200
+ ],
1201
+ "required": [
1202
+ "hasSprayFoamInstalled"
1203
+ ],
1204
+ "properties": {
1205
+ "hasSprayFoamInstalled": {
1206
+ "nts2Ref": "A4.2.1"
1207
+ }
1208
+ }
1209
+ },
1168
1210
  "accessibilityAndAdaptations": {
1169
1211
  "nts2Ref": "C5"
1170
1212
  }
@@ -1336,9 +1378,98 @@
1336
1378
  "specialistIssues": {
1337
1379
  "nts2Ref": "A5",
1338
1380
  "required": [
1339
- "japaneseKnotweed"
1381
+ "dryRotEtcTreatment",
1382
+ "containsAsbestos",
1383
+ "japaneseKnotweed",
1384
+ "subsidenceOrStructuralFault",
1385
+ "ongoingHealthOrSafetyIssue"
1340
1386
  ],
1341
1387
  "properties": {
1388
+ "dryRotEtcTreatment": {
1389
+ "nts2Ref": "A5.1",
1390
+ "discriminator": {
1391
+ "propertyName": "yesNo"
1392
+ },
1393
+ "oneOf": [
1394
+ {
1395
+ "properties": {
1396
+ "yesNo": {
1397
+ "enum": [
1398
+ "No"
1399
+ ]
1400
+ }
1401
+ }
1402
+ },
1403
+ {
1404
+ "properties": {
1405
+ "yesNo": {
1406
+ "enum": [
1407
+ "Yes"
1408
+ ]
1409
+ },
1410
+ "details": {
1411
+ "nts2Ref": "A5.1.2"
1412
+ },
1413
+ "attachments": {
1414
+ "nts2Ref": "A5.1.3"
1415
+ }
1416
+ },
1417
+ "required": [
1418
+ "details",
1419
+ "attachments"
1420
+ ]
1421
+ }
1422
+ ],
1423
+ "required": [
1424
+ "yesNo"
1425
+ ],
1426
+ "properties": {
1427
+ "yesNo": {
1428
+ "nts2Ref": "A5.1.1"
1429
+ }
1430
+ }
1431
+ },
1432
+ "containsAsbestos": {
1433
+ "nts2Ref": "A5.2",
1434
+ "discriminator": {
1435
+ "propertyName": "yesNo"
1436
+ },
1437
+ "oneOf": [
1438
+ {
1439
+ "properties": {
1440
+ "yesNo": {
1441
+ "enum": [
1442
+ "No"
1443
+ ]
1444
+ }
1445
+ }
1446
+ },
1447
+ {
1448
+ "properties": {
1449
+ "yesNo": {
1450
+ "enum": [
1451
+ "Yes"
1452
+ ]
1453
+ },
1454
+ "details": {
1455
+ "nts2Ref": "A5.2.2",
1456
+ "title": "Details"
1457
+ }
1458
+ },
1459
+ "required": [
1460
+ "details"
1461
+ ]
1462
+ }
1463
+ ],
1464
+ "required": [
1465
+ "yesNo"
1466
+ ],
1467
+ "properties": {
1468
+ "yesNo": {
1469
+ "nts2Ref": "A5.2.1"
1470
+ }
1471
+ }
1472
+ },
1342
1473
  "japaneseKnotweed": {
1343
1474
  "nts2Ref": "A5.3",
1344
1475
  "discriminator": {
@@ -1413,6 +1544,46 @@
1413
1544
  "nts2Ref": "A5.4.1"
1414
1545
  }
1415
1546
  }
1547
+ },
1548
+ "ongoingHealthOrSafetyIssue": {
1549
+ "nts2Ref": "A5.5",
1550
+ "discriminator": {
1551
+ "propertyName": "yesNo"
1552
+ },
1553
+ "oneOf": [
1554
+ {
1555
+ "properties": {
1556
+ "yesNo": {
1557
+ "enum": [
1558
+ "No"
1559
+ ]
1560
+ }
1561
+ }
1562
+ },
1563
+ {
1564
+ "properties": {
1565
+ "yesNo": {
1566
+ "enum": [
1567
+ "Yes"
1568
+ ]
1569
+ },
1570
+ "details": {
1571
+ "nts2Ref": "A5.5.2"
1572
+ }
1573
+ },
1574
+ "required": [
1575
+ "details"
1576
+ ]
1577
+ }
1578
+ ],
1579
+ "required": [
1580
+ "yesNo"
1581
+ ],
1582
+ "properties": {
1583
+ "yesNo": {
1584
+ "nts2Ref": "A5.5.1"
1585
+ }
1586
+ }
1416
1587
  }
1417
1588
  }
1418
1589
  },
@@ -21,7 +21,8 @@
21
21
  "listingAndConservation",
22
22
  "rightsAndInformalArrangements",
23
23
  "environmentalIssues",
24
- "notices"
24
+ "notices",
25
+ "specialistIssues"
25
26
  ],
26
27
  "properties": {
27
28
  "lettingInformation": {