epb_view_models 1.0.29 → 1.1.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.
@@ -0,0 +1,313 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema
3
+ xmlns="EPC"
4
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
5
+ targetNamespace="EPC"
6
+ attributeFormDefault="unqualified"
7
+ version="EPC-1.4"
8
+ >
9
+ <xs:annotation>
10
+ <xs:documentation>
11
+ This schema is used to provide
12
+ (a) the texts of recommendations on EPCs (by country)
13
+ (b) addenda that may appear on RdSAP EPCs (same for all countries)
14
+ (c) the options for Related Party Disclosure (same for all countries)
15
+ (d) the options for Tenure (same for all countries)
16
+ (e) the options for Transaction Type (by country)
17
+ </xs:documentation>
18
+ </xs:annotation>
19
+ <xs:element name="ExternalDefinitions" type="ExternalDefinitions"/>
20
+ <xs:complexType name="ExternalDefinitions">
21
+ <xs:sequence>
22
+ <xs:element name="Revision-Number" type="xs:string">
23
+ <xs:annotation>
24
+ <xs:documentation>The version number of the latest revision to any of
25
+ the texts
26
+ </xs:documentation>
27
+ </xs:annotation>
28
+ </xs:element>
29
+ <xs:element name="Revision-Date" type="xs:date">
30
+ <xs:annotation>
31
+ <xs:documentation>The date of the latest revision to any of the
32
+ texts
33
+ </xs:documentation>
34
+ </xs:annotation>
35
+ </xs:element>
36
+ <xs:element name="Country" type="Country" maxOccurs="3"/>
37
+ <xs:element name="Addendum" type="Addendum" minOccurs="0"
38
+ maxOccurs="unbounded"/>
39
+ <xs:element name="Tenure" type="Tenure" minOccurs="0"
40
+ maxOccurs="unbounded"></xs:element>
41
+ <xs:element name="Related-Party-Disclosure"
42
+ type="Related-Party-Disclosure" minOccurs="0"
43
+ maxOccurs="unbounded">
44
+ <xs:annotation>
45
+ <xs:documentation>List of possible texts for Related Party Disclosure
46
+ on EPCs
47
+ </xs:documentation>
48
+ </xs:annotation>
49
+ </xs:element>
50
+ </xs:sequence>
51
+ </xs:complexType>
52
+ <xs:complexType name="Country">
53
+ <xs:sequence>
54
+ <xs:element name="Country-Code" type="UKCountryCode"/>
55
+ <xs:element name="Average-SAP-Rating" type="EnergyRatingType">
56
+ <xs:annotation>
57
+ <xs:documentation>The average SAP rating for the country, to be shown
58
+ on the EPC. If not used on the EPC, it may be 0
59
+ </xs:documentation>
60
+ </xs:annotation>
61
+ </xs:element>
62
+ <xs:element name="Average-EI-Rating" type="EnergyRatingType"
63
+ minOccurs="0">
64
+ <xs:annotation>
65
+ <xs:documentation>The average Environmental Impact rating for the
66
+ country, to be shown on the EPC. If not used on the EPC, it may be 0
67
+ or omitted
68
+ </xs:documentation>
69
+ </xs:annotation>
70
+ </xs:element>
71
+ <xs:element name="Recommendation" type="Recommendation"
72
+ maxOccurs="unbounded"/>
73
+ <xs:element name="Footnote-Text" type="Sentence" minOccurs="0"
74
+ maxOccurs="2"/>
75
+ <xs:element name="Transaction-Type" type="Transaction-Type"
76
+ maxOccurs="unbounded">
77
+ <xs:annotation>
78
+ <xs:documentation>Transaction types are given separately for each
79
+ country since the list may differ
80
+ </xs:documentation>
81
+ </xs:annotation>
82
+ </xs:element>
83
+ </xs:sequence>
84
+ </xs:complexType>
85
+ <xs:complexType name="Recommendation">
86
+ <xs:sequence>
87
+ <xs:element name="Improvement-Number" type="xs:positiveInteger">
88
+ <xs:annotation>
89
+ <xs:documentation>Recommendations are selected by recommendation
90
+ number according to the criteria in Appendix T of the SAP
91
+ specification.
92
+ </xs:documentation>
93
+ </xs:annotation>
94
+ </xs:element>
95
+ <xs:element name="Improvement-Summary" type="Sentence" maxOccurs="2">
96
+ <xs:annotation>
97
+ <xs:documentation>A short description of the improvement. English
98
+ only, or English and Welsh
99
+ </xs:documentation>
100
+ </xs:annotation>
101
+ </xs:element>
102
+ <xs:element name="Improvement-Summary-2" type="Sentence" minOccurs="0"
103
+ maxOccurs="2">
104
+ <xs:annotation>
105
+ <xs:documentation>A short description of the improvement. English
106
+ only, or English and Welsh
107
+ </xs:documentation>
108
+ </xs:annotation>
109
+ </xs:element>
110
+ <xs:element name="Improvement-Heading" type="Sentence" maxOccurs="2">
111
+ <xs:annotation>
112
+ <xs:documentation>Text to precede the improvement description. English
113
+ only, or English and Welsh
114
+ </xs:documentation>
115
+ </xs:annotation>
116
+ </xs:element>
117
+ <xs:element name="Improvement-Description" type="Sentence" maxOccurs="2">
118
+ <xs:annotation>
119
+ <xs:documentation>Detailed description of the improvement. English
120
+ only, or English and Welsh
121
+ </xs:documentation>
122
+ </xs:annotation>
123
+ </xs:element>
124
+ <xs:element name="Has-Footnote" type="xs:boolean" default="false"
125
+ minOccurs="0">
126
+ <xs:annotation>
127
+ <xs:documentation>If true the Footnote-Text appears at the bottom of
128
+ the page.
129
+ </xs:documentation>
130
+ </xs:annotation>
131
+ </xs:element>
132
+ </xs:sequence>
133
+ </xs:complexType>
134
+ <xs:complexType name="Addendum">
135
+ <xs:annotation>
136
+ <xs:documentation>Addendum-Number is unique for the text concerned. If an
137
+ addendum is deleted the number will not be re-used.
138
+ </xs:documentation>
139
+ </xs:annotation>
140
+ <xs:sequence>
141
+ <xs:element name="Addendum-Number" type="xs:positiveInteger">
142
+ <xs:annotation>
143
+ <xs:documentation>The text of an addendum is picked up via the
144
+ Addendum-Number.
145
+ </xs:documentation>
146
+ </xs:annotation>
147
+ </xs:element>
148
+ <xs:element name="Circumstances" type="xs:string">
149
+ <xs:annotation>
150
+ <xs:documentation>The circumstances under which this addendum should
151
+ be included.
152
+ </xs:documentation>
153
+ </xs:annotation>
154
+ </xs:element>
155
+ <xs:element name="Addendum-Text" type="Sentence" minOccurs="2"
156
+ maxOccurs="2">
157
+ <xs:annotation>
158
+ <xs:documentation>Text to be included on the EPC (English and Welsh
159
+ versions).
160
+ </xs:documentation>
161
+ </xs:annotation>
162
+ </xs:element>
163
+ </xs:sequence>
164
+ </xs:complexType>
165
+ <xs:complexType name="Tenure">
166
+ <xs:sequence>
167
+ <xs:element name="Tenure-Code" type="TenureCode"></xs:element>
168
+ <xs:element name="Tenure-Text" type="xs:string"></xs:element>
169
+ </xs:sequence>
170
+ </xs:complexType>
171
+ <xs:simpleType name="TenureCode">
172
+ <xs:annotation>
173
+ <xs:documentation>TenureCode = 0 (unknown) is applicable only in the case
174
+ of a new dwelling for which the intended tenure in not known. It is not
175
+ to be used for an existing dwelling
176
+ </xs:documentation>
177
+ </xs:annotation>
178
+ <xs:restriction base="xs:string">
179
+ <xs:enumeration value="1">
180
+ <xs:annotation>
181
+ <xs:documentation>Owner-occupied</xs:documentation>
182
+ </xs:annotation>
183
+ </xs:enumeration>
184
+ <xs:enumeration value="2">
185
+ <xs:annotation>
186
+ <xs:documentation>Rented (social)</xs:documentation>
187
+ </xs:annotation>
188
+ </xs:enumeration>
189
+ <xs:enumeration value="3">
190
+ <xs:annotation>
191
+ <xs:documentation>Rented (private)</xs:documentation>
192
+ </xs:annotation>
193
+ </xs:enumeration>
194
+ <xs:enumeration value="ND">
195
+ <xs:annotation>
196
+ <xs:documentation>Not defined - use in the case of a new dwelling for
197
+ which the intended tenure in not known. It is not to be used for an
198
+ existing dwelling
199
+ </xs:documentation>
200
+ </xs:annotation>
201
+ </xs:enumeration>
202
+ </xs:restriction>
203
+ </xs:simpleType>
204
+ <xs:complexType name="Related-Party-Disclosure">
205
+ <xs:annotation>
206
+ <xs:documentation>List of possible texts for Related Party Disclosure on
207
+ EPCs
208
+ </xs:documentation>
209
+ </xs:annotation>
210
+ <xs:sequence>
211
+ <xs:element name="Disclosure-Code" type="xs:positiveInteger"/>
212
+ <xs:element name="Disclosure-Text" type="Sentence" minOccurs="2"
213
+ maxOccurs="2"/>
214
+ </xs:sequence>
215
+ </xs:complexType>
216
+ <xs:complexType name="Transaction-Type">
217
+ <xs:annotation>
218
+ <xs:documentation>List of possible Transaction Types for EPCs. The
219
+ transaction type indicates the reason for creating the EPC
220
+ </xs:documentation>
221
+ </xs:annotation>
222
+ <xs:sequence>
223
+ <xs:element name="Display-Order" type="xs:positiveInteger">
224
+ <xs:annotation>
225
+ <xs:documentation>Number indicating the order in which the transaction
226
+ types are to be presented to a software user.
227
+ These numbers might not be consecutive. The transaction types are to
228
+ be shown with the lowest display number first through to the highest
229
+ shown last
230
+ </xs:documentation>
231
+ </xs:annotation>
232
+ </xs:element>
233
+ <xs:element name="Transaction-Code" type="xs:positiveInteger">
234
+ <xs:annotation>
235
+ <xs:documentation>Code to be used for Transaction-Type in the
236
+ lodgement XML
237
+ </xs:documentation>
238
+ </xs:annotation>
239
+ </xs:element>
240
+ <xs:element name="Transaction-Text" type="xs:string" minOccurs="1"
241
+ maxOccurs="1"></xs:element>
242
+ <xs:element name="In-RdSAP" type="xs:boolean">
243
+ <xs:annotation>
244
+ <xs:documentation>If false, transaction type is to be omitted when
245
+ RdSAP is being used
246
+ </xs:documentation>
247
+ </xs:annotation>
248
+ </xs:element>
249
+ </xs:sequence>
250
+ </xs:complexType>
251
+ <xs:simpleType name="LanguageCode">
252
+ <xs:restriction base="xs:string">
253
+ <xs:enumeration value="1">
254
+ <xs:annotation>
255
+ <xs:documentation>English</xs:documentation>
256
+ </xs:annotation>
257
+ </xs:enumeration>
258
+ <xs:enumeration value="2">
259
+ <xs:annotation>
260
+ <xs:documentation>Welsh</xs:documentation>
261
+ </xs:annotation>
262
+ </xs:enumeration>
263
+ </xs:restriction>
264
+ </xs:simpleType>
265
+ <xs:simpleType name="UKCountryCode">
266
+ <xs:annotation>
267
+ <xs:documentation>Code which indicates the country within the UK, taken
268
+ from BS 6879.
269
+ </xs:documentation>
270
+ </xs:annotation>
271
+ <xs:restriction base="xs:string">
272
+ <xs:enumeration value="EAW">
273
+ <xs:annotation>
274
+ <xs:documentation>England and Wales</xs:documentation>
275
+ </xs:annotation>
276
+ </xs:enumeration>
277
+ <xs:enumeration value="SCT">
278
+ <xs:annotation>
279
+ <xs:documentation>Scotland</xs:documentation>
280
+ </xs:annotation>
281
+ </xs:enumeration>
282
+ <xs:enumeration value="NIR">
283
+ <xs:annotation>
284
+ <xs:documentation>Northern Ireland</xs:documentation>
285
+ </xs:annotation>
286
+ </xs:enumeration>
287
+ </xs:restriction>
288
+ </xs:simpleType>
289
+ <xs:element name="Sentence" type="Sentence"/>
290
+ <xs:complexType name="Sentence">
291
+ <xs:annotation>
292
+ <xs:documentation>String value with a language code for natural-language
293
+ text.
294
+ </xs:documentation>
295
+ </xs:annotation>
296
+ <xs:simpleContent>
297
+ <xs:extension base="xs:string">
298
+ <xs:attribute name="language" type="LanguageCode" use="required">
299
+ <xs:annotation>
300
+ <xs:documentation>Identifies the language that the sentence is
301
+ recorded in.
302
+ </xs:documentation>
303
+ </xs:annotation>
304
+ </xs:attribute>
305
+ </xs:extension>
306
+ </xs:simpleContent>
307
+ </xs:complexType>
308
+ <xs:simpleType name="EnergyRatingType">
309
+ <xs:restriction base="xs:integer">
310
+ <xs:minInclusive value="0"/>
311
+ </xs:restriction>
312
+ </xs:simpleType>
313
+ </xs:schema>
@@ -0,0 +1,275 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xs:schema
3
+ xmlns="https://epbr.digital.communities.gov.uk/xsd/sap"
4
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
5
+ targetNamespace="https://epbr.digital.communities.gov.uk/xsd/sap"
6
+ elementFormDefault="qualified"
7
+ version="19.1.0"
8
+ >
9
+ <xs:include schemaLocation="../UDT/SAP-Domains.xsd"/>
10
+ <xs:include schemaLocation="Property.xsd"/>
11
+ <xs:element name="Home-Inspector" type="Home-Inspector"/>
12
+ <xs:complexType name="Home-Inspector">
13
+ <xs:annotation>
14
+ <xs:documentation>A Certified Home Inspector is a person certified by a
15
+ Certification Scheme - that is they exist on the Home Inspector Register
16
+ - as being qualified to carry out a Home Inspection and produce a Home
17
+ Condition Report.
18
+
19
+ The exact criteria for fit + proper are laid down in regulations and the
20
+ Business Standards and it is the responsibility of the Certification
21
+ Scheme to carry out sufficient checks to ensure those criteria are
22
+ adhered to.
23
+
24
+ Although covered by a different regulatory regime a Home Inspector and
25
+ Energy Assessor serve synonymous roles in the product of a Home
26
+ Condition Report or Energy Performance Certificate respectively.
27
+ </xs:documentation>
28
+ </xs:annotation>
29
+ <xs:all>
30
+ <xs:element name="Name" type="xs:string">
31
+ <xs:annotation>
32
+ <xs:documentation>The name by which the Home Inspector is registered.
33
+ This is a structured name containing prefix, first name + surname.
34
+ </xs:documentation>
35
+ </xs:annotation>
36
+ </xs:element>
37
+ <xs:element name="Notify-Lodgement" type="Flag" minOccurs="0">
38
+ <xs:annotation>
39
+ <xs:documentation>Indicates whether the assessor wants to be notified
40
+ that a the report has been lodged in the register
41
+ </xs:documentation>
42
+ </xs:annotation>
43
+ </xs:element>
44
+ <xs:element name="Contact-Address" type="AddressType">
45
+ <xs:annotation>
46
+ <xs:documentation>The address that any written correspondence can be
47
+ sent to. This is not the same as the Registered Address because it
48
+ may, of course, be a Post Office Box.
49
+ </xs:documentation>
50
+ </xs:annotation>
51
+ </xs:element>
52
+ <xs:element name="Web-Site" type="xs:string" minOccurs="0"/>
53
+ <xs:element name="E-Mail" type="xs:string" minOccurs="0">
54
+ <xs:annotation>
55
+ <xs:documentation>the E-Mail address that the Authorised User can be
56
+ contacted at.
57
+ </xs:documentation>
58
+ </xs:annotation>
59
+ </xs:element>
60
+ <xs:element name="Fax" type="PhoneNumberType" minOccurs="0"/>
61
+ <xs:element name="Telephone" type="PhoneNumberType" minOccurs="0"/>
62
+ <xs:element name="Company-Name" type="xs:string">
63
+ <xs:annotation>
64
+ <xs:documentation>The Name of the Company that the assessor is
65
+ employed by.
66
+ </xs:documentation>
67
+ </xs:annotation>
68
+ </xs:element>
69
+ <xs:element name="Scheme-Name" type="xs:string"/>
70
+ <xs:element name="Scheme-Web-Site" type="xs:string"/>
71
+ <xs:element name="Identification-Number">
72
+ <xs:complexType>
73
+ <xs:choice>
74
+ <xs:element name="Certificate-Number" type="CertificateNumberType">
75
+ <xs:annotation>
76
+ <xs:documentation>The unique identifier assigned to the assessor
77
+ by the scheme by which they can be identified throughout their
78
+ membership of the scheme.
79
+ </xs:documentation>
80
+ </xs:annotation>
81
+ </xs:element>
82
+ <xs:element name="Membership-Number" type="xs:string">
83
+ <xs:annotation>
84
+ <xs:documentation>For Scottish DEAs only</xs:documentation>
85
+ </xs:annotation>
86
+ </xs:element>
87
+ </xs:choice>
88
+ </xs:complexType>
89
+ </xs:element>
90
+ </xs:all>
91
+ </xs:complexType>
92
+ <xs:simpleType name="InspectorTypeCode">
93
+ <xs:restriction base="xs:string">
94
+ <xs:enumeration value="2">
95
+ <xs:annotation>
96
+ <xs:documentation>Domestic Energy Assessor</xs:documentation>
97
+ </xs:annotation>
98
+ </xs:enumeration>
99
+ </xs:restriction>
100
+ </xs:simpleType>
101
+ <xs:element name="Mortgage-Lender" type="Mortgage-Lender"/>
102
+ <xs:complexType name="Mortgage-Lender">
103
+ <xs:annotation>
104
+ <xs:documentation>A Mortgage Lender is an organisation that may lend money
105
+ to the Buyer for the purpose of purchasing the Property.
106
+
107
+ As part of this decision making the Mortgage Lender may use an Automated
108
+ Valuation Model (AVM) to value the Property and requires access to the
109
+ underlying data in the Home Condition Report or the content of the
110
+ Energy Performance Certificate in order to complete this valuation.
111
+ </xs:documentation>
112
+ </xs:annotation>
113
+ <xs:all/>
114
+ </xs:complexType>
115
+ <xs:simpleType name="HomeInspectorStatusCode">
116
+ <xs:restriction base="xs:string">
117
+ <xs:enumeration value="Inactive">
118
+ <xs:annotation>
119
+ <xs:documentation>Inactive</xs:documentation>
120
+ </xs:annotation>
121
+ </xs:enumeration>
122
+ <xs:enumeration value="Registered">
123
+ <xs:annotation>
124
+ <xs:documentation>Registered</xs:documentation>
125
+ </xs:annotation>
126
+ </xs:enumeration>
127
+ <xs:enumeration value="Struck-Off">
128
+ <xs:annotation>
129
+ <xs:documentation>Struck Off</xs:documentation>
130
+ </xs:annotation>
131
+ </xs:enumeration>
132
+ <xs:enumeration value="Suspended">
133
+ <xs:annotation>
134
+ <xs:documentation>Suspended</xs:documentation>
135
+ </xs:annotation>
136
+ </xs:enumeration>
137
+ </xs:restriction>
138
+ </xs:simpleType>
139
+ <xs:simpleType name="Postcode-CoverageType">
140
+ <xs:restriction base="xs:string">
141
+ <xs:maxLength value="500"/>
142
+ <xs:pattern value="[A-Z]{1,2}[0-9]{0,2}(,[A-Z]{1,2}[0-9]{0,2})*"/>
143
+ </xs:restriction>
144
+ </xs:simpleType>
145
+ <xs:element name="InspectorKeyFields" type="InspectorKeyFields"/>
146
+ <xs:complexType name="InspectorKeyFields">
147
+ <xs:annotation>
148
+ <xs:documentation>Key field definition for the Home Inspector class - used
149
+ when a message requires a reference to a Home Inspexctor to be passed
150
+ rather than the details.
151
+ </xs:documentation>
152
+ </xs:annotation>
153
+ <xs:sequence>
154
+ <xs:element name="Certificate-Number" type="CertificateNumberType"/>
155
+ </xs:sequence>
156
+ </xs:complexType>
157
+ <xs:element name="Certification-Scheme" type="Certification-Scheme"/>
158
+ <xs:complexType name="Certification-Scheme">
159
+ <xs:annotation>
160
+ <xs:documentation>The Certification Scheme is the "regulatory" body
161
+ responsible for regulating the activities of the Home Inspectors.
162
+
163
+ A Certification Scheme will carry out certain primary functions in
164
+ accordance with the standards, focussed around certifying, managing and
165
+ regulating Home Inspectors and registering Home Condition Reports.
166
+
167
+ Although covered by a different regulatory regime a Certification Scheme
168
+ is synonymous with the role of an Accreditation Body in the production
169
+ of an Energy Performance Certificate.
170
+ </xs:documentation>
171
+ </xs:annotation>
172
+ <xs:all>
173
+ <xs:element name="Scheme-Name" type="xs:string"/>
174
+ <xs:element name="Complaints-Address" type="AddressType">
175
+ <xs:annotation>
176
+ <xs:documentation>The address to which any complaints should be
177
+ sent.
178
+ </xs:documentation>
179
+ </xs:annotation>
180
+ </xs:element>
181
+ <xs:element name="Contact-Address" type="AddressType">
182
+ <xs:annotation>
183
+ <xs:documentation>The address that any written correspondence can be
184
+ sent to. This is not the same as the Registered Address because it
185
+ may, of course, be a Post Office Box.
186
+ </xs:documentation>
187
+ </xs:annotation>
188
+ </xs:element>
189
+ <xs:element name="Web-Site" type="xs:string"/>
190
+ <xs:element name="E-Mail" type="xs:string">
191
+ <xs:annotation>
192
+ <xs:documentation>the E-Mail address that the Authorised User can be
193
+ contacted at.
194
+ </xs:documentation>
195
+ </xs:annotation>
196
+ </xs:element>
197
+ <xs:element name="Registered-Name" type="xs:string">
198
+ <xs:annotation>
199
+ <xs:documentation>The public name by which the Authorised User is
200
+ known by - this is either a personal name (e.g. "Mr John Smith")
201
+ built up from the components of the Person Name if the Authorised
202
+ User is an individual such as a Home Inspector or a Company Name if
203
+ the Authorised User is an organisation.
204
+
205
+ In the case of a individual the name may not be unique (e.g. there
206
+ may be many thousands of people called "Mr John Smith") so this is
207
+ information about the Authorised User rather than an identifier.
208
+ </xs:documentation>
209
+ </xs:annotation>
210
+ </xs:element>
211
+ <xs:element name="Fax" type="PhoneNumberType"/>
212
+ <xs:element name="Telephone" type="PhoneNumberType"/>
213
+ </xs:all>
214
+ </xs:complexType>
215
+ <xs:element name="PersonNameType" type="PersonNameType"/>
216
+ <xs:complexType name="PersonNameType">
217
+ <xs:annotation>
218
+ <xs:documentation>A Person Name is a complex structure to capture the
219
+ separate components of the name for a Person, consisting of:
220
+ * A prefix e.g. "Mr", "Mrs", "Dr" etc.
221
+ * First Name e.g. "John"
222
+ * Middle Initial
223
+ * Surname e.g. "Smith"
224
+ * Suffix e.g. "PhD", "FRICS"
225
+ The First Name and Surname are the only mandatory elements of a name.
226
+
227
+ The name elements can then be combined in a number of different ways to
228
+ produce different formats appropriate to the output context.
229
+
230
+ Note that all parts of the Persons Name should be stored as uppercase
231
+ strings because this makes it easier to search and index the names but
232
+ some components may be converted to mixed case for printing on reports
233
+ and such like.
234
+ </xs:documentation>
235
+ </xs:annotation>
236
+ <xs:all>
237
+ <xs:element name="Prefix" type="xs:string"/>
238
+ <xs:element name="First-Name" type="xs:string"/>
239
+ <xs:element name="Surname" type="xs:string"/>
240
+ <xs:element name="Suffix" type="xs:string"/>
241
+ </xs:all>
242
+ </xs:complexType>
243
+ <xs:element name="CertificationSchemeKeyFields"
244
+ type="CertificationSchemeKeyFields"/>
245
+ <xs:complexType name="CertificationSchemeKeyFields">
246
+ <xs:annotation>
247
+ <xs:documentation>Key field definition for the Certification Scheme
248
+ class.
249
+ </xs:documentation>
250
+ </xs:annotation>
251
+ <xs:sequence>
252
+ <xs:element name="Registered-Name" type="xs:string"/>
253
+ </xs:sequence>
254
+ </xs:complexType>
255
+ <xs:simpleType name="PhoneNumberType">
256
+ <xs:restriction base="xs:string">
257
+ <xs:pattern value="[0-9\-\.\)\(\+ ]+"/>
258
+ </xs:restriction>
259
+ </xs:simpleType>
260
+ <xs:simpleType name="CertificateNumberType">
261
+ <xs:annotation>
262
+ <xs:documentation>The Certificate Number is a 10-character fixed-length
263
+ alphanumeric code consisting of 4 characters identifying the
264
+ Certification Scheme and a 6-digit zero-padded identifier for each Home
265
+ Inspector certified by that Certification Scheme. For example
266
+ ABCD987654, XYZ_123456 etc.
267
+ </xs:documentation>
268
+ </xs:annotation>
269
+ <xs:restriction base="xs:string">
270
+ <xs:minLength value="10"/>
271
+ <xs:maxLength value="10"/>
272
+ <xs:pattern value="[A-Z/_]{4}[0-9]{6}"/>
273
+ </xs:restriction>
274
+ </xs:simpleType>
275
+ </xs:schema>