@pdtf/schemas 3.6.0-dev.3 → 3.6.0-dev.32

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.
Files changed (193) hide show
  1. package/docs/ta6-certificate-permit-contract.md +51 -0
  2. package/docs/v4-mapping-and-recomposition.md +476 -0
  3. package/index.js +212 -0
  4. package/package.json +10 -1
  5. package/src/schemas/v3/combined.json +2267 -658
  6. package/src/schemas/v3/compactSkeleton.txt +120 -51
  7. package/src/schemas/v3/overlays/baspi4.json +54 -74
  8. package/src/schemas/v3/overlays/baspi5.json +54 -74
  9. package/src/schemas/v3/overlays/extensions/ac.json +2 -1
  10. package/src/schemas/v3/overlays/extensions/dk.json +3 -2
  11. package/src/schemas/v3/overlays/extensions/fd.json +2 -1
  12. package/src/schemas/v3/overlays/extensions/ic.json +44 -9
  13. package/src/schemas/v3/overlays/extensions/lc.json +3 -2
  14. package/src/schemas/v3/overlays/extensions/mi.json +2 -1
  15. package/src/schemas/v3/overlays/extensions/nd.json +3 -2
  16. package/src/schemas/v3/overlays/extensions/pc.json +3 -2
  17. package/src/schemas/v3/overlays/extensions/ph.json +2 -1
  18. package/src/schemas/v3/overlays/extensions/rw.json +4 -3
  19. package/src/schemas/v3/overlays/extensions/sc.json +8 -4
  20. package/src/schemas/v3/overlays/extensions/sd.json +3 -2
  21. package/src/schemas/v3/overlays/extensions/tr.json +3 -2
  22. package/src/schemas/v3/overlays/extensions/wg.json +2 -1
  23. package/src/schemas/v3/overlays/llc1.json +1 -2
  24. package/src/schemas/v3/overlays/lpe1.json +3 -2
  25. package/src/schemas/v3/overlays/nts.json +7 -3
  26. package/src/schemas/v3/overlays/nts2.json +9 -4
  27. package/src/schemas/v3/overlays/ntsl.json +5 -2
  28. package/src/schemas/v3/overlays/ntsl2.json +7 -3
  29. package/src/schemas/v3/overlays/piq.json +34 -25
  30. package/src/schemas/v3/overlays/rds.json +24 -50
  31. package/src/schemas/v3/overlays/sef25.json +16 -2
  32. package/src/schemas/v3/overlays/ta10.json +0 -9
  33. package/src/schemas/v3/overlays/ta6.json +39 -70
  34. package/src/schemas/v3/overlays/ta6ed6.json +331 -307
  35. package/{pensive-tesla-d0d355/src/schemas/v3/overlays/ta6.json → src/schemas/v3/overlays/ta6ed6v2.json} +1574 -1464
  36. package/src/schemas/v3/overlays/ta7.json +2 -1
  37. package/src/schemas/v3/overlays/ta7ed5.json +77 -21
  38. package/src/schemas/v3/pdtf-transaction.json +1030 -492
  39. package/src/schemas/v3/skeleton.json +163 -57
  40. package/src/schemas/v4/Gift.json +88 -0
  41. package/src/schemas/v4/Offer.json +425 -0
  42. package/src/schemas/v4/Organisation.json +167 -0
  43. package/src/schemas/v4/Person.json +321 -0
  44. package/src/schemas/v4/Property.json +27813 -0
  45. package/src/schemas/v4/PropertyTitleLink.json +183 -0
  46. package/src/schemas/v4/Representation.json +67 -0
  47. package/src/schemas/v4/SellerCapacity.json +193 -0
  48. package/src/schemas/v4/Title.json +14675 -0
  49. package/src/schemas/v4/Transaction.json +1612 -0
  50. package/src/schemas/v4/TransactionRole.json +59 -0
  51. package/src/schemas/v4/mapping.json +1188 -0
  52. package/src/utils/checkTa6OmissionCompatibility.js +146 -0
  53. package/src/utils/extractExtensionOverlays.js +11 -2
  54. package/src/utils/extractOverlay.js +21 -0
  55. package/src/utils/generateV4Schemas.js +1561 -0
  56. package/src/utils/syncTa6ed6v2Markers.js +92 -0
  57. package/src/utils/v4.js +956 -0
  58. package/CLAUDE.md +0 -101
  59. package/pensive-tesla-d0d355/CLAUDE.md +0 -101
  60. package/pensive-tesla-d0d355/LICENSE +0 -21
  61. package/pensive-tesla-d0d355/README.md +0 -435
  62. package/pensive-tesla-d0d355/docs/branch-release-workflow.md +0 -138
  63. package/pensive-tesla-d0d355/docs/sef25-extensions-ui-spec.md +0 -355
  64. package/pensive-tesla-d0d355/index.js +0 -654
  65. package/pensive-tesla-d0d355/package-lock.json +0 -7297
  66. package/pensive-tesla-d0d355/package.json +0 -44
  67. package/pensive-tesla-d0d355/src/examples/v1/exampleAddParticipantVouch.json +0 -32
  68. package/pensive-tesla-d0d355/src/examples/v1/exampleDocumentedVouch.json +0 -40
  69. package/pensive-tesla-d0d355/src/examples/v1/exampleElectronicRecord.json +0 -30
  70. package/pensive-tesla-d0d355/src/examples/v1/exampleTransaction.json +0 -878
  71. package/pensive-tesla-d0d355/src/examples/v1/exampleVouch.json +0 -25
  72. package/pensive-tesla-d0d355/src/examples/v2/exampleTransaction.json +0 -901
  73. package/pensive-tesla-d0d355/src/examples/v3/exampleAddParticipantVouch.json +0 -38
  74. package/pensive-tesla-d0d355/src/examples/v3/exampleCustomOverlay.json +0 -55
  75. package/pensive-tesla-d0d355/src/examples/v3/exampleCustomOverlay2.json +0 -93
  76. package/pensive-tesla-d0d355/src/examples/v3/exampleDocumentedVouch.json +0 -47
  77. package/pensive-tesla-d0d355/src/examples/v3/exampleElectronicRecord.json +0 -36
  78. package/pensive-tesla-d0d355/src/examples/v3/exampleTransaction.json +0 -1038
  79. package/pensive-tesla-d0d355/src/examples/v3/exampleVouch.json +0 -32
  80. package/pensive-tesla-d0d355/src/mappings/SendPropertyDetailsRequestSchema.json +0 -1588
  81. package/pensive-tesla-d0d355/src/mappings/adf.js +0 -198
  82. package/pensive-tesla-d0d355/src/schemas/v1/GeoJSON.json +0 -1279
  83. package/pensive-tesla-d0d355/src/schemas/v1/baspiNotes.html +0 -102
  84. package/pensive-tesla-d0d355/src/schemas/v1/energy-performance-certificate.json +0 -124
  85. package/pensive-tesla-d0d355/src/schemas/v1/freehold-information.json +0 -2051
  86. package/pensive-tesla-d0d355/src/schemas/v1/leasehold-information.json +0 -2064
  87. package/pensive-tesla-d0d355/src/schemas/v1/legal-information.json +0 -1045
  88. package/pensive-tesla-d0d355/src/schemas/v1/material-facts.json +0 -2109
  89. package/pensive-tesla-d0d355/src/schemas/v1/pdtf-transaction-search-results.json +0 -40
  90. package/pensive-tesla-d0d355/src/schemas/v1/pdtf-transaction.json +0 -191
  91. package/pensive-tesla-d0d355/src/schemas/v1/searches/drainage-and-water.json +0 -261
  92. package/pensive-tesla-d0d355/src/schemas/v1/searches/local-land-charges.json +0 -69
  93. package/pensive-tesla-d0d355/src/schemas/v1/searches/local-searches-required.json +0 -857
  94. package/pensive-tesla-d0d355/src/schemas/v1/searches.json +0 -237
  95. package/pensive-tesla-d0d355/src/schemas/v1/title-deed.json +0 -841
  96. package/pensive-tesla-d0d355/src/schemas/v2/baspiNotes.html +0 -102
  97. package/pensive-tesla-d0d355/src/schemas/v2/combined.json +0 -37731
  98. package/pensive-tesla-d0d355/src/schemas/v2/overlays/baspi.json +0 -8132
  99. package/pensive-tesla-d0d355/src/schemas/v2/overlays/con29DW.json +0 -705
  100. package/pensive-tesla-d0d355/src/schemas/v2/overlays/con29R.json +0 -2956
  101. package/pensive-tesla-d0d355/src/schemas/v2/overlays/fme1.json +0 -1259
  102. package/pensive-tesla-d0d355/src/schemas/v2/overlays/llc1.json +0 -25
  103. package/pensive-tesla-d0d355/src/schemas/v2/overlays/lpe1.json +0 -2171
  104. package/pensive-tesla-d0d355/src/schemas/v2/overlays/nts.json +0 -326
  105. package/pensive-tesla-d0d355/src/schemas/v2/overlays/oc1.json +0 -2799
  106. package/pensive-tesla-d0d355/src/schemas/v2/overlays/piq.json +0 -3419
  107. package/pensive-tesla-d0d355/src/schemas/v2/overlays/rds.json +0 -3736
  108. package/pensive-tesla-d0d355/src/schemas/v2/overlays/ta10.json +0 -5306
  109. package/pensive-tesla-d0d355/src/schemas/v2/overlays/ta6.json +0 -4533
  110. package/pensive-tesla-d0d355/src/schemas/v2/overlays/ta7.json +0 -1045
  111. package/pensive-tesla-d0d355/src/schemas/v2/pdtf-transaction.json +0 -34351
  112. package/pensive-tesla-d0d355/src/schemas/v2/skeleton.json +0 -3973
  113. package/pensive-tesla-d0d355/src/schemas/v3/combined.json +0 -48469
  114. package/pensive-tesla-d0d355/src/schemas/v3/compactSkeleton.txt +0 -4519
  115. package/pensive-tesla-d0d355/src/schemas/v3/overlays/README.md +0 -299
  116. package/pensive-tesla-d0d355/src/schemas/v3/overlays/baspi4.json +0 -8025
  117. package/pensive-tesla-d0d355/src/schemas/v3/overlays/baspi5.json +0 -8175
  118. package/pensive-tesla-d0d355/src/schemas/v3/overlays/con29DW.json +0 -716
  119. package/pensive-tesla-d0d355/src/schemas/v3/overlays/con29R.json +0 -2981
  120. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/ac.json +0 -333
  121. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/as.json +0 -74
  122. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/dk.json +0 -32
  123. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/dr.json +0 -73
  124. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/er.json +0 -85
  125. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/fd.json +0 -75
  126. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/hi.json +0 -51
  127. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/hs.json +0 -73
  128. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/ic.json +0 -59
  129. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/jk.json +0 -96
  130. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/la.json +0 -85
  131. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/lc.json +0 -75
  132. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/ma.json +0 -90
  133. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/mc.json +0 -38
  134. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/mi.json +0 -69
  135. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/nd.json +0 -43
  136. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/oa.json +0 -24
  137. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/oc.json +0 -57
  138. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/pc.json +0 -37
  139. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/ph.json +0 -194
  140. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/rw.json +0 -68
  141. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/sb.json +0 -73
  142. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/sc.json +0 -129
  143. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/sd.json +0 -63
  144. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/sf.json +0 -74
  145. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/sl.json +0 -68
  146. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/ta.json +0 -252
  147. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/tf.json +0 -103
  148. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/tr.json +0 -73
  149. package/pensive-tesla-d0d355/src/schemas/v3/overlays/extensions/wg.json +0 -350
  150. package/pensive-tesla-d0d355/src/schemas/v3/overlays/fme1.json +0 -1266
  151. package/pensive-tesla-d0d355/src/schemas/v3/overlays/llc1.json +0 -25
  152. package/pensive-tesla-d0d355/src/schemas/v3/overlays/lpe1.json +0 -2199
  153. package/pensive-tesla-d0d355/src/schemas/v3/overlays/nts.json +0 -2157
  154. package/pensive-tesla-d0d355/src/schemas/v3/overlays/nts2.json +0 -2742
  155. package/pensive-tesla-d0d355/src/schemas/v3/overlays/ntsl.json +0 -1813
  156. package/pensive-tesla-d0d355/src/schemas/v3/overlays/ntsl2.json +0 -2217
  157. package/pensive-tesla-d0d355/src/schemas/v3/overlays/oc1.json +0 -2817
  158. package/pensive-tesla-d0d355/src/schemas/v3/overlays/piq.json +0 -3322
  159. package/pensive-tesla-d0d355/src/schemas/v3/overlays/rds.json +0 -3665
  160. package/pensive-tesla-d0d355/src/schemas/v3/overlays/sef25.json +0 -1639
  161. package/pensive-tesla-d0d355/src/schemas/v3/overlays/sr24.json +0 -38
  162. package/pensive-tesla-d0d355/src/schemas/v3/overlays/ta10.json +0 -4654
  163. package/pensive-tesla-d0d355/src/schemas/v3/overlays/ta6ed6.json +0 -6534
  164. package/pensive-tesla-d0d355/src/schemas/v3/overlays/ta7.json +0 -1537
  165. package/pensive-tesla-d0d355/src/schemas/v3/overlays/ta7ed5.json +0 -1551
  166. package/pensive-tesla-d0d355/src/schemas/v3/pdtf-transaction.json +0 -41573
  167. package/pensive-tesla-d0d355/src/schemas/v3/skeleton.json +0 -5767
  168. package/pensive-tesla-d0d355/src/schemas/verifiedClaims/README.md +0 -21
  169. package/pensive-tesla-d0d355/src/schemas/verifiedClaims/pdtf-verified-claims.json +0 -447
  170. package/pensive-tesla-d0d355/src/utils/compactSkeleton.js +0 -84
  171. package/pensive-tesla-d0d355/src/utils/countTokens.js +0 -67
  172. package/pensive-tesla-d0d355/src/utils/extractExtensionOverlays.js +0 -624
  173. package/pensive-tesla-d0d355/src/utils/extractOverlay.js +0 -381
  174. package/pensive-tesla-d0d355/src/utils/extractProperties.js +0 -44
  175. package/pensive-tesla-d0d355/src/utils/listPathTitles.js +0 -36
  176. package/pensive-tesla-d0d355/src/utils/minimalSkeleton.js +0 -85
  177. package/pensive-tesla-d0d355/src/utils/pathList.csv +0 -903
  178. package/pensive-tesla-d0d355/src/utils/pathSkeleton.js +0 -181
  179. package/src/examples/v1/exampleAddParticipantVouch.json +0 -32
  180. package/src/examples/v1/exampleDocumentedVouch.json +0 -40
  181. package/src/examples/v1/exampleElectronicRecord.json +0 -30
  182. package/src/examples/v1/exampleTransaction.json +0 -878
  183. package/src/examples/v1/exampleVouch.json +0 -25
  184. package/src/examples/v2/exampleTransaction.json +0 -901
  185. package/src/examples/v3/exampleAddParticipantVouch.json +0 -38
  186. package/src/examples/v3/exampleCustomOverlay.json +0 -55
  187. package/src/examples/v3/exampleCustomOverlay2.json +0 -93
  188. package/src/examples/v3/exampleDocumentedVouch.json +0 -47
  189. package/src/examples/v3/exampleElectronicRecord.json +0 -36
  190. package/src/examples/v3/exampleTransaction.json +0 -1038
  191. package/src/examples/v3/exampleVouch.json +0 -32
  192. package/src/mappings/SendPropertyDetailsRequestSchema.json +0 -1588
  193. package/src/mappings/adf.js +0 -198
@@ -0,0 +1,183 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://trust.propdata.org.uk/schemas/v4/entities/propertyTitleLink.json",
4
+ "type": "object",
5
+ "title": "Property–Title Link Entity",
6
+ "description": "A standing assertion that a property (UPRN) is related to a title. Many-to-many: one UPRN can sit on several titles, and one title (a block freehold, say) can cover many UPRNs. Issued by HM Land Registry for a registered title, and by the seller's conveyancer, on the epitome of title, for unregistered land. References no Transaction: a Transaction selects the titles being sold from the linked titles through titlesToBeSold, and a linked title it does not select is related but not sold.",
7
+ "x-pdtf-source": {
8
+ "packageName": "@pdtf/schemas",
9
+ "packageVersion": "3.6.0-dev.32",
10
+ "v3SchemaId": "https://trust.propdata.org.uk/schemas/v3/pdtf-transaction.json",
11
+ "combinedPath": "src/schemas/v3/combined.json",
12
+ "combinedSha256": "83f31fddf82e57e67f2bc92844459095041b254b970d8881dd4318248c188f67"
13
+ },
14
+ "properties": {
15
+ "id": {
16
+ "title": "Property–Title Link URN",
17
+ "description": "Uniform Resource Name identifier for the link, urn:pdtf:propertyTitleLink:{id}",
18
+ "type": "string",
19
+ "pattern": "^urn:[a-z0-9][a-z0-9-]{0,31}:[a-zA-Z0-9._~:/?#\\[\\]@!$&'()*+,;=-]+$"
20
+ },
21
+ "property": {
22
+ "title": "Property Reference",
23
+ "description": "URN referencing the Property entity, urn:pdtf:uprn:{uprn}",
24
+ "type": "string",
25
+ "pattern": "^urn:[a-z0-9][a-z0-9-]{0,31}:[a-zA-Z0-9._~:/?#\\[\\]@!$&'()*+,;=-]+$"
26
+ },
27
+ "title": {
28
+ "title": "Title Reference",
29
+ "description": "URN referencing the Title entity: urn:pdtf:titleNumber:{number} for a registered title, urn:pdtf:unregisteredTitle:{id} for unregistered land",
30
+ "type": "string",
31
+ "pattern": "^urn:[a-z0-9][a-z0-9-]{0,31}:[a-zA-Z0-9._~:/?#\\[\\]@!$&'()*+,;=-]+$"
32
+ },
33
+ "basis": {
34
+ "title": "Basis of the link",
35
+ "description": "What the link rests on, and the date it speaks as at. A registered title is linked on the register's own UPRN-to-title data; unregistered land on the epitome of title.",
36
+ "type": "object",
37
+ "properties": {
38
+ "type": {
39
+ "title": "Basis type",
40
+ "type": "string",
41
+ "enum": [
42
+ "Register Dataset",
43
+ "Epitome of Title"
44
+ ]
45
+ },
46
+ "asOf": {
47
+ "title": "As at",
48
+ "description": "The date the link speaks as at: the dataset's effective date, or the date the epitome was examined",
49
+ "type": "string",
50
+ "format": "date"
51
+ }
52
+ },
53
+ "required": [
54
+ "type",
55
+ "asOf"
56
+ ],
57
+ "discriminator": {
58
+ "propertyName": "type"
59
+ },
60
+ "oneOf": [
61
+ {
62
+ "properties": {
63
+ "type": {
64
+ "type": "string",
65
+ "enum": [
66
+ "Register Dataset"
67
+ ]
68
+ },
69
+ "dataset": {
70
+ "title": "Dataset",
71
+ "description": "The register dataset the link is taken from, e.g. \"HMLR Title Number and UPRN Look Up\"",
72
+ "type": "string"
73
+ },
74
+ "datasetRelease": {
75
+ "title": "Dataset release",
76
+ "description": "The release the link is taken from, e.g. the full-file name of HMLR's monthly release (\"LR_UPRN_FULL_APR.csv\"). The dataset records no date per row, so asOf is the release date.",
77
+ "type": "string"
78
+ }
79
+ },
80
+ "required": [
81
+ "dataset"
82
+ ]
83
+ },
84
+ {
85
+ "properties": {
86
+ "type": {
87
+ "type": "string",
88
+ "enum": [
89
+ "Epitome of Title"
90
+ ]
91
+ },
92
+ "rootOfTitle": {
93
+ "title": "Root of title",
94
+ "description": "The good root of title the epitome starts from",
95
+ "type": "object",
96
+ "properties": {
97
+ "description": {
98
+ "title": "Description",
99
+ "description": "e.g. \"Conveyance on sale\"",
100
+ "type": "string"
101
+ },
102
+ "date": {
103
+ "title": "Date",
104
+ "description": "Date of the root document",
105
+ "type": "string",
106
+ "format": "date"
107
+ }
108
+ }
109
+ },
110
+ "epitomeDigest": {
111
+ "title": "Epitome digest",
112
+ "description": "SHA-256 digest of the epitome of title as examined, in the form sha256:{hex} (spec 02 §6.6)",
113
+ "type": "string",
114
+ "pattern": "^sha256:[0-9a-f]{64}$"
115
+ }
116
+ },
117
+ "required": [
118
+ "rootOfTitle"
119
+ ]
120
+ }
121
+ ]
122
+ }
123
+ },
124
+ "required": [
125
+ "property",
126
+ "title",
127
+ "basis"
128
+ ],
129
+ "allOf": [
130
+ {
131
+ "if": {
132
+ "properties": {
133
+ "title": {
134
+ "type": "string",
135
+ "pattern": "^urn:pdtf:titleNumber:"
136
+ }
137
+ },
138
+ "required": [
139
+ "title"
140
+ ]
141
+ },
142
+ "then": {
143
+ "properties": {
144
+ "basis": {
145
+ "type": "object",
146
+ "properties": {
147
+ "type": {
148
+ "type": "string",
149
+ "const": "Register Dataset"
150
+ }
151
+ }
152
+ }
153
+ }
154
+ }
155
+ },
156
+ {
157
+ "if": {
158
+ "properties": {
159
+ "title": {
160
+ "type": "string",
161
+ "pattern": "^urn:pdtf:unregisteredTitle:"
162
+ }
163
+ },
164
+ "required": [
165
+ "title"
166
+ ]
167
+ },
168
+ "then": {
169
+ "properties": {
170
+ "basis": {
171
+ "type": "object",
172
+ "properties": {
173
+ "type": {
174
+ "type": "string",
175
+ "const": "Epitome of Title"
176
+ }
177
+ }
178
+ }
179
+ }
180
+ }
181
+ }
182
+ ]
183
+ }
@@ -0,0 +1,67 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://trust.propdata.org.uk/schemas/v4/entities/representation.json",
4
+ "type": "object",
5
+ "title": "Representation Entity",
6
+ "description": "A professional representation relationship — one party instructed by another, e.g. a conveyancer acting for a seller. One entity per (representative, represented party) pair: a conveyancer instructed jointly by two sellers yields two, and sellers who instruct separate conveyancers yield one each.",
7
+ "x-pdtf-source": {
8
+ "packageName": "@pdtf/schemas",
9
+ "packageVersion": "3.6.0-dev.32",
10
+ "v3SchemaId": "https://trust.propdata.org.uk/schemas/v3/pdtf-transaction.json",
11
+ "combinedPath": "src/schemas/v3/combined.json",
12
+ "combinedSha256": "83f31fddf82e57e67f2bc92844459095041b254b970d8881dd4318248c188f67"
13
+ },
14
+ "properties": {
15
+ "id": {
16
+ "title": "Representation URN",
17
+ "description": "Uniform Resource Name identifier for the representation",
18
+ "type": "string",
19
+ "pattern": "^urn:[a-z0-9][a-z0-9-]{0,31}:[a-zA-Z0-9._~:/?#\\[\\]@!$&'()*+,;=-]+$"
20
+ },
21
+ "representative": {
22
+ "title": "Representative Reference",
23
+ "description": "DID referencing the Person or Organisation who is instructed",
24
+ "type": "string",
25
+ "pattern": "^did:[a-z0-9]+:(?:(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})*:)*(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})+$"
26
+ },
27
+ "representedParty": {
28
+ "title": "Represented Party Reference",
29
+ "description": "DID referencing the Person or Organisation who instructed them",
30
+ "type": "string",
31
+ "pattern": "^did:[a-z0-9]+:(?:(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})*:)*(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})+$"
32
+ },
33
+ "role": {
34
+ "title": "Role",
35
+ "type": "string",
36
+ "enum": [
37
+ "Seller",
38
+ "Seller's Conveyancer",
39
+ "Prospective Buyer",
40
+ "Buyer",
41
+ "Buyer's Conveyancer",
42
+ "Giftor",
43
+ "Estate Agent",
44
+ "Buyer's Agent",
45
+ "Surveyor",
46
+ "Mortgage Broker",
47
+ "Lender",
48
+ "Landlord",
49
+ "Tenant",
50
+ "Platform Support"
51
+ ],
52
+ "description": "The kind of representation this is — a property of the representation, not a duplicated participant attribute. The representative's firm is on the transaction roster."
53
+ },
54
+ "transaction": {
55
+ "title": "Transaction Reference",
56
+ "description": "DID referencing the Transaction entity",
57
+ "type": "string",
58
+ "pattern": "^did:[a-z0-9]+:(?:(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})*:)*(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})+$"
59
+ }
60
+ },
61
+ "required": [
62
+ "representative",
63
+ "representedParty",
64
+ "role",
65
+ "transaction"
66
+ ]
67
+ }
@@ -0,0 +1,193 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://trust.propdata.org.uk/schemas/v4/entities/sellerCapacity.json",
4
+ "type": "object",
5
+ "title": "Seller Capacity Entity",
6
+ "description": "The legal capacity in which a seller is selling a given title. Derived from the V3 participants 'Seller' branch (sellersCapacity, dateBecameOwnerOrAuthority).",
7
+ "x-pdtf-source": {
8
+ "packageName": "@pdtf/schemas",
9
+ "packageVersion": "3.6.0-dev.32",
10
+ "v3SchemaId": "https://trust.propdata.org.uk/schemas/v3/pdtf-transaction.json",
11
+ "combinedPath": "src/schemas/v3/combined.json",
12
+ "combinedSha256": "83f31fddf82e57e67f2bc92844459095041b254b970d8881dd4318248c188f67"
13
+ },
14
+ "properties": {
15
+ "id": {
16
+ "title": "Seller Capacity URN",
17
+ "description": "Uniform Resource Name identifier for the seller capacity",
18
+ "type": "string",
19
+ "pattern": "^urn:[a-z0-9][a-z0-9-]{0,31}:[a-zA-Z0-9._~:/?#\\[\\]@!$&'()*+,;=-]+$"
20
+ },
21
+ "seller": {
22
+ "title": "Seller Reference",
23
+ "description": "DID referencing the Person or Organisation acting as seller",
24
+ "type": "string",
25
+ "pattern": "^did:[a-z0-9]+:(?:(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})*:)*(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})+$"
26
+ },
27
+ "title": {
28
+ "title": "Title Reference",
29
+ "description": "URN referencing the Title entity being sold",
30
+ "type": "string",
31
+ "pattern": "^urn:[a-z0-9][a-z0-9-]{0,31}:[a-zA-Z0-9._~:/?#\\[\\]@!$&'()*+,;=-]+$"
32
+ },
33
+ "sellersCapacity": {
34
+ "title": "Capacity in which the Seller sells",
35
+ "ta6ed6Title": "What is your role in the sale?",
36
+ "ta6ed6v2Title": "What is your role in the sale?",
37
+ "type": "object",
38
+ "properties": {
39
+ "capacity": {
40
+ "type": "string",
41
+ "title": "",
42
+ "enum": [
43
+ "Legal Owner",
44
+ "Personal Representative for a Deceased Owner",
45
+ "Under Power of Attorney",
46
+ "Mortgagee in Possession",
47
+ "Company Director",
48
+ "Company Secretary",
49
+ "Trustee",
50
+ "Assistant",
51
+ "Other"
52
+ ],
53
+ "ta6ed6Enum": [
54
+ "Legal Owner",
55
+ "Company Director",
56
+ "Personal Representative for a Deceased Owner",
57
+ "Under Power of Attorney",
58
+ "Trustee"
59
+ ],
60
+ "ta6ed6v2Enum": [
61
+ "Legal Owner",
62
+ "Company Director",
63
+ "Personal Representative for a Deceased Owner",
64
+ "Under Power of Attorney",
65
+ "Trustee"
66
+ ],
67
+ "ta6ed6EnumNames": {
68
+ "Legal Owner": "Seller (Private individual)",
69
+ "Company Director": "Seller (Company)",
70
+ "Personal Representative for a Deceased Owner": "Executor(s)/Administrator(s)",
71
+ "Under Power of Attorney": "Attorney(s)",
72
+ "Trustee": "Trustee(s)"
73
+ },
74
+ "ta6ed6v2EnumNames": {
75
+ "Legal Owner": "Seller (Private individual)",
76
+ "Company Director": "Seller (Company)",
77
+ "Personal Representative for a Deceased Owner": "Executor(s)/Administrator(s)",
78
+ "Under Power of Attorney": "Attorney(s)",
79
+ "Trustee": "Trustee(s)"
80
+ }
81
+ }
82
+ },
83
+ "discriminator": {
84
+ "propertyName": "capacity"
85
+ },
86
+ "oneOf": [
87
+ {
88
+ "properties": {
89
+ "capacity": {
90
+ "enum": [
91
+ "Legal Owner",
92
+ "Mortgagee in Possession"
93
+ ]
94
+ },
95
+ "sellersCapacityDetails": {
96
+ "title": "Please provide details if applicable",
97
+ "description": "(for example if the sellers names do not match the legal owners on the title deed due to change of name on marriage)",
98
+ "type": "string"
99
+ },
100
+ "attachments": {
101
+ "title": "Attachments",
102
+ "type": "string",
103
+ "enum": [
104
+ "Attached",
105
+ "To follow"
106
+ ]
107
+ }
108
+ }
109
+ },
110
+ {
111
+ "properties": {
112
+ "capacity": {
113
+ "enum": [
114
+ "Personal Representative for a Deceased Owner",
115
+ "Under Power of Attorney",
116
+ "Trustee",
117
+ "Assistant",
118
+ "Other"
119
+ ]
120
+ },
121
+ "sellersCapacityDetails": {
122
+ "title": "Please provide details and provide any probate, grant of representation or power of attorney ",
123
+ "type": "string"
124
+ },
125
+ "attachments": {
126
+ "title": "Attachments",
127
+ "type": "string",
128
+ "enum": [
129
+ "Attached",
130
+ "To follow"
131
+ ]
132
+ }
133
+ }
134
+ },
135
+ {
136
+ "properties": {
137
+ "capacity": {
138
+ "enum": [
139
+ "Company Director",
140
+ "Company Secretary"
141
+ ]
142
+ },
143
+ "sellersCapacityDetails": {
144
+ "title": "Please provide details and provide any probate, grant of representation or power of attorney ",
145
+ "type": "string"
146
+ },
147
+ "attachments": {
148
+ "title": "Attachments",
149
+ "type": "string",
150
+ "enum": [
151
+ "Attached",
152
+ "To follow"
153
+ ]
154
+ },
155
+ "companyName": {
156
+ "title": "Company name",
157
+ "type": "string"
158
+ },
159
+ "companyNumber": {
160
+ "title": "Company number",
161
+ "type": "string"
162
+ },
163
+ "directorOrAuthorisedPerson": {
164
+ "title": "Director/authorised person",
165
+ "type": "string"
166
+ },
167
+ "countryOfIncorporation": {
168
+ "title": "Country of incorporation",
169
+ "type": "string"
170
+ }
171
+ }
172
+ }
173
+ ]
174
+ },
175
+ "dateBecameOwnerOrAuthority": {
176
+ "title": "Date the seller became owner or was authorised to sell",
177
+ "ta6ed6Title": "When did you become the owner of, or get authority to sell, the property? (DD/MM/YYYY)",
178
+ "ta6ed6v2Title": "When did you become the owner of, or get authority to sell, the property? (DD/MM/YYYY)",
179
+ "type": "string",
180
+ "format": "date"
181
+ },
182
+ "transaction": {
183
+ "title": "Transaction Reference",
184
+ "description": "DID referencing the Transaction entity",
185
+ "type": "string",
186
+ "pattern": "^did:[a-z0-9]+:(?:(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})*:)*(?:[a-zA-Z0-9._-]|%[0-9A-Fa-f]{2})+$"
187
+ }
188
+ },
189
+ "required": [
190
+ "seller",
191
+ "transaction"
192
+ ]
193
+ }