@pdtf/schemas 3.2.0-5 → 3.2.1-10
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 +1 -0
- package/package.json +1 -1
- package/src/examples/v3/exampleAddParticipantVouch.json +3 -0
- package/src/examples/v3/exampleDocumentedVouch.json +3 -0
- package/src/examples/v3/exampleElectronicRecord.json +3 -0
- package/src/examples/v3/exampleTransaction.json +11 -2
- package/src/examples/v3/exampleVouch.json +3 -0
- package/src/schemas/v3/combined.json +511 -17
- package/src/schemas/v3/overlays/baspi4.json +5 -1
- package/src/schemas/v3/overlays/baspi5.json +5 -1
- package/src/schemas/v3/overlays/con29R.json +1 -1
- package/src/schemas/v3/overlays/nts-sef.json +2161 -0
- package/src/schemas/v3/overlays/nts.json +1 -3
- package/src/schemas/v3/overlays/ntsl.json +1 -0
- package/src/schemas/v3/overlays/sr24.json +17 -0
- package/src/schemas/v3/overlays/ta10.json +2 -1
- package/src/schemas/v3/overlays/ta7.json +17 -3
- package/src/schemas/v3/pdtf-transaction.json +96 -12
- package/src/schemas/v3/skeleton.json +13 -2
- package/src/schemas/verifiedClaims/pdtf-verified-claims.json +12 -0
- package/src/utils/extractOverlay.js +1 -0
- package/src/utils/listPathTitles.js +36 -0
- package/src/utils/pathList.csv +903 -0
|
@@ -383,9 +383,6 @@
|
|
|
383
383
|
"annualGroundRent": {
|
|
384
384
|
"ntsRef": "A3.4.2"
|
|
385
385
|
},
|
|
386
|
-
"groundRentFrequency": {
|
|
387
|
-
"ntsRef": "A3.4.3"
|
|
388
|
-
},
|
|
389
386
|
"rentSubjectToIncrease": {
|
|
390
387
|
"ntsRef": "A3.4.4",
|
|
391
388
|
"discriminator": {
|
|
@@ -1087,6 +1084,7 @@
|
|
|
1087
1084
|
"required": [
|
|
1088
1085
|
"mainsElectricity",
|
|
1089
1086
|
"solarPanels",
|
|
1087
|
+
"heatPump",
|
|
1090
1088
|
"otherSources"
|
|
1091
1089
|
],
|
|
1092
1090
|
"properties": {
|
|
@@ -6,12 +6,29 @@
|
|
|
6
6
|
"properties": {
|
|
7
7
|
"saleReadyDeclarations": {
|
|
8
8
|
"sr24Ref": "1",
|
|
9
|
+
"required": [
|
|
10
|
+
"authorisedToActOnBehalfOfAllSellers",
|
|
11
|
+
"authorisationToShare"
|
|
12
|
+
],
|
|
9
13
|
"properties": {
|
|
10
14
|
"authorisedToActOnBehalfOfAllSellers": {
|
|
11
15
|
"sr24Ref": "1.1"
|
|
12
16
|
},
|
|
13
17
|
"authorisationToShare": {
|
|
14
18
|
"sr24Ref": "1.2"
|
|
19
|
+
},
|
|
20
|
+
"sellerSignatures": {
|
|
21
|
+
"sr24Ref": "1.3",
|
|
22
|
+
"items": {
|
|
23
|
+
"properties": {
|
|
24
|
+
"name": {
|
|
25
|
+
"sr24Ref": "1.3.1"
|
|
26
|
+
},
|
|
27
|
+
"signedOn": {
|
|
28
|
+
"sr24Ref": "1.3.2"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
15
32
|
}
|
|
16
33
|
}
|
|
17
34
|
}
|
|
@@ -231,7 +231,12 @@
|
|
|
231
231
|
"properties": {
|
|
232
232
|
"organisesBuildingInsurance": {
|
|
233
233
|
"ta7Ref": "5.1",
|
|
234
|
-
"title": "Who is responsible for arranging the buildings insurance on the property?"
|
|
234
|
+
"title": "Who is responsible for arranging the buildings insurance on the property?",
|
|
235
|
+
"enum": [
|
|
236
|
+
"the Lessees",
|
|
237
|
+
"Management Company",
|
|
238
|
+
"Landlord"
|
|
239
|
+
]
|
|
235
240
|
}
|
|
236
241
|
}
|
|
237
242
|
}
|
|
@@ -341,7 +346,11 @@
|
|
|
341
346
|
"rentIncreaseCalculated": {
|
|
342
347
|
"ta7Ref": "1.2e"
|
|
343
348
|
}
|
|
344
|
-
}
|
|
349
|
+
},
|
|
350
|
+
"required": [
|
|
351
|
+
"rentReviewFrequency",
|
|
352
|
+
"rentIncreaseCalculated"
|
|
353
|
+
]
|
|
345
354
|
}
|
|
346
355
|
],
|
|
347
356
|
"required": [
|
|
@@ -353,7 +362,12 @@
|
|
|
353
362
|
}
|
|
354
363
|
}
|
|
355
364
|
}
|
|
356
|
-
}
|
|
365
|
+
},
|
|
366
|
+
"required": [
|
|
367
|
+
"annualGroundRent",
|
|
368
|
+
"groundRentFrequency",
|
|
369
|
+
"rentSubjectToIncrease"
|
|
370
|
+
]
|
|
357
371
|
}
|
|
358
372
|
],
|
|
359
373
|
"required": [
|
|
@@ -468,11 +468,15 @@
|
|
|
468
468
|
"title": "Price type",
|
|
469
469
|
"type": "string",
|
|
470
470
|
"enum": [
|
|
471
|
-
"
|
|
471
|
+
"Price",
|
|
472
472
|
"Fixed price",
|
|
473
|
+
"Guide price",
|
|
473
474
|
"Offers in excess of",
|
|
474
475
|
"Offers in region of",
|
|
475
|
-
"
|
|
476
|
+
"Offers over",
|
|
477
|
+
"Offers invited",
|
|
478
|
+
"Sale by tender",
|
|
479
|
+
"From"
|
|
476
480
|
]
|
|
477
481
|
},
|
|
478
482
|
"disposal": {
|
|
@@ -4556,11 +4560,6 @@
|
|
|
4556
4560
|
"Managing Agent",
|
|
4557
4561
|
"the Lessees",
|
|
4558
4562
|
"Not applicable"
|
|
4559
|
-
],
|
|
4560
|
-
"ta7enum": [
|
|
4561
|
-
"the Lessees",
|
|
4562
|
-
"Management Company",
|
|
4563
|
-
"Landlord"
|
|
4564
4563
|
]
|
|
4565
4564
|
},
|
|
4566
4565
|
"dealsWithDayToDayMaintenanceOfBuilding": {
|
|
@@ -6320,7 +6319,7 @@
|
|
|
6320
6319
|
},
|
|
6321
6320
|
"premiumIncludedInServiceCharge": {
|
|
6322
6321
|
"type": "object",
|
|
6323
|
-
"title": "Is the insurance premium included in the service charge
|
|
6322
|
+
"title": "Is the insurance premium included in the service charge budget?",
|
|
6324
6323
|
"properties": {
|
|
6325
6324
|
"yesNo": {
|
|
6326
6325
|
"type": "string",
|
|
@@ -6349,7 +6348,7 @@
|
|
|
6349
6348
|
]
|
|
6350
6349
|
},
|
|
6351
6350
|
"details": {
|
|
6352
|
-
"title": "
|
|
6351
|
+
"title": "Confirm the annual amount payable for the Property",
|
|
6353
6352
|
"type": "number"
|
|
6354
6353
|
}
|
|
6355
6354
|
}
|
|
@@ -7510,6 +7509,7 @@
|
|
|
7510
7509
|
"items": {
|
|
7511
7510
|
"type": "string",
|
|
7512
7511
|
"enum": [
|
|
7512
|
+
"None",
|
|
7513
7513
|
"Allocated",
|
|
7514
7514
|
"Communal",
|
|
7515
7515
|
"Covered",
|
|
@@ -7953,6 +7953,61 @@
|
|
|
7953
7953
|
}
|
|
7954
7954
|
]
|
|
7955
7955
|
},
|
|
7956
|
+
"loft": {
|
|
7957
|
+
"title": "Does the property have access to a loft?",
|
|
7958
|
+
"type": "object",
|
|
7959
|
+
"properties": {
|
|
7960
|
+
"loftAccess": {
|
|
7961
|
+
"type": "string",
|
|
7962
|
+
"title": "",
|
|
7963
|
+
"enum": [
|
|
7964
|
+
"Yes",
|
|
7965
|
+
"No"
|
|
7966
|
+
]
|
|
7967
|
+
}
|
|
7968
|
+
},
|
|
7969
|
+
"oneOf": [
|
|
7970
|
+
{
|
|
7971
|
+
"properties": {
|
|
7972
|
+
"loftAccess": {
|
|
7973
|
+
"enum": [
|
|
7974
|
+
"No"
|
|
7975
|
+
]
|
|
7976
|
+
}
|
|
7977
|
+
}
|
|
7978
|
+
},
|
|
7979
|
+
{
|
|
7980
|
+
"properties": {
|
|
7981
|
+
"loftAccess": {
|
|
7982
|
+
"enum": [
|
|
7983
|
+
"Yes"
|
|
7984
|
+
]
|
|
7985
|
+
},
|
|
7986
|
+
"details": {
|
|
7987
|
+
"title": "Please describe how the loft is accessed",
|
|
7988
|
+
"type": "string",
|
|
7989
|
+
"minLength": 1
|
|
7990
|
+
},
|
|
7991
|
+
"loftBoarded": {
|
|
7992
|
+
"type": "string",
|
|
7993
|
+
"title": "Is the loft space boarded?",
|
|
7994
|
+
"enum": [
|
|
7995
|
+
"Yes",
|
|
7996
|
+
"No"
|
|
7997
|
+
]
|
|
7998
|
+
},
|
|
7999
|
+
"loftInsulated": {
|
|
8000
|
+
"type": "string",
|
|
8001
|
+
"title": "Is the loft space insulated?",
|
|
8002
|
+
"enum": [
|
|
8003
|
+
"Yes",
|
|
8004
|
+
"No"
|
|
8005
|
+
]
|
|
8006
|
+
}
|
|
8007
|
+
}
|
|
8008
|
+
}
|
|
8009
|
+
]
|
|
8010
|
+
},
|
|
7956
8011
|
"sprayFoamInsulation": {
|
|
7957
8012
|
"title": "Has spray foam insulation been installed at the property?",
|
|
7958
8013
|
"type": "object",
|
|
@@ -8007,6 +8062,7 @@
|
|
|
8007
8062
|
"items": {
|
|
8008
8063
|
"type": "string",
|
|
8009
8064
|
"enum": [
|
|
8065
|
+
"None",
|
|
8010
8066
|
"Level access",
|
|
8011
8067
|
"Ramped access",
|
|
8012
8068
|
"Lift access",
|
|
@@ -8435,7 +8491,8 @@
|
|
|
8435
8491
|
"F",
|
|
8436
8492
|
"G",
|
|
8437
8493
|
"H",
|
|
8438
|
-
"I"
|
|
8494
|
+
"I",
|
|
8495
|
+
"Not banded"
|
|
8439
8496
|
]
|
|
8440
8497
|
},
|
|
8441
8498
|
"councilTaxAffectingAlterations": {
|
|
@@ -17023,6 +17080,7 @@
|
|
|
17023
17080
|
"items": {
|
|
17024
17081
|
"type": "string",
|
|
17025
17082
|
"enum": [
|
|
17083
|
+
"None",
|
|
17026
17084
|
"Air conditioning",
|
|
17027
17085
|
"Double glazing",
|
|
17028
17086
|
"Triple glazing",
|
|
@@ -21628,6 +21686,32 @@
|
|
|
21628
21686
|
"authorisationToShare": {
|
|
21629
21687
|
"title": "I/we consent to the sharing of the information contained in the Sale Ready pack with the my/our legal representative and the buyer(s) and their legal representatives",
|
|
21630
21688
|
"type": "boolean"
|
|
21689
|
+
},
|
|
21690
|
+
"sellerSignatures": {
|
|
21691
|
+
"title": "I confirm that all information provided is accurate to the best of my knowledge and if I become aware of any change to/changes which alter the information supplied/provided prior to exchange of contracts for the sale of the property, I will immediately notify the person marketing the property as well as my property lawyer.",
|
|
21692
|
+
"type": "array",
|
|
21693
|
+
"items": {
|
|
21694
|
+
"type": "object",
|
|
21695
|
+
"required": [
|
|
21696
|
+
"name",
|
|
21697
|
+
"signedOn"
|
|
21698
|
+
],
|
|
21699
|
+
"properties": {
|
|
21700
|
+
"name": {
|
|
21701
|
+
"title": "Name of signatory",
|
|
21702
|
+
"type": "string",
|
|
21703
|
+
"minLength": 1
|
|
21704
|
+
},
|
|
21705
|
+
"signedOn": {
|
|
21706
|
+
"title": "Date and time of signature in ISO 8601 format",
|
|
21707
|
+
"type": "string",
|
|
21708
|
+
"format": "date-time"
|
|
21709
|
+
},
|
|
21710
|
+
"externalIds": {
|
|
21711
|
+
"type": "object"
|
|
21712
|
+
}
|
|
21713
|
+
}
|
|
21714
|
+
}
|
|
21631
21715
|
}
|
|
21632
21716
|
}
|
|
21633
21717
|
},
|
|
@@ -24110,8 +24194,8 @@
|
|
|
24110
24194
|
}
|
|
24111
24195
|
]
|
|
24112
24196
|
},
|
|
24113
|
-
"
|
|
24114
|
-
"title": "flood and
|
|
24197
|
+
"floodAndCoastalErosionRiskManagement": {
|
|
24198
|
+
"title": "flood and coastal erosion risk management",
|
|
24115
24199
|
"type": "object",
|
|
24116
24200
|
"properties": {
|
|
24117
24201
|
"yesNo": {
|
|
@@ -1076,6 +1076,12 @@
|
|
|
1076
1076
|
"abilityToResideAtProperty": {},
|
|
1077
1077
|
"attachments": {}
|
|
1078
1078
|
},
|
|
1079
|
+
"loft": {
|
|
1080
|
+
"loftAccess": {},
|
|
1081
|
+
"details": {},
|
|
1082
|
+
"loftBoarded": {},
|
|
1083
|
+
"loftInsulated": {}
|
|
1084
|
+
},
|
|
1079
1085
|
"sprayFoamInsulation": {
|
|
1080
1086
|
"hasSprayFoamInstalled": {},
|
|
1081
1087
|
"details": {},
|
|
@@ -2809,7 +2815,12 @@
|
|
|
2809
2815
|
},
|
|
2810
2816
|
"saleReadyDeclarations": {
|
|
2811
2817
|
"authorisedToActOnBehalfOfAllSellers": {},
|
|
2812
|
-
"authorisationToShare": {}
|
|
2818
|
+
"authorisationToShare": {},
|
|
2819
|
+
"sellerSignatures": {
|
|
2820
|
+
"name": {},
|
|
2821
|
+
"signedOn": {},
|
|
2822
|
+
"externalIds": {}
|
|
2823
|
+
}
|
|
2813
2824
|
},
|
|
2814
2825
|
"localSearches": {
|
|
2815
2826
|
"localLandCharges": {
|
|
@@ -3171,7 +3182,7 @@
|
|
|
3171
3182
|
"yesNo": {},
|
|
3172
3183
|
"details": {}
|
|
3173
3184
|
},
|
|
3174
|
-
"
|
|
3185
|
+
"floodAndCoastalErosionRiskManagement": {
|
|
3175
3186
|
"yesNo": {},
|
|
3176
3187
|
"details": {}
|
|
3177
3188
|
}
|
|
@@ -362,6 +362,18 @@
|
|
|
362
362
|
"verified_claims_def": {
|
|
363
363
|
"type": "object",
|
|
364
364
|
"properties": {
|
|
365
|
+
"id": {
|
|
366
|
+
"description": "The unique identifier of the verified claim",
|
|
367
|
+
"type": "string"
|
|
368
|
+
},
|
|
369
|
+
"transactionId": {
|
|
370
|
+
"description": "The unique identifier of the PDTF transaction to which these claims relate",
|
|
371
|
+
"type": "string"
|
|
372
|
+
},
|
|
373
|
+
"schemaVersion": {
|
|
374
|
+
"description": "The semantic version of the schema used to validate the claims",
|
|
375
|
+
"type": "string"
|
|
376
|
+
},
|
|
365
377
|
"verification": {
|
|
366
378
|
"type": "object",
|
|
367
379
|
"properties": {
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
const traverse = require("traverse");
|
|
2
|
+
const fs = require("fs");
|
|
3
|
+
|
|
4
|
+
const combinedSchema = require("../schemas/v3/combined.json");
|
|
5
|
+
|
|
6
|
+
const includeFields = [
|
|
7
|
+
"ntsRef",
|
|
8
|
+
"nts-sefRef",
|
|
9
|
+
"ntslRef",
|
|
10
|
+
"ta6Ref",
|
|
11
|
+
"ta7Ref",
|
|
12
|
+
"ta10Ref",
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
let pathCsv = "";
|
|
16
|
+
|
|
17
|
+
traverse(combinedSchema).forEach(function (element) {
|
|
18
|
+
let path = "/" + this.path.join("/");
|
|
19
|
+
if (path === "/") path = "";
|
|
20
|
+
if (includeFields.some((field) => element[field]) && element.title) {
|
|
21
|
+
const filteredPath = path
|
|
22
|
+
.split("/")
|
|
23
|
+
.filter(
|
|
24
|
+
(segment) =>
|
|
25
|
+
segment !== "properties" &&
|
|
26
|
+
segment !== "oneOf" &&
|
|
27
|
+
segment !== "items" &&
|
|
28
|
+
isNaN(segment)
|
|
29
|
+
)
|
|
30
|
+
.join("/");
|
|
31
|
+
const line = `"/${filteredPath}", "${element.title}"\n`;
|
|
32
|
+
pathCsv += line;
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
fs.writeFileSync("./pathList.csv", pathCsv);
|