ВРЕМЕННЫЕ ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ, ОБЕСПЕЧИВАЮЩИЕ ПОДКЛЮЧЕНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ ОПЕРАТОРОВ ТЕХНИЧЕСКОГО ОСМОТРА К ЕАИСТО 1.Принятые термины и сокращения Сокращение АРМ АИС ГИБДД ЕИТКС ОВД ЕПГУ ИС ОПО ПО ПТО Система СМЭВ РСА СУБД ТО ЭЦП TCP/IP XML WSDL КЛАДР ЕАИСТО Сообщение Расшифровка Автоматизированное рабочее место. Автоматизированная информационная система. Госавтоинспекция МВД России. Единая информационно-телекоммуникационная система органов внутренних дел. Государственная информационная система «Единый портал государственных и муниципальных услуг (функций)». Информационная система. Общее программное обеспечение. Программное обеспечение. Пункт технического осмотра. Единая автоматизированная информационная система технического осмотра. Система межведомственного электронного взаимодействия. Российский союз страховщиков. Система управления базой данных. Технический осмотр. Электронная цифровая подпись. Transfer Control Protocol / Internet Protocol, протокол управления передачей/интернет-протокол. eXtensible Markup Language — расширяемый язык разметки. web services definition language Классификатор адресов России Единая автоматизированная информационная система технического осмотра структура, состоящая из заголовка и тела сообщения в формате XML и служащая для передачи информации от системы оператора технического осмотра в ЕАИС ТО и наоборот 2 2.Общие сведения В соответствии с федеральным законом от 1 июля 2011 г. № 170-ФЗ «О техническом осмотре транспортных средств и о внесении изменений в отдельные законодательные акты Российской Федерации» операторы технического осмотра обеспечивают обработку сведений о результатах технического осмотра (далее - ТО) транспортных средств и их передачу в единую информационную систему технического осмотра (далее - Система). Настоящий документ описывает технические требования к подключению операторов технического осмотра к Системе через веб-интерфейс или через веб-сервисы информационного взаимодействия и алгоритмы их работы. Настоящие технические требования определяют условия и интерфейсы, а также устанавливают порядок подключения автоматизированных информационных систем операторов технического осмотра (далее – внешние АИС) к Единой автоматизированной информационной системе технического осмотра (далее –ЕАИС ТО) . 3.Основные положения 3.1 Характеристика ЕАИСТО и внешних систем ЕАИСТО предназначена для сбора, хранения и использования информации о техническом осмотре. Внешними АИС являются АИС операторов технического осмотра. В качестве данных АИС рассматриваются как локальные информационные системы, развернутые на единственном автоматизированном рабочем месте, так и распределенные информационные системы, функционирующие на базе локальной или распределенной вычислительной сети. Характер информационного взаимодействия подключаемых внешних АИС с функционирующим ЕАИСТО определяется нормативно-правовыми актами ГУОБДД МВД России, МВД России техническими и методическими документами ЕАИСТО. 3 Взаимодействие подключаемых внешних АИС с ЕАИСТО предполагает прием/передачу следующих сведений: 1) марка и модель транспортного средства, в отношении которого проведен технический осмотр, год его выпуска, сведения, позволяющие идентифицировать это транспортное средство (идентификационный номер транспортного средства (VIN), номер кузова); 2) фамилия, имя и в случае, если имеется, отчество, лица, представившего транспортное средство для проведения технического осмотра; 3) адрес пункта технического осмотра, в котором был проведен технический осмотр; 4) номер, дата выдачи, срок действия талона технического осмотра или международного сертификата технического осмотра либо талон технического осмотра в форме электронного документа; 5) диагностическая карта в форме электронного документа; 6) фамилия, имя и в случае, если имеется, отчество технического эксперта, принявшего решение о выдаче талона технического осмотра или международного сертификата технического осмотра. В функционирующей ЕАИСТО одновременно обрабатываются сведения более чем о 40 миллионах субъектах персональных данных. Для доступа внешней АИС оператора технического осмотра (далее - АИС ОТО) к ЕАИСТО используются ее веб-сервисы. Для использования веб-сервисов ЕАИСТО на стороне АИС ОТО должно быть реализовано прикладное ПО (программный клиент), соответствующий данным техническим требованиям. Информационное взаимодействие производится по инициативе АИС ОТО. Для инициации информационного взаимодействия используется запрос. Запрос формируется АИС ОТО. Результатом информационного взаимодействия является ответ формируется системой ЕАИСТО. установленной структуры. Ответ 4 Процесс информационного взаимодействия внешней АИС с системой ЕАИСТО представлен на Рисунке 1 и включает в свой состав: формирование запроса; вызов внешней АИС оператора технического осмотра сервисов, предоставляемого ЕАИСТО. Описание сервисов приведено в разделе ; формирование ЕАИСТО ответа в соответствии с данными запроса; передачу ответа внешней АИС. Процесс информационного взаимодействия при направлении запроса Внешняя АИС ОТО ЕАИСТО Формирование первичного запроса Вызов сервиса Прием данных, формирование ответа Передача ответа (id запроса | Код обработки) Выборка данных Формирование повторного запроса Формирование ответа Вызов сервиса Передача ответа Запрашиваемые сведения | Код обработки) Рисунок 1 – Процесс информационного взаимодействия Для организации информационного взаимодействия применяются web-сервисы, использующие XML, как язык описания информации и спецификацию SOAP, определяющую формат и структуру сообщения. Для описания программных интерфейсов предоставляемых веб-сервисов используется язык описания WSDL (WebServicesDescriptionLanguage). Описание программных информацию: протокол; адрес сервера; номер используемого порта; список доступных операций; интерфейсов включает следующую 5 структуру запроса; структуру ответа. 3.2 Требования к клиенту сервиса и формату сообщений Информационное взаимодействие между АИС ОТО и ЕАИСТО должно осуществляться посредством XML-сообщений, соответствующих стандарту SOAP 1.1. Сервис АИС ОТО должен соответствовать требованиям к клиенту сервиса, описанного в виде WSDL описания, включающего в себя XSDсхему сервиса. 3.3 Требования по журналированиюи мониторингу работы При реализации АИС ОТО предъявляется следующий набор требований по журналированию работы: АИС ОТО должна вести журнал событий, в котором должны отображаться следующие события: o факт отправки запроса сервису; o факт получения ответа от сервиса; o ошибки взаимодействия; для событий в журнале должны отражаться следующие атрибуты: o идентификатор события; o идентификатор связанного события; o дата и время события; o ИП адрес, с которого был отправлен запрос к сервису; o контекст события передаваемое (для сообщение, событий для запроса ошибок и – ответа – системная информация об ошибке). Требования к мониторингу работы должны соответствовать общим требованиям, предъявляемым к мониторингу работы интернет-сервисов. 6 4.Технические требования 4.1. Требования к организации подключения Предъявляются следующие требования к аппаратно-программному обеспечению оператора технического осмотра. При взаимодействии с ЕАИСТО через веб-интерфейс: Компьютер с доступом к сети Интернет не скорости не менее 512 Кбит/сек Интернет браузер o Microsoft Internet Explorer версии 8 и выше; o Firefox При взаимодействии с ЕАИСТО через механизм веб-сервисов: Компьютер с доступом к сети Интернет не скорости не менее 512 Кбит/сек Программное обеспечение, реализующее протокол взаимодействия с веб-сервисами ЕАИСТО 5. Описание веб-сервисов ЕАИСТО 5.1.Описание сервиса приема сведений о результатах технического осмотра Имя сервиса - Inspection Состав методов: RegisterCard - метод приема сведений о результатах ТО; UnregisterCardById - метод отмены ошибочно переданных данныхо результатах технического осмотра в ЕАИС ТО; GetCardByVin – метод получения результатов технического осмотра; Обмен данными о результатах технического осмотра осуществляется по протоколу SOAP 1.1. Описание сервисов в формате wsdl представлено ниже: 7 <?xmlversion="1.0"encoding="utf-8"?> <wsdl:definitionsxmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"xmlns: soap="http://schemas.xmlsoap.org/wsdl/soap/"xmlns:wsu="http://docs.oasisopen.org/wss/2004/01/oasis-200401-wss-wssecurity-utility1.0.xsd"xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"xmlns:wsa="h ttp://schemas.xmlsoap.org/ws/2004/08/addressing"xmlns:tns="http://tempuri.org /"xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy"xmlns:w sp="http://schemas.xmlsoap.org/ws/2004/09/policy"xmlns:wsaw="http://www.w3.or g/2006/05/addressing/wsdl"xmlns:msc="http://schemas.microsoft.com/ws/2005/12/ wsdl/contract"xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex"xmlns:wsa1 0="http://www.w3.org/2005/08/addressing"xmlns:xsd="http://www.w3.org/2001/XML Schema"xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"name="Inspec tion"targetNamespace="http://tempuri.org/"xmlns:wsdl="http://schemas.xmlsoap. org/wsdl/"> <wsdl:types> <xsd:schematargetNamespace="http://tempuri.org/Imports"> <xsd:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc? xsd=xsd0"namespace="http://tempuri.org/" /> <xsd:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc? xsd=xsd1"namespace="http://schemas.microsoft.com/2003/10/Serialization/" /> <xsd:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc? xsd=xsd2"namespace="http://schemas.datacontract.org/2004/07/TechInspection.Do main.DataContracts" /> <xsd:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc? xsd=xsd3"namespace="http://schemas.datacontract.org/2004/07/TechInspection.Do main.Enums" /> </xsd:schema> </wsdl:types> <wsdl:messagename="IInspection_RegisterCard_InputMessage"> <wsdl:partname="parameters"element="tns:RegisterCard" /> </wsdl:message> <wsdl:messagename="IInspection_RegisterCard_OutputMessage"> <wsdl:partname="parameters"element="tns:RegisterCardResponse" /> </wsdl:message> <wsdl:messagename="IInspection_UnregisterCardById_InputMessage"> <wsdl:partname="parameters"element="tns:UnregisterCardById" /> </wsdl:message> <wsdl:messagename="IInspection_UnregisterCardById_OutputMessage"> <wsdl:partname="parameters"element="tns:UnregisterCardByIdResponse" /> </wsdl:message> <wsdl:messagename="IInspection_GetCardByVin_InputMessage"> <wsdl:partname="parameters"element="tns:GetCardByVin" /> </wsdl:message> <wsdl:messagename="IInspection_GetCardByVin_OutputMessage"> <wsdl:partname="parameters"element="tns:GetCardByVinResponse" /> </wsdl:message> <wsdl:portTypename="IInspection"> <wsdl:operationname="RegisterCard"> <wsdl:inputwsaw:Action="http://tempuri.org/IInspection/RegisterCard"message=" tns:IInspection_RegisterCard_InputMessage" /> <wsdl:outputwsaw:Action="http://tempuri.org/IInspection/RegisterCardResponse" message="tns:IInspection_RegisterCard_OutputMessage" /> </wsdl:operation> <wsdl:operationname="UnregisterCardById"> <wsdl:inputwsaw:Action="http://tempuri.org/IInspection/UnregisterCardById"mes sage="tns:IInspection_UnregisterCardById_InputMessage" /> <wsdl:outputwsaw:Action="http://tempuri.org/IInspection/UnregisterCardByIdRes ponse"message="tns:IInspection_UnregisterCardById_OutputMessage" /> </wsdl:operation> <wsdl:operationname="GetCardByVin"> <wsdl:inputwsaw:Action="http://tempuri.org/IInspection/GetCardByVin"message=" tns:IInspection_GetCardByVin_InputMessage" /> <wsdl:outputwsaw:Action="http://tempuri.org/IInspection/GetCardByVinResponse" message="tns:IInspection_GetCardByVin_OutputMessage" /> </wsdl:operation> 8 </wsdl:portType> <wsdl:bindingname="IInspection"type="tns:IInspection"> <soap:bindingtransport="http://schemas.xmlsoap.org/soap/http" /> <wsdl:operationname="RegisterCard"> <soap:operationsoapAction="http://tempuri.org/IInspection/RegisterCard"style= "document" /> <wsdl:input> <soap:bodyuse="literal" /> </wsdl:input> <wsdl:output> <soap:bodyuse="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operationname="UnregisterCardById"> <soap:operationsoapAction="http://tempuri.org/IInspection/UnregisterCardById" style="document" /> <wsdl:input> <soap:bodyuse="literal" /> </wsdl:input> <wsdl:output> <soap:bodyuse="literal" /> </wsdl:output> </wsdl:operation> <wsdl:operationname="GetCardByVin"> <soap:operationsoapAction="http://tempuri.org/IInspection/GetCardByVin"style= "document" /> <wsdl:input> <soap:bodyuse="literal" /> </wsdl:input> <wsdl:output> <soap:bodyuse="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:servicename="Inspection"> <wsdl:portname="IInspection"binding="tns:IInspection"> <soap:addresslocation="http://eaisto.dev.armd.ru/Services/Inspection.svc" /> </wsdl:port> </wsdl:service> </wsdl:definitions> 5.1.1 Метод приема сведений о результатах ТО Логическое имя метода: RegisterCard Структура пакета запроса № 1. 2. Описание поля Пользователь Данные Описание типа UserInfo Формат поля UserInfo Card Название переменной в xml user card Обязательность заполнения нет нет 9 № Описание поля 1. Имя 2. Пароль Формат поля Текст Текст Название переменной в xml Name Password Обязательность заполнения да да Описание типа Card № Описание поля Формат поля 1. Номер кузова Свидетельство 2. орегистрации выдано Дата выдачи 3. свидетельства о регистрации Номер 4. свидетельства о регистрации Текст 5. Дата диагностики 6. Технический эксперт Талон технического 7. осмотра (Международный сертификат) 8. Автомобиль Лицо, 9. предоставившее ТС на осмотр 10.Замечания 11.Оператор 12.Пункта ТО Государственный 13.регистрационный знак 14.Особые отметки Название переменной в xml BodyNumber Текст CertificateGiven By Дата CertificateGiven Date Текст CertificateNumb er Дата DateOfDiagnosi s Expert Expert Обязательность заполнения нет нет нет нет да да нет Form Vehicle Текст Form Vehicle да да Name Текст RegistrationNu mber нет да да да (при наличии) Текст SpecialNotes нет Текст Operator Point Note Operator Point 10 15.Результат проверки 16.Вид проверки Текст Принимает одно из следующих значений: Passed – пройдена NotPasse d – не пройдена Текст Принимает одно из следующих значений: Primary – первичная Secondar y – вторичная да TestResult да TestType Массив 17.результатов диагностики да Values Values 18.Категория ТС Текст 19.VIN 20.Год выпуска Текст Число VechicleCategor y VIN Year да нет да Описание типа Vehicle № Описание поля 1. Марка 2. Модель 3. Модификация Формат поля Текст Текст Текст Название переменной в xml Make Model Modification Обязательность заполнения да да нет Описание типа Form № Описание поля Формат поля Название переменной в xml Обязательность заполнения 11 1. Комментарий 2. выдачи Дата 3. Серия 4. Номер 5. Статус талона 6. талона Вид Текст Дата Текст Текст Текст: принимает одно из следующих значений: Blank – Бланк Certificat e Сертификат Текст принимает одно из следующих значений: New – Новый Issued – Выданный Stopped – Приостановле н Revoked - Отозван Дата Логический 7. Срок действия 8. Дубликат Оператор ТО, выдавший 9. оригинал бланка Operator ТО (в случае выдачи дубликата) Технический эксперт, выдавший 10. оригинал бланка Expert ТО (в случае выдачи дубликата) Comment DateOfIssue Series Number нет да да да да FormStatus да Type да да нет OriginalOperato (в случае выдачи дубликата r обязательно) Validity Duplicate OriginalExpert нет (в случае выдачи дубликата обязательно) 12 Описание типа Operator № Описание поля 1. Номер оператора в реестре 2. Город 3. Адрес Полное 4. наименование оператора Сокращённое 5. наименование оператора Формат поля Текст Town Address Текст FullName Обязательность заполнения да да да да да Текст Текст ФИО 7. индивидуального предпринимателя Текст 10.Тип Number Текст Текст ФИО директора, 6. если юридическое лицо 8. Телефон 9. Email Название переменной в xml ShortName нет (обязательное, если DirectorName юридическое лицо) нет (обязательное, если IndividualName индивидуальный предпринимател ь) да Phone нет EMail – да Текст Текст Juridical юридическое лицо Individual – индивидуальн ый предпринимат ель Type 13 11.Статус Текст: New - новый Actual действующий Stopped приостановле н Archive – в архиве Deleted удалён да Status Формат поля Название переменной в xml Описание типа Point № Описание поля Уникальные наименование или код пункта 1. технического осмотра в пределах оператора 2. Город 3. Адрес 4. Статус Обязательность заполнения да Text Identity Text Text Текст: Actual действующий Stopped приостановле н Archive – в архиве Deleted удалён Town Address да да да Status Описание типа Expert № Описание поля Формат поля Название переменной в xml Обязательность заполнения 14 ФИО 5. технического эксперта Текст 6. Статус Текст: Actual действующий Stopped приостановле н Archive – в архиве Deleted удалён 7. Информация о квалификации Текст да Name да Status Info да Описание типа Values Тип данных Valuesсостоит из набора элементов CardItemValue,каждый из которых, в свою очередь, состоит из: Название Обязательность № Описание поля Формат поля переменной в заполнения xml 1. диагностики Код Число Code да Значение о 2. возможности Число TestResult да эксплуатации Контрольный пример запроса 1. <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelopexmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataCont racts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header/><soapenv:Body><tem:Register Card><tem:user><tec:Name>expert</tec:Name><tec:Password>demo123</tec:Password></tem:user><tem:card> <!--Optional:--> <!--tec:BodyNumber>?</tec:BodyNumber--> <!--Optional:--> <!--tec:CertificateGivenBy>?</tec:CertificateGivenBy--> <!--Optional:--> <!--tec:CertificateGivenDate>?</tec:CertificateGivenDate--> <!--Optional:--> <!--tec:CertificateNumber>?</tec:CertificateNumber--> <tec:DateOfDiagnosis>2011-1227</tec:DateOfDiagnosis><tec:Expert><tec:Info>Эксперт</tec:Info><tec:Name>СидоровСидорСидорович</tec: Name><tec:Status>Actual</tec:Status></tec:Expert><tec:Form> <!--Optional:--> 15 <!--tec:Comment>?</tec:Comment--> <tec:DateOfIssue>2011-1227</tec:DateOfIssue><tec:Duplicate>false</tec:Duplicate><tec:Number>12345678</tec:Number> <!--Optional:--> <!-tec:OriginalExpert><tec:Info>?</tec:Info><tec:Name>?</tec:Name><tec:Status>?</tec:Status></tec:OriginalExper t--> <!--Optional:--> <!-tec:OriginalOperator><tec:Address>?</tec:Address><tec:DirectorName>?</tec:DirectorName><tec:Email>?</tec: Email><tec:FullName>?</tec:FullName><tec:IndividualName>?</tec:IndividualName><tec:Number>?</tec:Numb er><tec:Phone>?</tec:Phone><tec:ShortName>?</tec:ShortName><tec:Status>?</tec:Status><tec:Town>?</tec:To wn><tec:Type>?</tec:Type></tec:OriginalOperator--> <tec:Series>АБ</tec:Series><tec:Status>New</tec:Status><tec:Type>Blank</tec:Type><tec:Validity>201212-26</tec:Validity></tec:Form> <!--tec:Modification>нет</tec:Modification--> <tec:Name>Иванов Иван Иванович</tec:Name> <!--Optional:--> <!--tec:Note>?</tec:Note--> <tec:Operator><tec:Address>31 линия</tec:Address> <!--Optional:--> <tec:DirectorName>ПетровИгорь</tec:DirectorName> <!--Optional:--> <tec:Email>зуекщм@mail.ru</tec:Email><tec:FullName>ОООПолярис</tec:FullName> <!--Optional:--> <!--tec:IndividualName>?</tec:IndividualName--> <tec:Number>12345</tec:Number><tec:Phone>123-1212</tec:Phone><tec:ShortName>Поляр</tec:ShortName><tec:Status>Actual</tec:Status><tec:Town>Москва</tec :Town><tec:Type>Juridical</tec:Type></tec:Operator><tec:Point><tec:Address>Тверь</tec:Address><tec:Identit y>ПТУ-38</tec:Identity><tec:Status>Actual</tec:Status><tec:Town>Москва</tec:Town></tec:Point> <!--Optional:--> <tec:RegistrationNumber>Ф33МИ55</tec:RegistrationNumber> <!--Optional:--> <!--tec:SpecialNotes>?</tec:SpecialNotes--> <tec:TestResult>Passed</tec:TestResult><tec:TestType>Primary</tec:TestType><tec:Values> <!--Zero or more repetitions:--> <tec:CardItemValue><tec:Code>1</tec:Code><tec:TestResult>1</tec:TestResult></tec:CardItemValue><tec: CardItemValue><tec:Code>2</tec:Code><tec:TestResult>1</tec:TestResult></tec:CardItemValue></tec:Values>< tec:Vehicle><tec:Make>ВАЗ</tec:Make><tec:Model>2107</tec:Model> <!--Optional:--> <!--tec:Modification>?</tec:Modification--> </tec:Vehicle><tec:VehicleCategory>B</tec:VehicleCategory> <!--Optional:--> <!--tec:Vin>?</tec:Vin--> <tec:Year>2010</tec:Year></tem:card></tem:RegisterCard></soapenv:Body></soapenv:Envelope> 2. <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelopexmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataCont racts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header/><soapenv:Body><tem:Register Card><tem:user><tec:Name>expert</tec:Name><tec:Password>demo123</tec:Password></tem:user> <!--Optional:--> <tem:card> 16 <!--Optional:--> <tec:BodyNumber>AF88888888</tec:BodyNumber><tec:DateOfDiagnosis>2011-1228</tec:DateOfDiagnosis><tec:Expert><tec:Info>Техосмотр</tec:Info><tec:Name>ИвановСергей</tec:Name><t ec:Status>Actual</tec:Status></tec:Expert><tec:Name>Иван</tec:Name><tec:Note>Тестированиерулевогоуправ ления</tec:Note><tec:Operator><tec:Address>5аяЯмская</tec:Address><tec:DirectorName>Сидоров</tec:DirectorName><tec:Email>[email protected]</tec:E mail><tec:FullName>Техосмотр</tec:FullName><tec:Number>BSD12345</tec:Number><tec:Phone>111-22-33A</tec:Phone><tec:ShortName>ТОБП</tec:ShortName><tec:Status>Actual</tec:Status><tec:Town>Томск</tec:T own><tec:Type>Juridical</tec:Type></tec:Operator><tec:Point><tec:Address>ул. Ленина</tec:Address><tec:Identity>18</tec:Identity><tec:Status>Actual</tec:Status><tec:Town>Томск</tec:Tow n></tec:Point> <!--Optional:--> <tec:SpecialNotes>нет</tec:SpecialNotes><tec:TestResult>NotPassed</tec:TestResult><tec:TestType>Primar y</tec:TestType><tec:Values><tec:CardItemValue><tec:Code>1</tec:Code><tec:TestResult>0</tec:TestResult></ tec:CardItemValue><tec:CardItemValue><tec:Code>2</tec:Code><tec:TestResult>0</tec:TestResult></tec:CardIt emValue><tec:CardItemValue><tec:Code>3</tec:Code><tec:TestResult>0</tec:TestResult></tec:CardItemValue> <tec:CardItemValue><tec:Code>4</tec:Code><tec:TestResult>0</tec:TestResult></tec:CardItemValue><tec:CardI temValue><tec:Code>5</tec:Code><tec:TestResult>0</tec:TestResult></tec:CardItemValue></tec:Values><tec:V ehicle><tec:Make>ВАЗ</tec:Make><tec:Model>2107</tec:Model> <!--Optional:--> <tec:Modification></tec:Modification></tec:Vehicle><tec:VehicleCategory>B</tec:VehicleCategory><tec:Vin>bn392587293587</tec :Vin><tec:Year>2011</tec:Year></tem:card></tem:RegisterCard></soapenv:Body></soapenv:Envelope> Структура пакета ответа № Описание поля Формат поля Уникальный номер Число карточки в системе 1. Название Обязательность переменной в заполнения xml RegisterCardRes да ult 5.1.2 Метод отмены ошибочно переданных данных Системе Логическое имя метода: UnregisterCardById Структура пакета запроса № Описание поля Формат поля Название переменной в xml user Пользователь UserInfo Уникальный номер 2. Число карточки в системе Примечание: описание UserInfo – см.выше. 1. cardId Обязательность заполнения да да 17 5.1.3 Метод получение результатов технического осмотра Логическое имя метода: GetCardByVin Входные параметры: Электронный документ в формате xml содержащий идентификационный номер транспортного средства (VIN) и соответствующий схеме Inspection\Inspection.svc.xsd0.xml Структура пакета запроса № Описание поля Пользователь VIN Государственный 3. регистрационный знак Примечания: 1. 2. Формат поля UserInfo Текст Название переменной в xml user vin Текст Обязательность заполнения да нет нет regNumber - описание UserInfo – см.выше. - должно быть указано как минимум что-либо одно – VIN или Государственный регистрационный параметров одновременно. Структура пакета ответа См. описание типа Card. знак. Допускается ввод обоих 18 Приложение Описание xsd схем <?xmlversion="1.0"encoding="utf-8"?> <xs:schemaxmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/"attr ibuteFormDefault="qualified"elementFormDefault="qualified"targetNamespace="ht tp://schemas.microsoft.com/2003/10/Serialization/"xmlns:xs="http://www.w3.org /2001/XMLSchema"> <xs:elementname="anyType"nillable="true"type="xs:anyType" /> <xs:elementname="anyURI"nillable="true"type="xs:anyURI" /> <xs:elementname="base64Binary"nillable="true"type="xs:base64Binary" /> <xs:elementname="boolean"nillable="true"type="xs:boolean" /> <xs:elementname="byte"nillable="true"type="xs:byte" /> <xs:elementname="dateTime"nillable="true"type="xs:dateTime" /> <xs:elementname="decimal"nillable="true"type="xs:decimal" /> <xs:elementname="double"nillable="true"type="xs:double" /> <xs:elementname="float"nillable="true"type="xs:float" /> <xs:elementname="int"nillable="true"type="xs:int" /> <xs:elementname="long"nillable="true"type="xs:long" /> <xs:elementname="QName"nillable="true"type="xs:QName" /> <xs:elementname="short"nillable="true"type="xs:short" /> <xs:elementname="string"nillable="true"type="xs:string" /> <xs:elementname="unsignedByte"nillable="true"type="xs:unsignedByte" /> <xs:elementname="unsignedInt"nillable="true"type="xs:unsignedInt" /> <xs:elementname="unsignedLong"nillable="true"type="xs:unsignedLong" /> <xs:elementname="unsignedShort"nillable="true"type="xs:unsignedShort" /> <xs:elementname="char"nillable="true"type="tns:char" /> <xs:simpleTypename="char"> <xs:restrictionbase="xs:int" /> </xs:simpleType> <xs:elementname="duration"nillable="true"type="tns:duration" /> <xs:simpleTypename="duration"> <xs:restrictionbase="xs:duration"> <xs:patternvalue="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" /> <xs:minInclusivevalue="-P10675199DT2H48M5.4775808S" /> <xs:maxInclusivevalue="P10675199DT2H48M5.4775807S" /> </xs:restriction> </xs:simpleType> <xs:elementname="guid"nillable="true"type="tns:guid" /> <xs:simpleTypename="guid"> <xs:restrictionbase="xs:string"> <xs:patternvalue="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}[\da-fA-F]{12}" /> </xs:restriction> </xs:simpleType> <xs:attributename="FactoryType"type="xs:QName" /> <xs:attributename="Id"type="xs:ID" /> <xs:attributename="Ref"type="xs:IDREF" /> </xs:schema> <?xmlversion="1.0"encoding="utf-8"?> <xs:schemaxmlns:tns="http://schemas.datacontract.org/2004/07/TechInspection.D omain.DataContracts"elementFormDefault="qualified"targetNamespace="http://sch emas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"xmlns:xs="h ttp://www.w3.org/2001/XMLSchema"> <xs:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc?x sd=xsd3"namespace="http://schemas.datacontract.org/2004/07/TechInspection.Dom ain.Enums" /> 19 <xs:complexTypename="UserInfo"> <xs:sequence> <xs:elementname="Name"nillable="true"type="xs:string" /> <xs:elementname="Password"nillable="true"type="xs:string" /> </xs:sequence> </xs:complexType> <xs:elementname="UserInfo"nillable="true"type="tns:UserInfo" /> <xs:complexTypename="Card"> <xs:sequence> <xs:elementminOccurs="0"name="BodyNumber"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="CertificateGivenBy"nillable="true"type="xs:stri ng" /> <xs:elementminOccurs="0"name="CertificateGivenDate"nillable="true"type="xs:da teTime" /> <xs:elementminOccurs="0"name="CertificateNumber"nillable="true"type="xs:strin g" /> <xs:elementname="DateOfDiagnosis"type="xs:dateTime" /> <xs:elementname="Expert"nillable="true"type="tns:Expert" /> <xs:elementminOccurs="0"name="Form"nillable="true"type="tns:Form" /> <xs:elementname="Name"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="Note"nillable="true"type="xs:string" /> <xs:elementname="Operator"nillable="true"type="tns:Operator" /> <xs:elementname="Point"nillable="true"type="tns:Point" /> <xs:elementminOccurs="0"name="RegistrationNumber"nillable="true"type="xs:stri ng" /> <xs:elementminOccurs="0"name="SpecialNotes"nillable="true"type="xs:string" /> <xs:elementxmlns:q1="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="TestResult"type="q1:TestResult" /> <xs:elementxmlns:q2="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="TestType"type="q2:TestType" /> <xs:elementname="Values"nillable="true"type="tns:ArrayOfCardItemValue" /> <xs:elementname="Vehicle"nillable="true"type="tns:Vehicle" /> <xs:elementname="VehicleCategory"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="Vin"nillable="true"type="xs:string" /> <xs:elementname="Year"type="xs:int" /> </xs:sequence> </xs:complexType> <xs:elementname="Card"nillable="true"type="tns:Card" /> <xs:complexTypename="Expert"> <xs:sequence> <xs:elementname="Info"nillable="true"type="xs:string" /> <xs:elementname="Name"nillable="true"type="xs:string" /> <xs:elementxmlns:q3="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="Status"type="q3:ExpertStatus" /> </xs:sequence> </xs:complexType> <xs:elementname="Expert"nillable="true"type="tns:Expert" /> <xs:complexTypename="Form"> <xs:sequence> <xs:elementminOccurs="0"name="Comment"nillable="true"type="xs:string" /> <xs:elementname="DateOfIssue"type="xs:dateTime" /> <xs:elementname="Duplicate"type="xs:boolean" /> <xs:elementname="Number"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="OriginalExpert"nillable="true"type="tns:Expert" /> <xs:elementminOccurs="0"name="OriginalOperator"nillable="true"type="tns:Opera tor" /> <xs:elementname="Series"nillable="true"type="xs:string" /> <xs:elementxmlns:q4="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="Status"type="q4:FormStatus" /> <xs:elementxmlns:q5="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="Type"type="q5:FormType" /> <xs:elementname="Validity"type="xs:dateTime" /> </xs:sequence> </xs:complexType> 20 <xs:elementname="Form"nillable="true"type="tns:Form" /> <xs:complexTypename="Operator"> <xs:sequence> <xs:elementname="Address"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="DirectorName"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="Email"nillable="true"type="xs:string" /> <xs:elementname="FullName"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="IndividualName"nillable="true"type="xs:string" /> <xs:elementname="Number"nillable="true"type="xs:string" /> <xs:elementname="Phone"nillable="true"type="xs:string" /> <xs:elementname="ShortName"nillable="true"type="xs:string" /> <xs:elementxmlns:q6="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="Status"type="q6:OperatorStatus" /> <xs:elementname="Town"nillable="true"type="xs:string" /> <xs:elementxmlns:q7="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="Type"type="q7:OperatorType" /> </xs:sequence> </xs:complexType> <xs:elementname="Operator"nillable="true"type="tns:Operator" /> <xs:complexTypename="Point"> <xs:sequence> <xs:elementname="Address"nillable="true"type="xs:string" /> <xs:elementname="Identity"nillable="true"type="xs:string" /> <xs:elementxmlns:q8="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"name="Status"type="q8:PointStatus" /> <xs:elementname="Town"nillable="true"type="xs:string" /> </xs:sequence> </xs:complexType> <xs:elementname="Point"nillable="true"type="tns:Point" /> <xs:complexTypename="ArrayOfCardItemValue"> <xs:sequence> <xs:elementminOccurs="0"maxOccurs="unbounded"name="CardItemValue"nillable="tr ue"type="tns:CardItemValue" /> </xs:sequence> </xs:complexType> <xs:elementname="ArrayOfCardItemValue"nillable="true"type="tns:ArrayOfCardIte mValue" /> <xs:complexTypename="CardItemValue"> <xs:sequence> <xs:elementname="Code"type="xs:int" /> <xs:elementname="TestResult"type="xs:int" /> </xs:sequence> </xs:complexType> <xs:elementname="CardItemValue"nillable="true"type="tns:CardItemValue" /> <xs:complexTypename="Vehicle"> <xs:sequence> <xs:elementname="Make"nillable="true"type="xs:string" /> <xs:elementname="Model"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="Modification"nillable="true"type="xs:string" /> </xs:sequence> </xs:complexType> <xs:elementname="Vehicle"nillable="true"type="tns:Vehicle" /> </xs:schema> <?xmlversion="1.0"encoding="utf-8"?> <xs:schemaxmlns:tns="http://schemas.datacontract.org/2004/07/TechInspection.D omain.Enums"elementFormDefault="qualified"targetNamespace="http://schemas.dat acontract.org/2004/07/TechInspection.Domain.Enums"xmlns:xs="http://www.w3.org /2001/XMLSchema"> 21 <xs:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc?x sd=xsd1"namespace="http://schemas.microsoft.com/2003/10/Serialization/" /> <xs:simpleTypename="ExpertStatus"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="Actual"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Stopped"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Archive"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 3</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Deleted"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 4</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="ExpertStatus"nillable="true"type="tns:ExpertStatus" /> <xs:simpleTypename="OperatorStatus"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="New"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Actual"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Stopped"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 3</EnumerationValue> </xs:appinfo> </xs:annotation> 22 </xs:enumeration> <xs:enumerationvalue="Archive"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 4</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Deleted"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 5</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="OperatorStatus"nillable="true"type="tns:OperatorStatus" /> <xs:simpleTypename="OperatorType"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="Juridical"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Individual"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="OperatorType"nillable="true"type="tns:OperatorType" /> <xs:simpleTypename="FormStatus"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="New"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Issued"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Stopped"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 3</EnumerationValue> </xs:appinfo> 23 </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Revoked"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 4</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="FormStatus"nillable="true"type="tns:FormStatus" /> <xs:simpleTypename="FormType"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="Blank"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Certificate"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="FormType"nillable="true"type="tns:FormType" /> <xs:simpleTypename="PointStatus"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="Actual"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Stopped"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Archive"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 3</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Deleted"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 4</EnumerationValue> 24 </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="PointStatus"nillable="true"type="tns:PointStatus" /> <xs:simpleTypename="TestResult"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="Passed"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="NotPassed"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="TestResult"nillable="true"type="tns:TestResult" /> <xs:simpleTypename="TestType"> <xs:restrictionbase="xs:string"> <xs:enumerationvalue="Primary"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 1</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> <xs:enumerationvalue="Secondary"> <xs:annotation> <xs:appinfo> <EnumerationValuexmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 2</EnumerationValue> </xs:appinfo> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:elementname="TestType"nillable="true"type="tns:TestType" /> </xs:schema> <?xmlversion="1.0"encoding="utf-8"?> <xs:schemaxmlns:tns="http://tempuri.org/"elementFormDefault="qualified"target Namespace="http://tempuri.org/"xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:importschemaLocation="http://eaisto.dev.armd.ru/Services/Inspection.svc?x sd=xsd2"namespace="http://schemas.datacontract.org/2004/07/TechInspection.Dom ain.DataContracts" /> <xs:elementname="RegisterCard"> <xs:complexType> <xs:sequence> <xs:elementxmlns:q1="http://schemas.datacontract.org/2004/07/TechInspection.D omain.DataContracts"minOccurs="0"name="user"nillable="true"type="q1:UserInfo" /> 25 <xs:elementxmlns:q2="http://schemas.datacontract.org/2004/07/TechInspection.D omain.DataContracts"minOccurs="0"name="card"nillable="true"type="q2:Card" /> </xs:sequence> </xs:complexType> </xs:element> <xs:elementname="RegisterCardResponse"> <xs:complexType> <xs:sequence> <xs:elementminOccurs="0"name="RegisterCardResult"type="xs:long" /> </xs:sequence> </xs:complexType> </xs:element> <xs:elementname="UnregisterCardById"> <xs:complexType> <xs:sequence> <xs:elementxmlns:q3="http://schemas.datacontract.org/2004/07/TechInspection.D omain.DataContracts"minOccurs="0"name="user"nillable="true"type="q3:UserInfo" /> <xs:elementminOccurs="0"name="cardId"type="xs:long" /> </xs:sequence> </xs:complexType> </xs:element> <xs:elementname="UnregisterCardByIdResponse"> <xs:complexType> <xs:sequence /> </xs:complexType> </xs:element> <xs:elementname="GetCardByVin"> <xs:complexType> <xs:sequence> <xs:elementxmlns:q4="http://schemas.datacontract.org/2004/07/TechInspection.D omain.DataContracts"minOccurs="0"name="user"nillable="true"type="q4:UserInfo" /> <xs:elementminOccurs="0"name="vin"nillable="true"type="xs:string" /> <xs:elementminOccurs="0"name="regNumber"nillable="true"type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:elementname="GetCardByVinResponse"> <xs:complexType> <xs:sequence> <xs:elementxmlns:q5="http://schemas.datacontract.org/2004/07/TechInspection.D omain.DataContracts"minOccurs="0"name="GetCardByVinResult"nillable="true"type ="q5:Card" /> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
© Copyright 2026 Paperzz