kdonovan-trufina 0.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.
- data/.gitignore +1 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +116 -0
- data/Rakefile +53 -0
- data/TODO +8 -0
- data/VERSION +1 -0
- data/init.rb +1 -0
- data/lib/config.rb +62 -0
- data/lib/elements.rb +170 -0
- data/lib/exceptions.rb +15 -0
- data/lib/requests.rb +132 -0
- data/lib/responses.rb +90 -0
- data/lib/trufina.rb +143 -0
- data/rails/init.rb +12 -0
- data/tasks/trufina_tasks.rake +4 -0
- data/test/fixtures/requests/access_request.xml +16 -0
- data/test/fixtures/requests/info_request.xml +6 -0
- data/test/fixtures/requests/login_info_request.xml +6 -0
- data/test/fixtures/requests/login_request.xml +32 -0
- data/test/fixtures/requests/login_request_simple.xml +11 -0
- data/test/fixtures/responses/access_notification.xml +5 -0
- data/test/fixtures/responses/access_response.xml +13 -0
- data/test/fixtures/responses/info_response.xml +19 -0
- data/test/fixtures/responses/login_info_response.xml +15 -0
- data/test/fixtures/responses/login_response.xml +5 -0
- data/test/fixtures/schema.xsd +1064 -0
- data/test/test_helper.rb +15 -0
- data/test/trufina_test.rb +8 -0
- data/trufina.yml.template +31 -0
- metadata +92 -0
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<TrufinaLoginRequest xmlns="http://www.trufina.com/truapi/1/0">
|
3
|
+
<PID><%= Trufina::Config.credentials[:PID] %></PID>
|
4
|
+
<PRT><%= @prt %></PRT>
|
5
|
+
<PAK><%= Trufina::Config.credentials[:PAK] %></PAK>
|
6
|
+
<CancelURL><%= Trufina::Config.endpoints[:cancel] %></CancelURL>
|
7
|
+
<SuccessURL><%= Trufina::Config.endpoints[:success] %></SuccessURL>
|
8
|
+
<FailureURL><%= Trufina::Config.endpoints[:failure] %></FailureURL>
|
9
|
+
<AccessRequest />
|
10
|
+
<SeedInfo />
|
11
|
+
</TrufinaLoginRequest>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<?xml version=" 1.0" encoding="UTF-8"?>
|
2
|
+
<TrufinaAccessResponse>
|
3
|
+
<PRT> Tue Aug 14 15:27:11 EDT 2007</PRT>
|
4
|
+
<AccessResponse>
|
5
|
+
<Name state="verified" age="2007-09-06 15:06:43.0" charged="false">
|
6
|
+
<First state="verified" status="present">John</First>
|
7
|
+
</Name>
|
8
|
+
<Age state="verified" age="2007-09-06 15:06: 43.0" charged="false" status="present">43</Age>
|
9
|
+
<ResidenceAddress charged="false">
|
10
|
+
<State state="verified" status="present">CA</State>
|
11
|
+
</ResidenceAddress>
|
12
|
+
</AccessResponse>
|
13
|
+
</TrufinaAccessResponse>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<TrufinaInfoResponse>
|
3
|
+
<TNID>127</TNID>
|
4
|
+
<PRT> Tue Aug 14 15:27:11 EDT 2007</PRT>
|
5
|
+
<PUR>206</PUR>
|
6
|
+
<AccessResponse>
|
7
|
+
<Name state="verified" age="2007-09-10 10:17:02.0" charged="false">
|
8
|
+
<First state="verified" status="present">John</First>
|
9
|
+
</Name>
|
10
|
+
<Age state="verified" age="2007-09-10 10:17:02.0" charged="false" status="present">43</Age>
|
11
|
+
<ResidenceAddress charged="false">
|
12
|
+
<State state="verified" status="present">CA</State>
|
13
|
+
<StreetAddress state="verified" status="present">1 Main Street</StreetAddress>
|
14
|
+
<StreetAddress state="verified" status="present">Suite E</StreetAddress>
|
15
|
+
<City state="verified" status="present">Burlingame</City>
|
16
|
+
<PostalCode state="verified" status="present">94010</PostalCode>
|
17
|
+
</ResidenceAddress>
|
18
|
+
</AccessResponse>
|
19
|
+
</TrufinaInfoResponse>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<TrufinaLoginInfoResponse>
|
3
|
+
<TLID>37</TLID>
|
4
|
+
<PRT> Tue Aug 14 15:27:11 EDT 2007</PRT>
|
5
|
+
<PUR>206</PUR>
|
6
|
+
<AccessResponse>
|
7
|
+
<Name state="verified" age="2007-09-06 13:44:24.0" charged="false">
|
8
|
+
<First state="verified" status="present">John</First>
|
9
|
+
</Name>
|
10
|
+
<Age state="verified" age="2007-09-06 13:44:24.0" charged="false" status="present">43</Age>
|
11
|
+
<ResidenceAddress charged="false">
|
12
|
+
<State state="verified" status="present">CA</State>
|
13
|
+
</ResidenceAddress>
|
14
|
+
</AccessResponse>
|
15
|
+
</TrufinaLoginInfoResponse>
|
@@ -0,0 +1,1064 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<xs:schema
|
3
|
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
4
|
+
xmlns="http://www.trufina.com/truapi/1/0"
|
5
|
+
targetNamespace="http://www.trufina.com/truapi/1/0"
|
6
|
+
elementFormDefault="qualified">
|
7
|
+
|
8
|
+
<xs:element name="TrufinaLoginRequest" type="loginRequestType"/>
|
9
|
+
<xs:element name="TrufinaLoginResponse" type="loginResponseType"/>
|
10
|
+
<xs:element name="TrufinaAccessNotification" type="notificationType"/>
|
11
|
+
<xs:element name="TrufinaInfoRequest" type="infoRequestType"/>
|
12
|
+
<xs:element name="TrufinaInfoResponse" type="infoResponseType"/>
|
13
|
+
<xs:element name="TrufinaLoginInfoRequest" type="loginInfoRequestType"/>
|
14
|
+
<xs:element name="TrufinaLoginInfoResponse" type="loginInfoResponseType"/>
|
15
|
+
<xs:element name="TrufinaAccessRequest" type="dataRequestType"/>
|
16
|
+
<xs:element name="TrufinaAccessResponse" type="dataResponseType"/>
|
17
|
+
<xs:element name="TrufinaRequestFailure" type="requestFailureType"/>
|
18
|
+
|
19
|
+
<xs:annotation><xs:documentation>
|
20
|
+
Attribute and group definitions
|
21
|
+
|
22
|
+
</xs:documentation></xs:annotation>
|
23
|
+
|
24
|
+
<xs:attributeGroup name="responseAttributes">
|
25
|
+
<xs:attribute name="state" type="verificationState" use="required"/>
|
26
|
+
<xs:attribute name="age" type="xs:duration" use="optional"/>
|
27
|
+
<xs:attribute name="charged" type="xs:boolean" default="false"/>
|
28
|
+
</xs:attributeGroup>
|
29
|
+
|
30
|
+
<xs:attributeGroup name="atomicResponseAttributes">
|
31
|
+
<xs:attributeGroup ref="responseAttributes"/>
|
32
|
+
<xs:attribute name="status" type="valueStatus" use="optional"/>
|
33
|
+
</xs:attributeGroup>
|
34
|
+
|
35
|
+
<xs:annotation><xs:documentation>
|
36
|
+
Complex type definitions used later
|
37
|
+
</xs:documentation></xs:annotation>
|
38
|
+
|
39
|
+
<xs:complexType name="stringRequestType">
|
40
|
+
<xs:annotation><xs:documentation>
|
41
|
+
This type is used for all string requests
|
42
|
+
</xs:documentation></xs:annotation>
|
43
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
44
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
45
|
+
</xs:complexType>
|
46
|
+
|
47
|
+
|
48
|
+
<xs:complexType name="stringResponseType">
|
49
|
+
<xs:annotation><xs:documentation>
|
50
|
+
This type is used for all string responses
|
51
|
+
</xs:documentation></xs:annotation>
|
52
|
+
<xs:simpleContent>
|
53
|
+
<xs:extension base="xs:string">
|
54
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
55
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
56
|
+
</xs:extension>
|
57
|
+
</xs:simpleContent>
|
58
|
+
|
59
|
+
</xs:complexType>
|
60
|
+
|
61
|
+
<xs:complexType name="subordinateStringRequestType">
|
62
|
+
<xs:annotation><xs:documentation>
|
63
|
+
Used inside of the name and address types because of restrictions on attributes
|
64
|
+
</xs:documentation></xs:annotation>
|
65
|
+
<xs:complexContent>
|
66
|
+
<xs:restriction base="stringRequestType">
|
67
|
+
<xs:attribute name="maxAge" use="prohibited"/>
|
68
|
+
</xs:restriction>
|
69
|
+
</xs:complexContent>
|
70
|
+
|
71
|
+
</xs:complexType>
|
72
|
+
<xs:complexType name="subordinateStringResponseType">
|
73
|
+
<xs:annotation><xs:documentation>
|
74
|
+
Used inside of name and address types because of restrictions on attributes
|
75
|
+
</xs:documentation></xs:annotation>
|
76
|
+
<xs:simpleContent>
|
77
|
+
<xs:extension base="stringResponseType">
|
78
|
+
<xs:attribute name="age" use="prohibited"/>
|
79
|
+
<xs:attribute name="charged" use="prohibited"/>
|
80
|
+
</xs:extension>
|
81
|
+
|
82
|
+
</xs:simpleContent>
|
83
|
+
</xs:complexType>
|
84
|
+
|
85
|
+
<xs:complexType name="phoneRequestType">
|
86
|
+
<xs:annotation><xs:documentation>
|
87
|
+
This type is used for phone number requests
|
88
|
+
</xs:documentation></xs:annotation>
|
89
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
90
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
91
|
+
</xs:complexType>
|
92
|
+
<xs:complexType name="phoneResponseType">
|
93
|
+
<xs:annotation><xs:documentation>
|
94
|
+
|
95
|
+
This type is used for phone responses
|
96
|
+
</xs:documentation></xs:annotation>
|
97
|
+
<xs:simpleContent>
|
98
|
+
<xs:extension base="phoneNumber">
|
99
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
100
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
101
|
+
</xs:extension>
|
102
|
+
</xs:simpleContent>
|
103
|
+
</xs:complexType>
|
104
|
+
<xs:complexType name="phoneSeedType">
|
105
|
+
|
106
|
+
<xs:annotation><xs:documentation>
|
107
|
+
This type is used to represent phone seed data
|
108
|
+
</xs:documentation></xs:annotation>
|
109
|
+
<xs:simpleContent>
|
110
|
+
<xs:extension base="phoneNumber">
|
111
|
+
<xs:attribute name="timeframe" type="timeframe" use="required"/>
|
112
|
+
</xs:extension>
|
113
|
+
</xs:simpleContent>
|
114
|
+
</xs:complexType>
|
115
|
+
|
116
|
+
|
117
|
+
<xs:complexType name="postalCodeRequestType">
|
118
|
+
<xs:annotation><xs:documentation>
|
119
|
+
This type is used for postal code requests
|
120
|
+
</xs:documentation></xs:annotation>
|
121
|
+
<xs:simpleContent>
|
122
|
+
<xs:extension base="postalCodeNumber">
|
123
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
124
|
+
</xs:extension>
|
125
|
+
</xs:simpleContent>
|
126
|
+
</xs:complexType>
|
127
|
+
|
128
|
+
<xs:complexType name="postalCodeResponseType">
|
129
|
+
<xs:annotation><xs:documentation>
|
130
|
+
This type is used for postal code responses
|
131
|
+
</xs:documentation></xs:annotation>
|
132
|
+
<xs:simpleContent>
|
133
|
+
<xs:extension base="postalCodeNumber">
|
134
|
+
<xs:attribute name="state" type="verificationState" use="required"/>
|
135
|
+
<xs:attribute name="status" type="valueStatus" use="optional"/>
|
136
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
137
|
+
|
138
|
+
</xs:extension>
|
139
|
+
</xs:simpleContent>
|
140
|
+
</xs:complexType>
|
141
|
+
|
142
|
+
<xs:complexType name="ssnRequestType">
|
143
|
+
<xs:annotation><xs:documentation>
|
144
|
+
This type is used for full social security number requests
|
145
|
+
</xs:documentation></xs:annotation>
|
146
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
147
|
+
<xs:attribute name="comparison" type="numericComparisonValue"/>
|
148
|
+
</xs:complexType>
|
149
|
+
|
150
|
+
<xs:complexType name="ssnResponseType">
|
151
|
+
<xs:annotation><xs:documentation>
|
152
|
+
This type is used for full social security number responses
|
153
|
+
</xs:documentation></xs:annotation>
|
154
|
+
<xs:simpleContent>
|
155
|
+
<xs:extension base="ssnType">
|
156
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
157
|
+
<xs:attribute name="comparison" type="numericComparisonValue"/>
|
158
|
+
</xs:extension>
|
159
|
+
</xs:simpleContent>
|
160
|
+
|
161
|
+
</xs:complexType>
|
162
|
+
|
163
|
+
<xs:complexType name="last4ssnRequestType">
|
164
|
+
<xs:annotation><xs:documentation>
|
165
|
+
This type is used for last 4 digits of social security number requests
|
166
|
+
</xs:documentation></xs:annotation>
|
167
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
168
|
+
<xs:attribute name="comparison" type="numericComparisonValue"/>
|
169
|
+
</xs:complexType>
|
170
|
+
<xs:complexType name="last4ssnResponseType">
|
171
|
+
<xs:annotation><xs:documentation>
|
172
|
+
This type is used for last 4 digits of social security number responses
|
173
|
+
</xs:documentation></xs:annotation>
|
174
|
+
|
175
|
+
<xs:simpleContent>
|
176
|
+
<xs:extension base="last4ssnType">
|
177
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
178
|
+
<xs:attribute name="comparison" type="numericComparisonValue"/>
|
179
|
+
</xs:extension>
|
180
|
+
</xs:simpleContent>
|
181
|
+
</xs:complexType>
|
182
|
+
|
183
|
+
<xs:complexType name="dateRequestType">
|
184
|
+
<xs:annotation><xs:documentation>
|
185
|
+
|
186
|
+
This type is used for date requests
|
187
|
+
</xs:documentation></xs:annotation>
|
188
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
189
|
+
<xs:attribute name="comparison" type="dateComparisonValue"/>
|
190
|
+
</xs:complexType>
|
191
|
+
<xs:complexType name="dateResponseType">
|
192
|
+
<xs:annotation><xs:documentation>
|
193
|
+
This type is used for date responses
|
194
|
+
</xs:documentation></xs:annotation>
|
195
|
+
<xs:simpleContent>
|
196
|
+
<xs:extension base="xs:date">
|
197
|
+
|
198
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
199
|
+
<xs:attribute name="comparison" type="dateComparisonValue"/>
|
200
|
+
</xs:extension>
|
201
|
+
</xs:simpleContent>
|
202
|
+
</xs:complexType>
|
203
|
+
|
204
|
+
<xs:simpleType name="maybeNumberType">
|
205
|
+
<xs:restriction base="xs:string">
|
206
|
+
<xs:pattern value="[0-9]*"/>
|
207
|
+
</xs:restriction>
|
208
|
+
|
209
|
+
</xs:simpleType>
|
210
|
+
<xs:complexType name="numericRequestType">
|
211
|
+
<xs:annotation><xs:documentation>
|
212
|
+
This type is used for numeric requests
|
213
|
+
</xs:documentation></xs:annotation>
|
214
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
215
|
+
<xs:attribute name="comparison" type="numericComparisonValue"/>
|
216
|
+
</xs:complexType>
|
217
|
+
<xs:complexType name="numericResponseType">
|
218
|
+
<xs:annotation><xs:documentation>
|
219
|
+
This type is used for numeric responses
|
220
|
+
</xs:documentation></xs:annotation>
|
221
|
+
|
222
|
+
<xs:simpleContent>
|
223
|
+
<xs:extension base="maybeNumberType">
|
224
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
225
|
+
<xs:attribute name="comparison" type="numericComparisonValue"/>
|
226
|
+
</xs:extension>
|
227
|
+
</xs:simpleContent>
|
228
|
+
</xs:complexType>
|
229
|
+
|
230
|
+
<xs:complexType name="subordinateNumericRequestType">
|
231
|
+
<xs:annotation><xs:documentation>
|
232
|
+
|
233
|
+
Used inside of name and address types because of restrictions on attributes
|
234
|
+
</xs:documentation></xs:annotation>
|
235
|
+
<xs:complexContent>
|
236
|
+
<xs:restriction base="numericRequestType">
|
237
|
+
<xs:attribute name="maxAge" use="prohibited"/>
|
238
|
+
</xs:restriction>
|
239
|
+
</xs:complexContent>
|
240
|
+
</xs:complexType>
|
241
|
+
|
242
|
+
<xs:complexType name="isoCountryRequestType">
|
243
|
+
<xs:annotation><xs:documentation>
|
244
|
+
|
245
|
+
This type is used for country requests
|
246
|
+
</xs:documentation></xs:annotation>
|
247
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
248
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
249
|
+
</xs:complexType>
|
250
|
+
|
251
|
+
<xs:complexType name="isoCountryResponseType">
|
252
|
+
<xs:annotation><xs:documentation>
|
253
|
+
This type is used for country responses
|
254
|
+
</xs:documentation></xs:annotation>
|
255
|
+
<xs:simpleContent>
|
256
|
+
|
257
|
+
<xs:extension base="isoCountrySpecifier">
|
258
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
259
|
+
<xs:attribute name="comparison" type="stringComparisonValue"/>
|
260
|
+
</xs:extension>
|
261
|
+
</xs:simpleContent>
|
262
|
+
</xs:complexType>
|
263
|
+
|
264
|
+
<xs:complexType name="subordinateIsoCountryRequestType">
|
265
|
+
<xs:annotation><xs:documentation>
|
266
|
+
Used inside of addess types because of restrictions on attributes
|
267
|
+
</xs:documentation></xs:annotation>
|
268
|
+
|
269
|
+
<xs:complexContent>
|
270
|
+
<xs:restriction base="isoCountryRequestType">
|
271
|
+
<xs:attribute name="maxAge" use="prohibited"/>
|
272
|
+
</xs:restriction>
|
273
|
+
</xs:complexContent>
|
274
|
+
</xs:complexType>
|
275
|
+
<xs:complexType name="subordinateIsoCountryResponseType">
|
276
|
+
<xs:annotation><xs:documentation>
|
277
|
+
Used inside of ddress types because of restrictions on attributes
|
278
|
+
</xs:documentation></xs:annotation>
|
279
|
+
|
280
|
+
<xs:simpleContent>
|
281
|
+
<xs:extension base="isoCountrySpecifier">
|
282
|
+
<xs:attribute name="comparison" type="stringComparisonValue" use="optional"/>
|
283
|
+
<xs:attribute name="value" type="valueStatus" use="optional"/>
|
284
|
+
</xs:extension>
|
285
|
+
</xs:simpleContent>
|
286
|
+
</xs:complexType>
|
287
|
+
|
288
|
+
<xs:simpleType name="isoCountrySpecifier">
|
289
|
+
<xs:annotation><xs:documentation>ISO standard country specification</xs:documentation></xs:annotation>
|
290
|
+
|
291
|
+
<xs:restriction base="xs:token">
|
292
|
+
<xs:enumeration value="us"/>
|
293
|
+
<xs:enumeration value="US"/>
|
294
|
+
<xs:enumeration value="ca"/>
|
295
|
+
<xs:enumeration value="CA"/>
|
296
|
+
</xs:restriction>
|
297
|
+
</xs:simpleType>
|
298
|
+
|
299
|
+
<xs:complexType name="crimRequestType">
|
300
|
+
<xs:annotation><xs:documentation>
|
301
|
+
|
302
|
+
This type is used for criminal background check requests
|
303
|
+
</xs:documentation></xs:annotation>
|
304
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
305
|
+
<xs:attribute name="comparison" type="crimComparisonValue"/>
|
306
|
+
</xs:complexType>
|
307
|
+
|
308
|
+
<xs:complexType name="crimResponseType">
|
309
|
+
<xs:annotation><xs:documentation>
|
310
|
+
This type is used for criminal background check responese
|
311
|
+
</xs:documentation></xs:annotation>
|
312
|
+
<xs:simpleContent>
|
313
|
+
|
314
|
+
<xs:extension base="criminalClassification">
|
315
|
+
<xs:attributeGroup ref="atomicResponseAttributes"/>
|
316
|
+
<xs:attribute name="comparison" type="crimComparisonValue" use="optional"/>
|
317
|
+
</xs:extension>
|
318
|
+
</xs:simpleContent>
|
319
|
+
</xs:complexType>
|
320
|
+
|
321
|
+
<xs:simpleType name="criminalClassification">
|
322
|
+
<xs:annotation><xs:documentation>
|
323
|
+
The value stored in the user's criminal background check results.
|
324
|
+
Valid values are:
|
325
|
+
clear_norecords = Clear in the available public records.
|
326
|
+
clear_traffic = Only traffic-related infractions.
|
327
|
+
clear_minor = At least one minor, non-traffic-related conviction
|
328
|
+
open_minor = At least one minor, non-traffic-related conviction is pending.
|
329
|
+
open_significant = At least one significant conviction, and/or repeated minor convictions is/are pending.
|
330
|
+
not_clear = At least one significant conviction, and/or repeated minor convictions.
|
331
|
+
unknown = An unrecognized classification was returned.
|
332
|
+
</xs:documentation></xs:annotation>
|
333
|
+
|
334
|
+
<xs:restriction base="xs:token">
|
335
|
+
<xs:enumeration value="clear_norecords"/>
|
336
|
+
<xs:enumeration value="clear_traffic"/>
|
337
|
+
<xs:enumeration value="clear_minor"/>
|
338
|
+
<xs:enumeration value="open_minor"/>
|
339
|
+
<xs:enumeration value="open_significant"/>
|
340
|
+
<xs:enumeration value="not_clear"/>
|
341
|
+
<xs:enumeration value="unknown"/>
|
342
|
+
</xs:restriction>
|
343
|
+
|
344
|
+
</xs:simpleType>
|
345
|
+
|
346
|
+
<xs:complexType name="streetAddressTypeSeed">
|
347
|
+
<xs:annotation>
|
348
|
+
<xs:documentation>
|
349
|
+
streetAddress type is used to represent physical addresses
|
350
|
+
</xs:documentation>
|
351
|
+
</xs:annotation>
|
352
|
+
<xs:sequence>
|
353
|
+
<xs:element name="StreetAddress" type="xs:string" minOccurs="0" maxOccurs="2">
|
354
|
+
<xs:annotation><xs:documentation>
|
355
|
+
|
356
|
+
Zero to two street elements. May contain numbers for more specific data.
|
357
|
+
</xs:documentation></xs:annotation>
|
358
|
+
</xs:element>
|
359
|
+
<xs:element name="City" type="xs:string" minOccurs="0" maxOccurs="1">
|
360
|
+
<xs:annotation><xs:documentation>
|
361
|
+
Zero or one city specifier
|
362
|
+
</xs:documentation></xs:annotation>
|
363
|
+
</xs:element>
|
364
|
+
<xs:element name="State" type="xs:string" minOccurs="0" maxOccurs="1">
|
365
|
+
<xs:annotation><xs:documentation>
|
366
|
+
|
367
|
+
Zero or one state specifier
|
368
|
+
</xs:documentation></xs:annotation>
|
369
|
+
</xs:element>
|
370
|
+
<xs:element name="PostalCode" type="postalCodeNumber" minOccurs="0" maxOccurs="1">
|
371
|
+
<xs:annotation><xs:documentation>
|
372
|
+
Zero or one postal code
|
373
|
+
</xs:documentation></xs:annotation>
|
374
|
+
</xs:element>
|
375
|
+
<xs:element name="County" type="xs:string" minOccurs="0" maxOccurs="1">
|
376
|
+
<xs:annotation><xs:documentation>
|
377
|
+
|
378
|
+
Zero or one county name
|
379
|
+
</xs:documentation></xs:annotation>
|
380
|
+
</xs:element>
|
381
|
+
<xs:element name="Country" type="isoCountrySpecifier" minOccurs="0" maxOccurs="1" default="us">
|
382
|
+
<xs:annotation><xs:documentation>
|
383
|
+
Zero or one country name (us is default)
|
384
|
+
</xs:documentation></xs:annotation>
|
385
|
+
</xs:element>
|
386
|
+
</xs:sequence>
|
387
|
+
<xs:attribute name="timeframe" type="timeframe" use="required"/>
|
388
|
+
|
389
|
+
</xs:complexType>
|
390
|
+
|
391
|
+
<xs:complexType name="streetAddressTypeRequest">
|
392
|
+
<xs:annotation>
|
393
|
+
<xs:documentation>
|
394
|
+
streetAddress type is used to represent physical addresses
|
395
|
+
</xs:documentation>
|
396
|
+
</xs:annotation>
|
397
|
+
<xs:sequence>
|
398
|
+
<xs:element name="StreetAddress" type="subordinateStringRequestType" minOccurs="0" maxOccurs="2">
|
399
|
+
<xs:annotation><xs:documentation>
|
400
|
+
|
401
|
+
Zero to two street elements. May contain numbers for more specific data.
|
402
|
+
</xs:documentation></xs:annotation>
|
403
|
+
</xs:element>
|
404
|
+
<xs:element name="City" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1">
|
405
|
+
<xs:annotation><xs:documentation>
|
406
|
+
Zero or one city specifier
|
407
|
+
</xs:documentation></xs:annotation>
|
408
|
+
</xs:element>
|
409
|
+
<xs:element name="State" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1">
|
410
|
+
<xs:annotation><xs:documentation>
|
411
|
+
|
412
|
+
Zero or one state specifier
|
413
|
+
</xs:documentation></xs:annotation>
|
414
|
+
</xs:element>
|
415
|
+
<xs:element name="PostalCode" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1">
|
416
|
+
<xs:annotation><xs:documentation>
|
417
|
+
Zero or one postal code
|
418
|
+
</xs:documentation></xs:annotation>
|
419
|
+
</xs:element>
|
420
|
+
<xs:element name="County" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1">
|
421
|
+
<xs:annotation><xs:documentation>
|
422
|
+
|
423
|
+
Zero or one county name
|
424
|
+
</xs:documentation></xs:annotation>
|
425
|
+
</xs:element>
|
426
|
+
<xs:element name="Country" type="subordinateIsoCountryRequestType" minOccurs="0" maxOccurs="1">
|
427
|
+
<xs:annotation><xs:documentation>
|
428
|
+
Zero or one country name (us is default)
|
429
|
+
</xs:documentation></xs:annotation>
|
430
|
+
</xs:element>
|
431
|
+
</xs:sequence>
|
432
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
433
|
+
|
434
|
+
</xs:complexType>
|
435
|
+
|
436
|
+
<xs:complexType name="streetAddressTypeResponse">
|
437
|
+
<xs:annotation>
|
438
|
+
<xs:documentation>
|
439
|
+
streetAddress type is used to represent physical addresses
|
440
|
+
</xs:documentation>
|
441
|
+
</xs:annotation>
|
442
|
+
<xs:sequence>
|
443
|
+
<xs:element name="StreetAddress" type="subordinateStringResponseType" minOccurs="0" maxOccurs="2">
|
444
|
+
<xs:annotation><xs:documentation>
|
445
|
+
|
446
|
+
Zero to two street elements. May contain numbers for more specific data.
|
447
|
+
</xs:documentation></xs:annotation>
|
448
|
+
</xs:element>
|
449
|
+
<xs:element name="City" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1">
|
450
|
+
<xs:annotation><xs:documentation>
|
451
|
+
Zero or one city specifier
|
452
|
+
</xs:documentation></xs:annotation>
|
453
|
+
</xs:element>
|
454
|
+
<xs:element name="State" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1">
|
455
|
+
<xs:annotation><xs:documentation>
|
456
|
+
|
457
|
+
Zero or one state specifier
|
458
|
+
</xs:documentation></xs:annotation>
|
459
|
+
</xs:element>
|
460
|
+
<xs:element name="PostalCode" type="postalCodeResponseType" minOccurs="0" maxOccurs="1">
|
461
|
+
<xs:annotation><xs:documentation>
|
462
|
+
Zero or one postal code
|
463
|
+
</xs:documentation></xs:annotation>
|
464
|
+
</xs:element>
|
465
|
+
<xs:element name="County" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1">
|
466
|
+
<xs:annotation><xs:documentation>
|
467
|
+
|
468
|
+
Zero or one county name
|
469
|
+
</xs:documentation></xs:annotation>
|
470
|
+
</xs:element>
|
471
|
+
<xs:element name="Country" type="subordinateIsoCountryResponseType" minOccurs="0" maxOccurs="1">
|
472
|
+
<xs:annotation><xs:documentation>
|
473
|
+
Zero or one country name (USA is default)
|
474
|
+
</xs:documentation></xs:annotation>
|
475
|
+
</xs:element>
|
476
|
+
</xs:sequence>
|
477
|
+
<xs:attributeGroup ref="responseAttributes"/>
|
478
|
+
|
479
|
+
<xs:attribute name="value" use="prohibited"/>
|
480
|
+
</xs:complexType>
|
481
|
+
|
482
|
+
<xs:simpleType name="prtType">
|
483
|
+
<xs:annotation><xs:documentation>
|
484
|
+
String used as a reference by the partner to identify the request
|
485
|
+
</xs:documentation></xs:annotation>
|
486
|
+
<xs:restriction base="xs:string">
|
487
|
+
<xs:minLength value="1"/>
|
488
|
+
<xs:maxLength value="30"/>
|
489
|
+
</xs:restriction>
|
490
|
+
|
491
|
+
</xs:simpleType>
|
492
|
+
<xs:simpleType name="pakType">
|
493
|
+
<xs:annotation><xs:documentation>
|
494
|
+
String assigned by Trufina to Partner to be used for partner authentication
|
495
|
+
</xs:documentation></xs:annotation>
|
496
|
+
<xs:restriction base="xs:string">
|
497
|
+
<xs:maxLength value="50"/>
|
498
|
+
</xs:restriction>
|
499
|
+
</xs:simpleType>
|
500
|
+
<xs:simpleType name="plidType">
|
501
|
+
<xs:annotation><xs:documentation>
|
502
|
+
|
503
|
+
String value used to link the request related to the Login Request to a particular login session
|
504
|
+
</xs:documentation></xs:annotation>
|
505
|
+
<xs:restriction base="xs:string">
|
506
|
+
<xs:maxLength value="15"/>
|
507
|
+
</xs:restriction>
|
508
|
+
</xs:simpleType>
|
509
|
+
<xs:simpleType name="tnidType">
|
510
|
+
<xs:annotation><xs:documentation>
|
511
|
+
String used to denote the Temporary Notification Identification, which is provided
|
512
|
+
to the Partner once the user has successfully verified and shared their credentials
|
513
|
+
</xs:documentation></xs:annotation>
|
514
|
+
<xs:restriction base="xs:string">
|
515
|
+
|
516
|
+
<xs:maxLength value="15"/>
|
517
|
+
</xs:restriction>
|
518
|
+
</xs:simpleType>
|
519
|
+
<xs:simpleType name="tlidType">
|
520
|
+
<xs:annotation><xs:documentation>
|
521
|
+
String used to denote the Temporary Login Identification which is provided to the Partner
|
522
|
+
via an HTTP GET redirect once the user has successfully verified their credentials
|
523
|
+
</xs:documentation></xs:annotation>
|
524
|
+
<xs:restriction base="xs:string">
|
525
|
+
<xs:maxLength value="15"/>
|
526
|
+
</xs:restriction>
|
527
|
+
|
528
|
+
</xs:simpleType>
|
529
|
+
<xs:simpleType name="purType">
|
530
|
+
<xs:annotation><xs:documentation>
|
531
|
+
String used to denote the Partner User Reference, which uniquely identifies
|
532
|
+
associates a particular user with that Partner.
|
533
|
+
</xs:documentation></xs:annotation>
|
534
|
+
<xs:restriction base="xs:string">
|
535
|
+
<xs:maxLength value="20"/>
|
536
|
+
</xs:restriction>
|
537
|
+
</xs:simpleType>
|
538
|
+
|
539
|
+
<xs:simpleType name="ssnType">
|
540
|
+
<xs:annotation><xs:documentation>
|
541
|
+
|
542
|
+
9 digit US Social Security Number
|
543
|
+
</xs:documentation></xs:annotation>
|
544
|
+
<xs:restriction base="xs:string">
|
545
|
+
<xs:pattern value="([0-9]{9})?"/>
|
546
|
+
</xs:restriction>
|
547
|
+
</xs:simpleType>
|
548
|
+
<xs:simpleType name="last4ssnType">
|
549
|
+
<xs:annotation><xs:documentation>
|
550
|
+
Last 4 digits of the US Social Security Number
|
551
|
+
</xs:documentation></xs:annotation>
|
552
|
+
<xs:restriction base="xs:string">
|
553
|
+
|
554
|
+
<xs:pattern value="([0-9]{4})?"/>
|
555
|
+
</xs:restriction>
|
556
|
+
</xs:simpleType>
|
557
|
+
<xs:simpleType name="timeframe">
|
558
|
+
<xs:annotation><xs:documentation>
|
559
|
+
Timeframe can be: current, prior, a date, or a range of dates.
|
560
|
+
Dates are in the fomat YYYY-MM-DD in general, but may contain Year, Year-Month, or Year-Month-Date.
|
561
|
+
Individual dates are considered to be a point in time when this statement is true. Date ranges are considered
|
562
|
+
to be a range of dates when the statement was true.
|
563
|
+
</xs:documentation></xs:annotation>
|
564
|
+
<xs:restriction base="xs:string">
|
565
|
+
<xs:pattern value="(current)|(prior)|([0-9]{4}(-(0[0-9]|1[012])(-([012][0-9]|3[01]))?)?)?(to[0-9]{4}(-(0[0-9]|1[012])(-([012][0-9]|3[01]))?)?)?"/>
|
566
|
+
</xs:restriction>
|
567
|
+
|
568
|
+
</xs:simpleType>
|
569
|
+
<xs:simpleType name="phoneNumber">
|
570
|
+
<xs:annotation><xs:documentation>
|
571
|
+
Phone number. Either US 10 digit or + and a foreign number
|
572
|
+
</xs:documentation></xs:annotation>
|
573
|
+
<xs:restriction base="xs:string">
|
574
|
+
<xs:pattern value="([0-9]{10})|(\+[0-9]*)"/>
|
575
|
+
</xs:restriction>
|
576
|
+
</xs:simpleType>
|
577
|
+
|
578
|
+
<xs:simpleType name="postalCodeNumber">
|
579
|
+
<xs:annotation><xs:documentation>
|
580
|
+
|
581
|
+
Postal code number. US five digit zip code (i.e. 12345). Zip plus 4 not supported.
|
582
|
+
</xs:documentation></xs:annotation>
|
583
|
+
<xs:restriction base="xs:string">
|
584
|
+
<xs:pattern value="([0-9]{5})"/>
|
585
|
+
</xs:restriction>
|
586
|
+
</xs:simpleType>
|
587
|
+
|
588
|
+
<xs:complexType name="nameRequestType">
|
589
|
+
<xs:annotation><xs:documentation>
|
590
|
+
Name information in request structure
|
591
|
+
</xs:documentation></xs:annotation>
|
592
|
+
|
593
|
+
<xs:sequence>
|
594
|
+
<xs:element name="Prefix" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1"/>
|
595
|
+
<xs:element name="First" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1"/>
|
596
|
+
<xs:element name="MiddleName" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1"/>
|
597
|
+
<xs:element name="MiddleInitial" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1"/>
|
598
|
+
<xs:element name="Surname" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1"/>
|
599
|
+
<xs:element name="Suffix" type="subordinateStringRequestType" minOccurs="0" maxOccurs="1"/>
|
600
|
+
</xs:sequence>
|
601
|
+
<xs:attribute name="maxAge" type="xs:duration"/>
|
602
|
+
|
603
|
+
</xs:complexType>
|
604
|
+
<xs:complexType name="nameResponseType">
|
605
|
+
<xs:annotation><xs:documentation>
|
606
|
+
Name information in response structure
|
607
|
+
</xs:documentation></xs:annotation>
|
608
|
+
<xs:sequence>
|
609
|
+
<xs:element name="Prefix" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1"/>
|
610
|
+
<xs:element name="First" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1"/>
|
611
|
+
<xs:element name="MiddleName" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1"/>
|
612
|
+
<xs:element name="MiddleInitial" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1"/>
|
613
|
+
|
614
|
+
<xs:element name="Surname" type="subordinateStringResponseType" minOccurs="0" maxOccurs="1"/>
|
615
|
+
<xs:element name="Suffix" type="suffixResponseType" minOccurs="0" maxOccurs="1"/>
|
616
|
+
</xs:sequence>
|
617
|
+
<xs:attributeGroup ref="responseAttributes"/>
|
618
|
+
</xs:complexType>
|
619
|
+
<xs:complexType name="nameSeedType">
|
620
|
+
<xs:annotation><xs:documentation>
|
621
|
+
Name information in seed data structure
|
622
|
+
</xs:documentation></xs:annotation>
|
623
|
+
<xs:sequence>
|
624
|
+
|
625
|
+
<xs:element name="Prefix" type="xs:string" minOccurs="0" maxOccurs="1"/>
|
626
|
+
<xs:element name="First" type="xs:string" minOccurs="0" maxOccurs="1"/>
|
627
|
+
<xs:element name="MiddleName" type="xs:string" minOccurs="0" maxOccurs="1"/>
|
628
|
+
<xs:element name="MiddleInitial" type="xs:string" minOccurs="0" maxOccurs="1"/>
|
629
|
+
<xs:element name="Surname" type="xs:string" minOccurs="0" maxOccurs="1"/>
|
630
|
+
<xs:element name="Suffix" type="suffixType" minOccurs="0" maxOccurs="1"/>
|
631
|
+
</xs:sequence>
|
632
|
+
</xs:complexType>
|
633
|
+
|
634
|
+
<xs:simpleType name="suffixType">
|
635
|
+
|
636
|
+
<xs:annotation><xs:documentation>
|
637
|
+
This type is an enumeration of the allowable suffix for a person's name.
|
638
|
+
</xs:documentation></xs:annotation>
|
639
|
+
<xs:restriction base="xs:string">
|
640
|
+
<xs:enumeration value="II"/>
|
641
|
+
<xs:enumeration value="III"/>
|
642
|
+
<xs:enumeration value="IV"/>
|
643
|
+
<xs:enumeration value="Jr"/>
|
644
|
+
<xs:enumeration value="Sr"/>
|
645
|
+
|
646
|
+
</xs:restriction>
|
647
|
+
</xs:simpleType>
|
648
|
+
|
649
|
+
<xs:complexType name="suffixResponseType">
|
650
|
+
<xs:annotation><xs:documentation>
|
651
|
+
This type is used for controlling the value of a suffix for user's names.
|
652
|
+
</xs:documentation></xs:annotation>
|
653
|
+
<xs:simpleContent>
|
654
|
+
<xs:extension base="suffixType">
|
655
|
+
<xs:attribute name="comparison" type="stringComparisonValue" use="optional"/>
|
656
|
+
<xs:attribute name="value" type="valueStatus" use="optional"/>
|
657
|
+
|
658
|
+
</xs:extension>
|
659
|
+
</xs:simpleContent>
|
660
|
+
</xs:complexType>
|
661
|
+
|
662
|
+
<xs:simpleType name="verificationState">
|
663
|
+
<xs:annotation><xs:documentation>
|
664
|
+
Indicates the verification state of the data element's value.
|
665
|
+
verified : the information is verified
|
666
|
+
unverified : the information is present but not verified
|
667
|
+
pending : the information is either not verified or the user hasn't granted access
|
668
|
+
denied : the user has declined to make any information available
|
669
|
+
duplicate : an outstanding, pending request for this data exists for this partner
|
670
|
+
unpurchased : the user has granted access, but the data is not free and not currently available
|
671
|
+
parent : used to indicate an element that contains other elements with verification states.
|
672
|
+
</xs:documentation></xs:annotation>
|
673
|
+
<xs:restriction base="xs:string">
|
674
|
+
<xs:enumeration value="verified"/>
|
675
|
+
<xs:enumeration value="unverified"/>
|
676
|
+
|
677
|
+
<xs:enumeration value="pending"/>
|
678
|
+
<xs:enumeration value="denied"/>
|
679
|
+
<xs:enumeration value="duplicate"/>
|
680
|
+
<xs:enumeration value="unpurchased"/>
|
681
|
+
<xs:enumeration value="parent"/>
|
682
|
+
</xs:restriction>
|
683
|
+
</xs:simpleType>
|
684
|
+
|
685
|
+
<xs:simpleType name="dateSeedType">
|
686
|
+
<xs:annotation><xs:documentation>
|
687
|
+
|
688
|
+
Normal xs:date type but restricted to be between 1900-01-01 and 2100-01-01.
|
689
|
+
</xs:documentation></xs:annotation>
|
690
|
+
<xs:restriction base="xs:date">
|
691
|
+
<xs:minInclusive value="1900-01-01"/>
|
692
|
+
<xs:maxInclusive value="2100-01-01"/>
|
693
|
+
</xs:restriction>
|
694
|
+
</xs:simpleType>
|
695
|
+
|
696
|
+
<xs:simpleType name="usernameSeedType">
|
697
|
+
<xs:annotation><xs:documentation>
|
698
|
+
Normal xs:string type with a minimum length 4 characters of and a maximum length of 100 characters.
|
699
|
+
</xs:documentation></xs:annotation>
|
700
|
+
|
701
|
+
<xs:restriction base="xs:string">
|
702
|
+
<xs:pattern value="[.A-Za-z0-9]{4,100}"/>
|
703
|
+
</xs:restriction>
|
704
|
+
</xs:simpleType>
|
705
|
+
|
706
|
+
<xs:complexType name="passwordSeedType">
|
707
|
+
<xs:annotation><xs:documentation>
|
708
|
+
Password seed type consists of the hashed password and the algorithm used for encoding it.
|
709
|
+
</xs:documentation></xs:annotation>
|
710
|
+
<xs:sequence>
|
711
|
+
<xs:element name="Hash" type="HashType" minOccurs="1" maxOccurs="1" />
|
712
|
+
|
713
|
+
<xs:element name="HashAlgorithm" type="HashAlgorithmType" minOccurs="1" maxOccurs="1" />
|
714
|
+
</xs:sequence>
|
715
|
+
</xs:complexType>
|
716
|
+
|
717
|
+
<xs:simpleType name="HashType">
|
718
|
+
<xs:annotation><xs:documentation>
|
719
|
+
Normal xs:string type with a minimum length 6 characters of and a maximum length of 40 characters.
|
720
|
+
</xs:documentation></xs:annotation>
|
721
|
+
<xs:restriction base="xs:string">
|
722
|
+
<xs:minLength value="40"/>
|
723
|
+
<xs:maxLength value="40"/>
|
724
|
+
|
725
|
+
</xs:restriction>
|
726
|
+
</xs:simpleType>
|
727
|
+
|
728
|
+
<xs:simpleType name="HashAlgorithmType">
|
729
|
+
<xs:annotation><xs:documentation>
|
730
|
+
Hash algorithm type enumeration.
|
731
|
+
</xs:documentation></xs:annotation>
|
732
|
+
<xs:restriction base="xs:string">
|
733
|
+
<xs:enumeration value="sha1"/>
|
734
|
+
<xs:enumeration value="sha256"/>
|
735
|
+
</xs:restriction>
|
736
|
+
|
737
|
+
</xs:simpleType>
|
738
|
+
|
739
|
+
<xs:simpleType name="emailSeedType">
|
740
|
+
<xs:annotation><xs:documentation>
|
741
|
+
Normal xs:string type in the form of xyz@abc.com with a minimum length of 9 characters to maxmimum of 100 characters.
|
742
|
+
</xs:documentation></xs:annotation>
|
743
|
+
<xs:restriction base="xs:string">
|
744
|
+
<xs:pattern value="[a-zA-Z0-9\._%\+\-]{2,47}@[a-zA-Z0-9\.\-]{3,47}\.[a-zA-Z]{2,4}"/>
|
745
|
+
</xs:restriction>
|
746
|
+
</xs:simpleType>
|
747
|
+
|
748
|
+
|
749
|
+
<xs:simpleType name="stringComparisonValue">
|
750
|
+
<xs:annotation><xs:documentation>
|
751
|
+
The value used in comparing the particular string data element to that stored in the user's ID card.
|
752
|
+
Examples are:
|
753
|
+
=VA for address/state
|
754
|
+
=20190 for address/zip
|
755
|
+
~2019 for address/zip (will succeed with is zip starts with)
|
756
|
+
Test types are:
|
757
|
+
equal (=)
|
758
|
+
not-equal (!)
|
759
|
+
initial equality (~)
|
760
|
+
</xs:documentation></xs:annotation>
|
761
|
+
<xs:restriction base="xs:string">
|
762
|
+
<xs:pattern value="[=~!](.)*"/>
|
763
|
+
</xs:restriction>
|
764
|
+
</xs:simpleType>
|
765
|
+
<xs:simpleType name="dateComparisonValue">
|
766
|
+
<xs:annotation><xs:documentation>
|
767
|
+
The value used in comparing the particular date data element to that stored in the user's ID card.
|
768
|
+
Dates are in the fomat YYYY-MM-DD in general, but may contain Year, Year/Month, or Year/Month/Date
|
769
|
+
Examples are:
|
770
|
+
>10/10/1967
|
771
|
+
=10/10
|
772
|
+
=10/1967
|
773
|
+
=1967
|
774
|
+
Test types are:
|
775
|
+
greater-than (>)
|
776
|
+
less-than (<)
|
777
|
+
equal (=)
|
778
|
+
not-equal (!)
|
779
|
+
</xs:documentation></xs:annotation>
|
780
|
+
|
781
|
+
<xs:restriction base="xs:string">
|
782
|
+
<xs:pattern value="[=!><][0-9]{4}(-(0[0-9]|1[012])(-([012][0-9]|3[01]))?)?"/>
|
783
|
+
</xs:restriction>
|
784
|
+
</xs:simpleType>
|
785
|
+
|
786
|
+
<xs:simpleType name="numericComparisonValue">
|
787
|
+
<xs:annotation><xs:documentation>
|
788
|
+
The value used in comparing the particular numeric data element to that stored in the user's ID card.
|
789
|
+
Examples are:
|
790
|
+
>21 for age
|
791
|
+
Non-equality tests for non-numeric values are not allowed.
|
792
|
+
Equality tests for non-numeric values are case insensitive, but are undefined for diacriticals
|
793
|
+
Test types are:
|
794
|
+
greater-than (>)
|
795
|
+
less-than (<)
|
796
|
+
equal (=)
|
797
|
+
not-equal (!)
|
798
|
+
</xs:documentation></xs:annotation>
|
799
|
+
<xs:restriction base="xs:string">
|
800
|
+
|
801
|
+
<xs:pattern value="[=!><]([0-9])*"/>
|
802
|
+
</xs:restriction>
|
803
|
+
</xs:simpleType>
|
804
|
+
<xs:simpleType name="crimComparisonValue">
|
805
|
+
<xs:annotation><xs:documentation>
|
806
|
+
The value used in comparing the particular criminal check data element to that stored in the user's ID card.
|
807
|
+
Examples are:
|
808
|
+
=clearNoRecords
|
809
|
+
!notClear = At least one significant conviction, and/or repeated minor convictions.
|
810
|
+
</xs:documentation></xs:annotation>
|
811
|
+
<xs:restriction base="xs:string">
|
812
|
+
<xs:pattern value="[=!](clear_norecords|clear_traffic|clear_minor|open_minor|open_significant|not_clear)"/>
|
813
|
+
</xs:restriction>
|
814
|
+
|
815
|
+
</xs:simpleType>
|
816
|
+
|
817
|
+
<xs:simpleType name="valueStatus">
|
818
|
+
<xs:annotation><xs:documentation>
|
819
|
+
This type is used to describe the status of the value. If the actual value is not returned
|
820
|
+
(i.e. user prohibits the return of the actual value but allows verification status) then a status
|
821
|
+
of "private" is returned. If a comparison of the value is requested (i.e. SSN ends with "1234")
|
822
|
+
then the status attribute is used to relay "passed" if a value comparison was succeessful, otherwise,
|
823
|
+
"failed" is set. If a value is empty (i.e. prefix was not provided) an empty element is sent with
|
824
|
+
a status of "present".
|
825
|
+
</xs:documentation></xs:annotation>
|
826
|
+
<xs:restriction base="xs:string">
|
827
|
+
<xs:enumeration value="present"/>
|
828
|
+
<xs:enumeration value="passed"/>
|
829
|
+
<xs:enumeration value="failed"/>
|
830
|
+
<xs:enumeration value="private"/>
|
831
|
+
|
832
|
+
</xs:restriction>
|
833
|
+
</xs:simpleType>
|
834
|
+
<xs:complexType name="errorType">
|
835
|
+
<xs:annotation><xs:documentation>
|
836
|
+
These are the values returned in the event of an error
|
837
|
+
</xs:documentation></xs:annotation>
|
838
|
+
<xs:simpleContent>
|
839
|
+
<xs:extension base="xs:string">
|
840
|
+
<xs:attribute name="kind" type="errorClass"/>
|
841
|
+
</xs:extension>
|
842
|
+
|
843
|
+
</xs:simpleContent>
|
844
|
+
</xs:complexType>
|
845
|
+
<xs:simpleType name="errorClass">
|
846
|
+
<xs:restriction base="xs:string">
|
847
|
+
<xs:enumeration value="authenticationFailure"/>
|
848
|
+
<xs:enumeration value="invalidTransactionId"/>
|
849
|
+
<xs:enumeration value="otherError"/>
|
850
|
+
</xs:restriction>
|
851
|
+
</xs:simpleType>
|
852
|
+
<xs:complexType name="accessRequestType">
|
853
|
+
<xs:annotation><xs:documentation>
|
854
|
+
|
855
|
+
The elements that may be included in a request
|
856
|
+
</xs:documentation></xs:annotation>
|
857
|
+
<xs:sequence>
|
858
|
+
<xs:element name="Name" type="nameRequestType" minOccurs="0"/>
|
859
|
+
<xs:element name="TrufinaUsername" type="stringRequestType" minOccurs="0"/>
|
860
|
+
<xs:element name="DateOfBirth" type="dateRequestType" minOccurs="0"/>
|
861
|
+
<xs:element name="Age" type="numericRequestType" minOccurs="0"/>
|
862
|
+
<xs:element name="Phone" type="phoneRequestType" minOccurs="0"/>
|
863
|
+
<xs:element name="ResidenceAddress" type="streetAddressTypeRequest" minOccurs="0"/>
|
864
|
+
|
865
|
+
<xs:element name="MailingAddress" type="streetAddressTypeRequest" minOccurs="0"/>
|
866
|
+
<xs:element name="FullSSN" type="ssnRequestType" minOccurs="0"/>
|
867
|
+
<xs:element name="Last4SSN" type="last4ssnRequestType" minOccurs="0"/>
|
868
|
+
<xs:element name="CrimCheck" type="crimRequestType" minOccurs="0"/>
|
869
|
+
</xs:sequence>
|
870
|
+
</xs:complexType>
|
871
|
+
<xs:complexType name="accessResponseType">
|
872
|
+
<xs:annotation><xs:documentation>
|
873
|
+
The elements that may be included in the response to any request for information
|
874
|
+
</xs:documentation></xs:annotation>
|
875
|
+
|
876
|
+
<xs:sequence>
|
877
|
+
<xs:element name="Name" type="nameResponseType" minOccurs="0"/>
|
878
|
+
<xs:element name="TrufinaUsername" type="stringResponseType" minOccurs="0"/>
|
879
|
+
<xs:element name="DateOfBirth" type="dateResponseType" minOccurs="0"/>
|
880
|
+
<xs:element name="Age" type="numericResponseType" minOccurs="0"/>
|
881
|
+
<xs:element name="Phone" type="phoneResponseType" minOccurs="0"/>
|
882
|
+
<xs:element name="ResidenceAddress" type="streetAddressTypeResponse" minOccurs="0"/>
|
883
|
+
<xs:element name="MailingAddress" type="streetAddressTypeResponse" minOccurs="0"/>
|
884
|
+
<xs:element name="FullSSN" type="ssnResponseType" minOccurs="0"/>
|
885
|
+
|
886
|
+
<xs:element name="Last4SSN" type="last4ssnResponseType" minOccurs="0"/>
|
887
|
+
<xs:element name="CrimCheck" type="crimResponseType" minOccurs="0"/>
|
888
|
+
</xs:sequence>
|
889
|
+
</xs:complexType>
|
890
|
+
|
891
|
+
<xs:complexType name="requestFailureType">
|
892
|
+
<xs:annotation><xs:documentation>
|
893
|
+
Complete response for unrecognized request types or other errors beyond the scope of being returned in
|
894
|
+
the record.
|
895
|
+
</xs:documentation></xs:annotation>
|
896
|
+
<xs:sequence>
|
897
|
+
<xs:element name="Error" type="errorType"/>
|
898
|
+
|
899
|
+
</xs:sequence>
|
900
|
+
</xs:complexType>
|
901
|
+
|
902
|
+
<xs:complexType name="loginRequestType">
|
903
|
+
<xs:annotation><xs:documentation>
|
904
|
+
Elements contained in a login request
|
905
|
+
Contains:
|
906
|
+
PID and PAK to identify and authenticate the Partner
|
907
|
+
PRT as a reference for the partner to the request
|
908
|
+
CancelURL [opt] used when the user cancels
|
909
|
+
SuccessURL [opt] used when the user succeeds
|
910
|
+
FailureURL [opt] used when the user fails to login
|
911
|
+
UsePolicy states the use of the information
|
912
|
+
AccessRequest is the information request unless it is purely a login request
|
913
|
+
SeedInfo [opt] for information about the user.
|
914
|
+
</xs:documentation></xs:annotation>
|
915
|
+
<xs:sequence>
|
916
|
+
<xs:element name="PID" type="xs:int"/>
|
917
|
+
<xs:element name="PRT" type="prtType"/>
|
918
|
+
<xs:element name="PAK" type="pakType"/>
|
919
|
+
|
920
|
+
<xs:element name="CancelURL" type="xs:anyURI" minOccurs="0"/>
|
921
|
+
<xs:element name="SuccessURL" type="xs:anyURI" minOccurs="0"/>
|
922
|
+
<xs:element name="FailureURL" type="xs:anyURI" minOccurs="0"/>
|
923
|
+
<xs:element name="AccessRequest" type="accessRequestType"/>
|
924
|
+
<xs:element name="SeedInfo" type="seedData" minOccurs="0"/>
|
925
|
+
</xs:sequence>
|
926
|
+
</xs:complexType>
|
927
|
+
<xs:complexType name="loginResponseType">
|
928
|
+
<xs:annotation><xs:documentation>
|
929
|
+
Elements in a response to login request
|
930
|
+
</xs:documentation></xs:annotation>
|
931
|
+
|
932
|
+
<xs:sequence>
|
933
|
+
<xs:element name="PRT" type="prtType"/>
|
934
|
+
<xs:choice>
|
935
|
+
<xs:element name="Error" type="errorType"/>
|
936
|
+
<xs:element name="PLID" type="plidType"/>
|
937
|
+
</xs:choice>
|
938
|
+
</xs:sequence>
|
939
|
+
</xs:complexType>
|
940
|
+
|
941
|
+
|
942
|
+
|
943
|
+
<xs:complexType name="dataRequestType">
|
944
|
+
<xs:annotation><xs:documentation>
|
945
|
+
Elements in a automated access request
|
946
|
+
</xs:documentation></xs:annotation>
|
947
|
+
<xs:sequence >
|
948
|
+
<xs:element name="PID" type="xs:int"/>
|
949
|
+
<xs:element name="PRT" type="prtType"/>
|
950
|
+
<xs:element name="PAK" type="pakType"/>
|
951
|
+
<xs:element name="PUR" type="purType"/>
|
952
|
+
<xs:element name="AccessRequest" type="accessRequestType"/>
|
953
|
+
|
954
|
+
</xs:sequence>
|
955
|
+
</xs:complexType>
|
956
|
+
|
957
|
+
<xs:complexType name="dataResponseType">
|
958
|
+
<xs:annotation><xs:documentation>
|
959
|
+
Elements in a response to automated access request
|
960
|
+
</xs:documentation></xs:annotation>
|
961
|
+
<xs:sequence>
|
962
|
+
<xs:element name="PRT" type="prtType"/>
|
963
|
+
<xs:element name="PUR" type="purType"/>
|
964
|
+
<xs:choice>
|
965
|
+
|
966
|
+
<xs:element name="Error" type="errorType"/>
|
967
|
+
<xs:element name="AccessResponse" type="accessResponseType"/>
|
968
|
+
</xs:choice>
|
969
|
+
</xs:sequence>
|
970
|
+
</xs:complexType>
|
971
|
+
|
972
|
+
<xs:complexType name="notificationType">
|
973
|
+
<xs:annotation><xs:documentation>
|
974
|
+
Elements of the access notification
|
975
|
+
</xs:documentation></xs:annotation>
|
976
|
+
<xs:sequence>
|
977
|
+
|
978
|
+
<xs:element name="TNID" type="tnidType"/>
|
979
|
+
<xs:element name="PRT" type="prtType"/>
|
980
|
+
</xs:sequence>
|
981
|
+
</xs:complexType>
|
982
|
+
|
983
|
+
<xs:complexType name="infoRequestType">
|
984
|
+
<xs:annotation><xs:documentation>
|
985
|
+
Elements of an info request
|
986
|
+
</xs:documentation></xs:annotation>
|
987
|
+
<xs:sequence >
|
988
|
+
<xs:element name="PID" type="xs:int"/>
|
989
|
+
|
990
|
+
<xs:element name="TNID" type="tnidType"/>
|
991
|
+
<xs:element name="PAK" type="pakType"/>
|
992
|
+
</xs:sequence>
|
993
|
+
</xs:complexType>
|
994
|
+
<xs:complexType name="infoResponseType">
|
995
|
+
<xs:annotation><xs:documentation>
|
996
|
+
Elements in a response to info request
|
997
|
+
</xs:documentation></xs:annotation>
|
998
|
+
<xs:sequence>
|
999
|
+
<xs:element name="TNID" type="tnidType"/>
|
1000
|
+
|
1001
|
+
<xs:choice>
|
1002
|
+
<xs:element name="Error" type="errorType"/>
|
1003
|
+
<xs:sequence>
|
1004
|
+
<xs:element name="PRT" type="prtType"/>
|
1005
|
+
<xs:element name="PUR" type="purType"/>
|
1006
|
+
<xs:element name="AccessResponse" type="accessResponseType"/>
|
1007
|
+
</xs:sequence>
|
1008
|
+
</xs:choice>
|
1009
|
+
</xs:sequence>
|
1010
|
+
|
1011
|
+
</xs:complexType>
|
1012
|
+
|
1013
|
+
<xs:complexType name="loginInfoRequestType">
|
1014
|
+
<xs:annotation><xs:documentation>
|
1015
|
+
Elements in a login info request
|
1016
|
+
</xs:documentation></xs:annotation>
|
1017
|
+
<xs:sequence >
|
1018
|
+
<xs:element name="PID" type="xs:int"/>
|
1019
|
+
<xs:element name="TLID" type="tlidType"/>
|
1020
|
+
<xs:element name="PAK" type="pakType"/>
|
1021
|
+
|
1022
|
+
</xs:sequence>
|
1023
|
+
</xs:complexType>
|
1024
|
+
<xs:complexType name="loginInfoResponseType">
|
1025
|
+
<xs:annotation><xs:documentation>
|
1026
|
+
Elements in a response to a login info request
|
1027
|
+
</xs:documentation></xs:annotation>
|
1028
|
+
<xs:sequence>
|
1029
|
+
<xs:element name="TLID" type="tlidType"/>
|
1030
|
+
<xs:choice>
|
1031
|
+
<xs:element name="Error" type="errorType"/>
|
1032
|
+
|
1033
|
+
<xs:sequence>
|
1034
|
+
<xs:element name="PRT" type="prtType"/>
|
1035
|
+
<xs:element name="PUR" type="purType"/>
|
1036
|
+
<xs:element name="AccessResponse" type="accessResponseType"/>
|
1037
|
+
</xs:sequence>
|
1038
|
+
</xs:choice>
|
1039
|
+
</xs:sequence>
|
1040
|
+
</xs:complexType>
|
1041
|
+
|
1042
|
+
<xs:complexType name="seedData">
|
1043
|
+
|
1044
|
+
<xs:annotation><xs:documentation>
|
1045
|
+
Elements that may be include in a seed data structure
|
1046
|
+
</xs:documentation></xs:annotation>
|
1047
|
+
<xs:sequence>
|
1048
|
+
<xs:element name="Username" type="usernameSeedType" minOccurs="0"/>
|
1049
|
+
<xs:element name="Password" type="passwordSeedType" minOccurs="0"/>
|
1050
|
+
<xs:element name="Email" type="emailSeedType" minOccurs="0"/>
|
1051
|
+
<xs:element name="Name" type="nameSeedType" minOccurs="0"/>
|
1052
|
+
<xs:element name="DateOfBirth" type="dateSeedType" minOccurs="0"/>
|
1053
|
+
|
1054
|
+
<xs:element name="CountryOfBirth" type="isoCountrySpecifier" minOccurs="0"/>
|
1055
|
+
<xs:element name="Phone" type="phoneSeedType" minOccurs="0"/>
|
1056
|
+
<xs:element name="ResidenceAddress" type="streetAddressTypeSeed" minOccurs="0" maxOccurs="unbounded"/>
|
1057
|
+
<xs:element name="MailingAddress" type="streetAddressTypeSeed" minOccurs="0" maxOccurs="unbounded"/>
|
1058
|
+
<xs:element name="FullSSN" type="ssnType" minOccurs="0"/>
|
1059
|
+
<xs:element name="Last4SSN" type="last4ssnType" minOccurs="0"/>
|
1060
|
+
</xs:sequence>
|
1061
|
+
</xs:complexType>
|
1062
|
+
|
1063
|
+
</xs:schema>
|
1064
|
+
|