Проект

Общее

Профиль

Serviceosp » packet_v4.xsd

 
1
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
2

    
3
	<xs:element name="Packet">
4
		<xs:annotation>
5
			<xs:documentation>Пакет запросов или ответов</xs:documentation>
6
			<xs:documentation>Версия 4.</xs:documentation>
7
			<xs:documentation>Отличия от версии 2:</xs:documentation>
8
			<xs:documentation>Добавлен тип пакета ident-v2.</xs:documentation>
9
			<xs:documentation></xs:documentation>
10
		</xs:annotation>
11
		<xs:complexType>
12
			<xs:sequence>
13

    
14
				<!-- Header -->
15
				<xs:element name="Header" type="typeHeader" maxOccurs="1" />
16

    
17
				<!-- Result. Включается в ответный пакет -->
18
				<xs:element name="Result" type="xs:string" minOccurs="0" />
19

    
20
				<!-- Msgs -->
21
				<xs:element name="Msgs">
22
					<xs:annotation>
23
						<xs:documentation>Список сообщений</xs:documentation>
24
					</xs:annotation>
25
					<xs:complexType>
26
						<xs:sequence>
27
							<xs:element name="Msg" type="typeMsg" minOccurs="0" maxOccurs="unbounded" />
28
						</xs:sequence>
29
					</xs:complexType>
30
				</xs:element>
31

    
32
				<!-- Error. Включается в ответный пакет в случае возникновения ошибки обработки запроса -->
33
				<xs:element name="Error" type="xs:anyType" minOccurs="0" />
34

    
35
			</xs:sequence>
36
		</xs:complexType>
37
	</xs:element>
38

    
39
	<!-- ****************************************** -->
40
	<!-- typeHeader -->
41
	<!-- ****************************************** -->
42
	<xs:complexType name="typeHeader">
43
		<xs:annotation>
44
			<xs:documentation>Заголовок пакета</xs:documentation>
45
		</xs:annotation>
46
		<xs:sequence>
47

    
48
			<xs:element name="PackType" minOccurs="1" >
49
				<xs:annotation>
50
					<xs:documentation>
51
						PackType - тип пакета, задаёт тип запроса:
52
						"seek" - простой поиск всех совпадений в РС ЕРЗ, выдаёт все найденные страховки;
53
						"ident" - идентификация в РС ЕРЗ, выдаёт только последнюю страховку идентифицированного ЗЛ, начавшуюся до заданной даты запроса, в том числе закрытые;
54
						"full" - идентификация в РС ЕРЗ, выдаёт все страховки идентифицированного ЗЛ;
55
						"prik" - идентификация в РС ЕРЗ и определение СП и прикрепления на заданную дату по правилам ТС;
56
						"prik-enp" - идентификация в РС ЕРЗ и определение СП и прикрепления на заданную дату исходя только из ЕНП; некоторые поля убраны из результата (ФИО).
57
						"ident-v2" - то же, что и ident, но в ответ добавлены 2 поля: SMOCOD и NAM_SMOK
58
					</xs:documentation>
59
				</xs:annotation>
60
				<xs:simpleType>
61
					<xs:restriction base="xs:string">
62
						<xs:maxLength value="16"/>
63
						<xs:enumeration value="seek"/>
64
						<xs:enumeration value="ident"/>
65
						<xs:enumeration value="full"/>
66
						<xs:enumeration value="prik"/>
67
						<xs:enumeration value="prik-enp"/>
68
						<xs:enumeration value="ident-v2"/>
69
					</xs:restriction>
70
				</xs:simpleType>
71
			</xs:element>
72

    
73
			<xs:element name="AppID" minOccurs="1" >
74
				<xs:simpleType>
75
					<xs:annotation>
76
						<xs:documentation>
77
							Идентификатор приложения клиента. Возвращается в ответном пакете.
78
						</xs:documentation>
79
					</xs:annotation>
80
					<xs:restriction base="xs:string">
81
						<xs:maxLength value="64"/>
82
					</xs:restriction>
83
				</xs:simpleType>
84
			</xs:element>
85

    
86
			<!-- Необязательные прикладные элементы. Возвращаются в ответном пакете -->
87
			<xs:element name="DocID" type="xs:unsignedInt" minOccurs="0" />
88

    
89
			<xs:element name="PackID" minOccurs="0" >
90
				<xs:simpleType>
91
					<xs:restriction base="xs:string">
92
						<xs:maxLength value="64"/>
93
					</xs:restriction>
94
				</xs:simpleType>
95
			</xs:element>
96

    
97
			<xs:element name="tag" type="xs:anyType" minOccurs="0" >
98
				<xs:annotation>
99
					<xs:documentation>
100
						Произвольные данные клиента. Любого типа. Допускаются вложенные XML элементы. Возвращается в ответном пакете.
101
					</xs:documentation>
102
				</xs:annotation>
103
			</xs:element>
104
		</xs:sequence>
105
	</xs:complexType>
106

    
107

    
108
	<!-- ****************************************** -->
109
	<!-- typeMsg -->
110
	<!-- ****************************************** -->
111

    
112
	<xs:complexType name="typeMsg">
113
		<xs:annotation>
114
			<xs:documentation>Сообщение. Содержит поля элемента сообщения, секцию запроса, а также секции ответа в ответном пакете</xs:documentation>
115
		</xs:annotation>
116
		<xs:sequence>
117

    
118
			<!-- прикладной идентификатор элемента -->
119
			<xs:element name="ItemID" type="xs:unsignedInt" minOccurs="0" />
120
			
121
			<!-- запрос на дату -->
122
			<xs:element name="ReqDate" type="xs:date"  minOccurs="0">
123
				<xs:annotation>
124
					<xs:documentation>Дата определения СП при запросе типа "prik". Для остальных типов запросов не учитывается</xs:documentation>
125
				</xs:annotation>
126
			</xs:element>
127

    
128
			<!-- Request -->
129
			<xs:element name="Request" type="typeRequest" minOccurs="1" maxOccurs="1" >
130
				<xs:annotation>
131
					<xs:documentation>Данные запроса</xs:documentation>
132
				</xs:annotation>
133
			</xs:element>
134

    
135
			<!-- Reply -->
136
			<xs:element name="Reply" type="typeReply" minOccurs="0" maxOccurs="unbounded" >
137
				<xs:annotation>
138
					<xs:documentation>Данные ответа на запрос. Включаются в ответный пакет. Может быть насколько на один запрос.</xs:documentation>
139
				</xs:annotation>
140
			</xs:element>
141

    
142
		</xs:sequence>
143
	</xs:complexType>
144

    
145
	<!-- ****************************************** -->
146
	<!-- typeRequest -->
147
	<!-- ****************************************** -->
148

    
149
	<xs:complexType name="typeRequest">
150
		<xs:annotation>
151
			<xs:documentation>
152
				Содержит данные запроса.
153
				Состоит из нескольких атрибутов, по которым будет вестись поиск в РС ЕРЗ.
154
				Совпадения по атрибутам, имеющим высокую избирательность и защиту (контрольное число),
155
				таким как СНИЛС или ЕНП (в поле POLIS),	будут иметь больший уровень значимости,
156
				а совпадения по низкоизбирательным атрибутам, таким как ФИО, - меньший.
157
				Общий уровень (рейтинг) совпадения запроса вычисляется как сумма уровней всех совпадений.
158
				Совпадения с рейтингом ниже предельно установленного для указанного типа запроса, отбрасываются.
159
			</xs:documentation>
160
		</xs:annotation>
161
		<xs:sequence>
162
				
163
			<xs:element name="FAM" minOccurs="0" >
164
				<xs:annotation>
165
					<xs:documentation>Фамилия</xs:documentation>
166
				</xs:annotation>
167
				<xs:simpleType>
168
					<xs:restriction base="xs:string">
169
						<xs:maxLength value="50"/>
170
					</xs:restriction>
171
				</xs:simpleType>
172
			</xs:element>
173
			
174
			<xs:element name="IM" minOccurs="0" >
175
				<xs:annotation>
176
					<xs:documentation>Имя</xs:documentation>
177
				</xs:annotation>
178
				<xs:simpleType>
179
					<xs:restriction base="xs:string">
180
						<xs:maxLength value="50"/>
181
					</xs:restriction>
182
				</xs:simpleType>
183
			</xs:element>
184
			
185
			<xs:element name="OT" minOccurs="0" >
186
				<xs:annotation>
187
					<xs:documentation>Отчество</xs:documentation>
188
				</xs:annotation>
189
				<xs:simpleType>
190
					<xs:restriction base="xs:string">
191
						<xs:maxLength value="50"/>
192
					</xs:restriction>
193
				</xs:simpleType>
194
			</xs:element>
195
			
196
			<xs:element name="DR" type="xs:date"  minOccurs="0" >
197
				<xs:annotation>
198
					<xs:documentation>Дата рождения</xs:documentation>
199
				</xs:annotation>
200
			</xs:element>
201

    
202
			<xs:element name="POLIS" minOccurs="0" >
203
				<xs:annotation>
204
					<xs:documentation>Серия и номер полиса. Допустимы разделители: (пробел) и "№". При поиске разделители игнорируются.</xs:documentation>
205
				</xs:annotation>
206
				<xs:simpleType>
207
					<xs:restriction base="xs:string">
208
						<xs:maxLength value="32"/>
209
					</xs:restriction>
210
				</xs:simpleType>
211
			</xs:element>
212

    
213
			<xs:element name="DOCUMENT" minOccurs="0" >
214
				<xs:annotation>
215
					<xs:documentation>Серия и номер документа, удостоверяющего личность. Допустимы разделители: (пробел) и "№". При поиске разделители игнорируются. </xs:documentation>
216
				</xs:annotation>
217
				<xs:simpleType>
218
					<xs:restriction base="xs:string">
219
						<xs:maxLength value="40"/>
220
					</xs:restriction>
221
				</xs:simpleType>
222
			</xs:element>
223

    
224
			<xs:element name="SNILS" minOccurs="0" >
225
				<xs:annotation>
226
					<xs:documentation>Цифры СНИЛС. Разделители недопустимы.</xs:documentation>
227
				</xs:annotation>
228
				<xs:simpleType>
229
					<xs:restriction base="xs:string">
230
						<xs:maxLength value="11"/>
231
						<xs:pattern value="[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"/>
232
					</xs:restriction>
233
				</xs:simpleType>
234
			</xs:element>
235

    
236
			<xs:element name="MR" minOccurs="0" >
237
				<xs:annotation>
238
					<xs:documentation>Место рождения (точно, как в документе). Не более 255 символов</xs:documentation>
239
				</xs:annotation>
240
				<xs:simpleType>
241
					<xs:restriction base="xs:string">
242
						<xs:maxLength value="255"/>
243
					</xs:restriction>
244
				</xs:simpleType>
245
			</xs:element>
246

    
247
		</xs:sequence>
248
	</xs:complexType>
249

    
250

    
251
	<!-- ****************************************** -->
252
	<!-- typeReply -->
253
	<!-- ****************************************** -->
254

    
255
	<xs:complexType name="typeReply">
256
		<xs:annotation>
257
			<xs:documentation>Содержит данные ответов на запрос.
258
				 Поля персональных данных ЗЛ включаются в ответ только в случае 
259
						 достаточно высокого рейтинга совпадения запроса и записи страховки (более 6).
260
			</xs:documentation>
261
		</xs:annotation>
262
		<xs:sequence>
263

    
264
			<!-- данные ЗЛ -->
265

    
266
			<xs:element name="FAM" minOccurs="0" >
267
				<xs:annotation>
268
					<xs:documentation>Фамилия</xs:documentation>
269
				</xs:annotation>
270
				<xs:simpleType>
271
					<xs:restriction base="xs:string">
272
						<xs:maxLength value="50"/>
273
					</xs:restriction>
274
				</xs:simpleType>
275
			</xs:element>
276

    
277
			<xs:element name="IM" minOccurs="0" >
278
				<xs:annotation>
279
					<xs:documentation>Имя</xs:documentation>
280
				</xs:annotation>
281
				<xs:simpleType>
282
					<xs:restriction base="xs:string">
283
						<xs:maxLength value="50"/>
284
					</xs:restriction>
285
				</xs:simpleType>
286
			</xs:element>
287

    
288
			<xs:element name="OT" minOccurs="0" >
289
				<xs:annotation>
290
					<xs:documentation>Отчество</xs:documentation>
291
				</xs:annotation>
292
				<xs:simpleType>
293
					<xs:restriction base="xs:string">
294
						<xs:maxLength value="50"/>
295
					</xs:restriction>
296
				</xs:simpleType>
297
			</xs:element>
298

    
299
			<xs:element name="W" type="xs:unsignedByte"  minOccurs="0"  >
300
				<xs:annotation>
301
					<xs:documentation>Пол</xs:documentation>
302
				</xs:annotation>
303
			</xs:element>
304

    
305
			<xs:element name="DR" type="xs:date"  minOccurs="0" >
306
				<xs:annotation>
307
					<xs:documentation>Дата рождения</xs:documentation>
308
				</xs:annotation>
309
			</xs:element>
310

    
311
			<xs:element name="DOCTYPE" type="xs:unsignedInt"  minOccurs="0" >
312
				<xs:annotation>
313
					<xs:documentation>Тип документа, удостоверяющего личность</xs:documentation>
314
				</xs:annotation>
315
			</xs:element>
316

    
317
			<xs:element name="DOCSER" minOccurs="0" >
318
				<xs:annotation>
319
					<xs:documentation>Серия документа, удостоверяющего личность</xs:documentation>
320
				</xs:annotation>
321
				<xs:simpleType>
322
					<xs:restriction base="xs:string">
323
						<xs:maxLength value="16"/>
324
					</xs:restriction>
325
				</xs:simpleType>
326
			</xs:element>
327

    
328
			<xs:element name="DOCNUM" minOccurs="0" >
329
				<xs:annotation>
330
					<xs:documentation>Номер документа, удостоверяющего личность</xs:documentation>
331
				</xs:annotation>
332
				<xs:simpleType>
333
					<xs:restriction base="xs:string">
334
						<xs:maxLength value="20"/>
335
					</xs:restriction>
336
				</xs:simpleType>
337
			</xs:element>
338

    
339
			<xs:element name="SNILS" minOccurs="0" >
340
				<xs:annotation>
341
					<xs:documentation>СНИЛС, только цифры без разделителей</xs:documentation>
342
				</xs:annotation>
343
				<xs:simpleType>
344
					<xs:restriction base="xs:string">
345
						<xs:maxLength value="11"/>
346
						<xs:pattern value="[0-9]{11}"/>
347
					</xs:restriction>
348
				</xs:simpleType>
349
			</xs:element>
350

    
351
			<!-- данные страховки -->
352

    
353
			<xs:element name="PIN" type="xs:unsignedInt"  minOccurs="1" >
354
				<xs:annotation>
355
					<xs:documentation>Внутренний идентификатор ЗЛ</xs:documentation>
356
				</xs:annotation>
357
			</xs:element>
358

    
359
			<xs:element name="InID" type="xs:unsignedInt"  minOccurs="1" >
360
				<xs:annotation>
361
					<xs:documentation>Внутренний идентификатор записи страховки</xs:documentation>
362
				</xs:annotation>
363
			</xs:element>
364

    
365
			<xs:element name="ENP" minOccurs="1" >
366
				<xs:annotation>
367
					<xs:documentation>ЕНП - единый номер полиса ОМС</xs:documentation>
368
				</xs:annotation>
369
				<xs:simpleType>
370
					<xs:restriction base="xs:string">
371
						<xs:maxLength value="16"/>
372
						<xs:pattern value="[0-9]{16}"/>
373
					</xs:restriction>
374
				</xs:simpleType>
375
			</xs:element>
376

    
377
			<xs:element name="OGRNSMO" minOccurs="1" >
378
				<xs:annotation>
379
					<xs:documentation>ОГРН СМО</xs:documentation>
380
				</xs:annotation>
381
				<xs:simpleType>
382
					<xs:restriction base="xs:string">
383
						<xs:maxLength value="15"/>
384
					</xs:restriction>
385
				</xs:simpleType>
386
			</xs:element>
387

    
388
			<xs:element name="TER_ST" minOccurs="1" >
389
				<xs:annotation>
390
					<xs:documentation>Код территории страхования</xs:documentation>
391
				</xs:annotation>
392
				<xs:simpleType>
393
					<xs:restriction base="xs:string">
394
						<xs:maxLength value="5"/>
395
					</xs:restriction>
396
				</xs:simpleType>
397
			</xs:element>
398

    
399
			<xs:element name="T_POL" minOccurs="1" >
400
				<xs:annotation>
401
					<xs:documentation>Тип документа, подтверждающего факт страхования (полиса) в кодировке ЦС ЕРЗ</xs:documentation>
402
				</xs:annotation>
403
				<xs:simpleType>
404
					<xs:restriction base="xs:string">
405
						<xs:maxLength value="1"/>
406
						<xs:pattern value="В|К|П|С|Х|Э"/>
407
					</xs:restriction>
408
				</xs:simpleType>
409
			</xs:element>
410

    
411
			<xs:element name="SN_POL_ERP" minOccurs="1" >
412
				<xs:annotation>
413
					<xs:documentation>Серия и номер документа, подтверждающего факт страхования (полиса) в формате ЦС ЕРЗ</xs:documentation>
414
				</xs:annotation>
415
				<xs:simpleType>
416
					<xs:restriction base="xs:string">
417
						<xs:maxLength value="32"/>
418
					</xs:restriction>
419
				</xs:simpleType>
420
			</xs:element>
421

    
422
			<xs:element name="DBEG" type="xs:date"  minOccurs="1" >
423
				<xs:annotation>
424
					<xs:documentation>Дата начала действия страховки</xs:documentation>
425
				</xs:annotation>
426
			</xs:element>
427

    
428
			<xs:element name="DSTOP" type="xs:date"  minOccurs="0" >
429
				<xs:annotation>
430
					<xs:documentation>Дата фактического окончания действия страховки</xs:documentation>
431
				</xs:annotation>
432
			</xs:element>
433

    
434
			<!-- данные прикрепления в ответах на запросы типа "prik" -->
435

    
436
			<xs:element name="RpnID" type="xs:unsignedInt"  minOccurs="0" >
437
				<xs:annotation>
438
					<xs:documentation>Внутренний идентификатор записи прикрепления</xs:documentation>
439
				</xs:annotation>
440
			</xs:element>
441

    
442
			<xs:element name="CODE_MO" minOccurs="0" >
443
				<xs:annotation>
444
					<xs:documentation>Региональный код медорганизации</xs:documentation>
445
				</xs:annotation>
446
				<xs:simpleType>
447
					<xs:restriction base="xs:string">
448
						<xs:maxLength value="6"/>
449
					</xs:restriction>
450
				</xs:simpleType>
451
			</xs:element>
452

    
453
			<xs:element name="TDMR" type="xs:unsignedInt"  minOccurs="0" >
454
				<xs:annotation>
455
					<xs:documentation>Тип должности медработника</xs:documentation>
456
				</xs:annotation>
457
			</xs:element>
458

    
459
			<xs:element name="IDDOKT" minOccurs="0" >
460
				<xs:annotation>
461
					<xs:documentation>Код врача (СНИЛС с разделителями "-")</xs:documentation>
462
				</xs:annotation>
463
				<xs:simpleType>
464
					<xs:restriction base="xs:string">
465
						<xs:maxLength value="14"/>
466
					</xs:restriction>
467
				</xs:simpleType>
468
			</xs:element>
469

    
470
			<xs:element name="DATE_REG" type="xs:date"  minOccurs="0" >
471
				<xs:annotation>
472
					<xs:documentation>Дата регистрации прикрепления к МО</xs:documentation>
473
				</xs:annotation>
474
			</xs:element>
475

    
476
			<xs:element name="CloseDate" type="xs:date"  minOccurs="0" >
477
				<xs:annotation>
478
					<xs:documentation>Дата прекращения действия записи прикрепления к МО</xs:documentation>
479
				</xs:annotation>
480
			</xs:element>
481

    
482
			<xs:element name="SMP_CODE" minOccurs="0" >
483
				<xs:annotation>
484
					<xs:documentation>Код медорганизации СМП, привязанной к МО</xs:documentation>
485
				</xs:annotation>
486
				<xs:simpleType>
487
					<xs:restriction base="xs:string">
488
						<xs:maxLength value="6"/>
489
					</xs:restriction>
490
				</xs:simpleType>
491
			</xs:element>
492

    
493
			<!-- служебные данные поиска -->
494
			<xs:element name="ident_level" type="xs:unsignedInt"  minOccurs="0" >
495
				<xs:annotation>
496
					<xs:documentation>Уровень (рейтинг) совпадения</xs:documentation>
497
				</xs:annotation>
498
			</xs:element>
499

    
500
			<xs:element name="ident_var"  minOccurs="0" >
501
				<xs:annotation>
502
					<xs:documentation>Поля совпадения</xs:documentation>
503
				</xs:annotation>
504
				<xs:simpleType>
505
					<xs:restriction base="xs:string">
506
						<xs:maxLength value="64"/>
507
					</xs:restriction>
508
				</xs:simpleType>
509
			</xs:element>
510

    
511
			<xs:element name="ident_count" type="xs:unsignedInt"  minOccurs="0" >
512
				<xs:annotation>
513
					<xs:documentation>Количество совпадений с другими ЗЛ</xs:documentation>
514
				</xs:annotation>
515
			</xs:element>
516

    
517
			<xs:element name="SMOCOD" minOccurs="0" >
518
				<xs:annotation>
519
					<xs:documentation>Региональный код СМО.</xs:documentation>
520
				</xs:annotation>
521
				<xs:simpleType>
522
					<xs:restriction base="xs:string">
523
						<xs:maxLength value="5"/>
524
					</xs:restriction>
525
				</xs:simpleType>
526
			</xs:element>
527

    
528
			<xs:element name="NAM_SMOK" minOccurs="0" >
529
				<xs:annotation>
530
					<xs:documentation>Наименование СМО.</xs:documentation>
531
				</xs:annotation>
532
				<xs:simpleType>
533
					<xs:restriction base="xs:string">
534
						<xs:minLength value="1"/>
535
						<xs:maxLength value="250"/>
536
					</xs:restriction>
537
				</xs:simpleType>
538
			</xs:element>
539

    
540

    
541
		</xs:sequence>
542
	</xs:complexType>
543
</xs:schema>
(3-3/3)