epb_view_models 1.1.4 → 1.1.5

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