EAS ВРЕМЕННЫЕ ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ ПО ПОДКЛЮЧЕНИЮ ИНФОРМАЦИОННЫХ СИСТЕМ ОПЕРАТОРОВ ТЕХНИЧЕСКОГО ОСМОТРА К ЕАИСТО ВЕРСИЯ 1.5 Москва 2012 Содержание 1. Принятые термины и сокращения .....................................................................................3 2. Общие сведения ...................................................................................................................5 3. Основные положения ..........................................................................................................6 3.1 Характеристика ЕАИСТО и внешних систем .............................................................6 3.1.1 Требования к клиенту сервиса и формату сообщений ........................................9 3.1.2 Требования по журналированию и мониторингу работы ...................................9 4. Технические требования ...................................................................................................10 4.1 Требования к организации подключения ...............................................................10 5. Сведения об условиях и интерфейсах подключения АИС ОТО к ЦОД ЕАИСТО. Web-сервисы ................................................................................................................................11 5.1 Описание сервиса Эксперта ........................................................................................11 5.1.1 Метод приема сведений о результатах ТО .........................................................12 5.1.2 Метод получения результатов технического осмотра .......................................21 5.1.3 Метод получения справочника результатов проверки. .....................................24 5.1.4 Метод получения справочника видов проверки. ...............................................25 5.1.5 Метод получения справочника типов топлива...................................................26 5.1.6 Метод получения справочника типов привода тормозной системы. ...............27 5.1.7 Метод получения справочника видов талонов...................................................28 5.1.8 Метод получения справочника типов регистрационных документов. ............29 5.2 Описание сервиса Оператора......................................................................................31 5.2.1 Метод изменения сведений результатов ТО. .....................................................31 5.2.2 Метод отмены ошибочно переданных данных о результатах ТО. ...................36 Приложение 1. Описание сервиса эксперта в формате WSDL .........................................38 Приложение 2. Описание сервиса оператора в формате WSDL .......................................42 1. Принятые термины и сокращения Сокращение Расшифровка АРМ Автоматизированное рабочее место. АИС Автоматизированная информационная система. ГИБДД Госавтоинспекция МВД России. ЕИТКС ОВД Единая информационно-телекоммуникационная система органов внутренних дел. Государственная информационная система «Единый ЕПГУ портал государственных и муниципальных услуг (функций)». ИС Информационная система. ОПО Общее программное обеспечение. ПО Программное обеспечение. ПТО Пункт технического осмотра. Система СМЭВ Единая автоматизированная информационная система технического осмотра. Система межведомственного взаимодействия. РСА Российский союз страховщиков. СУБД Система управления базой данных. ТО Технический осмотр. ЭЦП Электронная цифровая подпись. TCP/IP XML электронного TransferControlProtocol / InternetProtocol, протокол управления передачей/интернет-протокол. eXtensible Markup Language — расширяемый язык разметки. WSDL web services definition language КЛАДР Классификатор адресов России ЕАИС ТО Единая автоматизированная информационная система 3 технического осмотра структура, состоящая из заголовка и тела сообщения в Сообщение формате XML и служащая для передачи информации от системы оператора технического осмотра в ЕАИС ТО и наоборот 4 2. Общие сведения В соответствии с федеральным законом от 1 июля 2011 г. № 170-ФЗ «О техническом осмотре транспортных средств и о внесении изменений в отдельные законодательные акты Российской Федерации» операторы технического осмотра обеспечивают обработку сведений о результатах технического осмотра (далее - ТО) транспортных средств и их передачу в единую информационную систему технического осмотра (далее - Система). Настоящий документ описывает технические требования к подключению операторов технического осмотра к Системе через веб-интерфейс или через веб-сервисы информационного взаимодействия и алгоритмы их работы. Настоящие технические требования определяют условия и интерфейсы, а также устанавливают порядок подключения автоматизированных информационных систем операторов технического осмотра (далее – внешние АИС) к Единой автоматизированной информационной системе технического осмотра (далее – ЕАИСТО) Главного управления обеспечения безопасности дорожного движения Министерства внутренних дел Российской Федерации (далее – ГУОБДД МВД России). 5 3. Основные положения 3.1 Характеристика ЕАИСТО и внешних систем ЕАИСТО предназначена для сбора, хранения и использования информации о техническом осмотре. Внешними АИС являются АИС операторов технического осмотра. В качестве данных АИС рассматриваются как локальные информационные системы, развернутые на единственном автоматизированном рабочем месте, так и распределенные информационные системы, функционирующие на базе локальной или распределенной вычислительной сети. Характер информационного взаимодействия подключаемых внешних АИС с функционирующей ЕАИСТО определяется нормативно-правовыми актами ГУОБДДМВД России, техническими и методическими документами ЕАИСТО. Взаимодействие подключаемых внешних АИС с ЕАИСТО предполагает прием/передачу следующих сведений: 1) марка и модель транспортного средства, в отношении которого проведен технический осмотр, год его выпуска, сведения, позволяющие идентифицировать это транспортное средство (идентификационный номер транспортного средства (VIN), номер кузова); 2) фамилия, имя и в случае, если имеется, отчество, лица, представившего транспортное средство для проведения технического осмотра; 3) адрес пункта технического осмотра, в котором был проведен технический осмотр; 4) номер, дата выдачи, срок действия талона технического осмотра или международного сертификата технического осмотра технического осмотра в форме электронного документа; 5) диагностическая карта в форме электронного документа; 6 либо талон 6) фамилия, имя и в случае, если имеется, отчество технического эксперта, принявшего решение о выдаче талона технического осмотра или международного сертификата технического осмотра. В функционирующей ЕАИСТО одновременно обрабатываются сведения более чем о 40 миллионах субъектах персональных данных. Для доступа внешней АИС оператора технического осмотра (далее - АИС ОТО) к ЕАИСТО используются ее веб-сервисы. Для использования веб-сервисов ЕАИСТО на стороне АИС ОТО должно быть реализовано прикладное ПО (программный клиент), соответствующий данным техническим требованиям. Информационное взаимодействие производится по инициативе АИС ОТО. Для инициации информационного взаимодействия используется запрос. Запрос формируется АИС ОТО. Результатом информационного взаимодействия является ответ установленной структуры. Ответ формируется системой ЕАИСТО. Процесс информационного взаимодействия внешней АИС с системой ЕАИСТО представлен на Рисунке 1 и включает в свой состав: формирование запроса; вызов внешней АИС оператора технического осмотра сервисов, предоставляемых ЕАИСТО. Описание сервисов приведено в разделе 0; формирование ЕАИСТО ответа в соответствии с данными запроса; передачу ответа внешней АИС. 7 Процесс информационного взаимодействия при направлении запроса Внешняя АИС ОТО ЕАИСТО Формирование первичного запроса Вызов сервиса Прием данных, формирование ответа Передача ответа (id запроса | Код обработки) Выборка данных Формирование повторного запроса Формирование ответа Вызов сервиса Передача ответа Запрашиваемые сведения | Код обработки) Рисунок 1 – Процесс информационного взаимодействия Для организации информационного взаимодействия применяются web-сервисы, использующие XML как язык описания информации и спецификацию SOAP, определяющую формат и структуру сообщения. Для описания программных интерфейсов предоставляемых веб-сервисов используется язык описания WSDL (WebServices Description Language). Описание программных интерфейсов информацию: протокол; адрес сервера; номер используемого порта; список доступных операций; структуру запроса; структуру ответа. 8 включает следующую 3.1.1 Требования к клиенту сервиса и формату сообщений Информационное взаимодействие между АИС ОТО и ЕАИСТО должно осуществляться посредством XML-сообщений, соответствующих стандарту SOAP 1.1. Сервис АИС ОТО должен соответствовать требованиям к клиенту сервиса, описанного в виде WSDL описания, включающего в себя XSDсхему сервиса. 3.1.2 Требования по журналированию и мониторингу работы При реализации АИС ОТО предъявляется следующий набор требований по журналированию работы: АИС ОТО должна вести журнал событий, в котором должны отображаться следующие события: o факт отправки запроса сервису; o факт получения ответа от сервиса; o ошибки взаимодействия; для событий в журнале должны отражаться следующие атрибуты: o идентификатор события; o идентификатор связанного события; o дата и время события; o ИП адрес, с которого был отправлен запрос к сервису; o контекст события передаваемое (для сообщение, событий для запроса ошибок и – ответа – системная информация об ошибке). Требования к мониторингу работы должны соответствовать общим требованиям, предъявляемым к мониторингу работы интернет-сервисов. 9 4. Технические требования 4.1 Требования к организации подключения Предъявляются следующие требования к аппаратно-программному обеспечению оператора технического осмотра. При взаимодействии с ЕАИСТО через веб-интерфейс: Компьютер с доступом к сети Интернет на скорости не менее 512 Кбит/сек Интернет браузер o Microsoft Internet Explorer версии 8 и выше; o Firefox При взаимодействии с ЕАИСТО через механизм веб-сервисов: Компьютер с доступом к сети Интернет на скорости не менее 512 Кбит/сек Программное обеспечение, реализующее взаимодействия с веб-сервисами ЕАИСТО 10 протокол 5. Сведения об условиях и интерфейсах подключения АИС ОТО к ЦОД ЕАИСТО. Web-сервисы Обмен данными о результатах технического осмотра осуществляется по протоколу SOAP 1.1. 5.1 Описание сервиса Эксперта Имя сервиса: arm_expert Состав методов: RegisterCard – метод приема сведений о результатах ТО; GetCardByVin – метод получения результатов технического осмотра; ListTestResult – метод получения справочника результатов проверки; ListTestType – метод получения справочника видов проверки; ListFuel – метод получения справочника типов топлива; ListBrakingSystem – метод получения справочника типов привода тормозной системы; ListFormType – метод получения справочника видов талонов; ListRegistrationDocumentType – метод получения справочника типов регистрационных документов Учётная запись для тестирования: Для получения логин и пароля Вам необходимо написать письмо с запросом на электронный адрес info@techosmotr.ru с указанием Вашего номера в реестре операторов, Названия организации и ФИО руководителя, а также ФИО ответственного сотрудника и контактный телефон для связи. Адрес веб-сервиса: Тестовая версия: http://eaistotest.srvdev.ru/common/ws/arm_expert.php?wsdl Промышленная версия: http://eaisto.gibdd.ru/common/ws/arm_expert.php?wsdl 11 Описание сервисов в формате WSDL представлено в Приложении 1. 5.1.1 Метод приема сведений о результатах ТО Логическое имя метода: RegisterCard Структура пакета запроса № 1. 2. Описание поля Пользователь Данные Формат поля UserInfo Card Название переменной в xml user card Обязательность заполнения да да Описание типа UserInfo № Описание поля 1. 2. Имя Пароль Название Информационной системы передающей данные 3. Текст Текст Название переменной в xml Name Password Текст ExtSystem Формат поля Обязательность заполнения да да нет Описание типа Card № Описание поля 1. ID карточки (возвращается при получении карточки, передаётся только при изменении карточки) Формат поля Число 12 Название переменной в xml Обязательность заполнения Id нет 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ID карточки первичного осмотра (передаётся при вводе сведений о прохождении вторичного осмотра) ID карточки, на которую данная является дубликатом (передаётся при вводе сведений о выдаче дубликата) Признак того, что на данную карточку выдан дубликат Кузов № Дата диагностики (передавать при создании карточки не требуется) Для данного типа заполняется следующие поля: комментарий срок действия дубликат Фамилия лица, предоставившего ТС на осмотр Имя лица, предоставившего ТС на осмотр Отчество лица, предоставившего ТС на осмотр Замечания Число CardIsSecondar yFor нет Число CardIsDublicate For нет IsArchive нет BodyNumber нет да Число: 0 – на карточку нет дубликата 1 – на карточку есть дубликат Текст Дата DateOfDiagnosi s Form Form нет да Текст Name да Текст FName нет Текст MName Текст Note 13 нет 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Государственный регистрационный знак Результат проверки Вид проверки Массив результатов диагностики Автомобиль Категория ТС (СРТС или ПТС) Категория ТС (ОКП) VIN Год выпуска ТС Шасси (Рама) № Масса без нагрузки (кг) Разрешенная максимальная масса (кг) RegistrationNu mber Текст Текст Принимает одно из следующих значений: Passed – пройдена NotPasse d – не пройдена Текст Принимает одно из следующих значений: Primary – первичная Secondar y – вторичная нет да TestResult да TestType да Values Values Vehicle Текст Число Текст Vehicle VechicleCategor y VechicleCategor y2 VIN Year FrameNumber Число EmptyMass Текст Текст да да да нет да нет да да Число MaxMass 14 24. 25. Тип топлива Тип привода тормозной системы Текст Принимает одно из следующих значений: Petrol – бензин Diesel – дизельное топливо Pressure Gas – сжатый газ Liquefie dGas – сжиженный газ None – Без топлива Текст Принимает одно из следующих значений: Mechani cal – механический Hydrauli c – гидравлическ ий Pneumat ic – пневматическ ий Combine d – комбинирован ный None – Без тормозной системы 15 нет Fuel да BrakingSystem 26. 27. 28. 29. 30. 31. Марка шин Пробег ТС (км) Регистрационный документ: Повторный технический осмотр пройти до Эксперт Оператор Текст Число RegistrationDo cument Tyres Killometrage RegistrationDoc ument да да да нет Дата DateOfRetest Expert Operator Expert Operator да нет Описание типа Vehicle № Описание поля 1. Марка 2. Модель Формат поля Текст Текст Название переменной в xml Make Model Обязательность заполнения да да Описание типа Form № 1. 2. 3. 4. 5. Описание поля Комментарий Дубликат Серия* Номер* Срок действия Формат поля Текст Логический Текст Текст Дата Название переменной в xml Comment Duplicate Series Number Validity Обязательность заполнения нет да нет да да *-данные поля не передаются в метод RegisterCard Описание типа Values Тип данных Values состоит из набора элементов CardItemValue, каждый из которых, в свою очередь, состоит из: Название Обязательность № Описание поля Формат поля переменной в заполнения xml Число: 1. Код диагностики Code да 1–65 16 2. Значение о возможности эксплуатации Число: 0 – параметр соответствует требованиям 1 – параметр не соответствует требованиям TestResult да CardItemValue передается, в случае, если инструментальный контроль данного параметра проводился, если не проводился – не передается. Описание типа RegistrationDocument № 1. 2. 3. 4. 5. 6. Описание поля Тип регистрационного документа Серия Номер Выдан кем Выдан когда Собственник иностранный гражданин Название переменной в xml Обязательность заполнения DocumentType да Текст Число Текст Дата Series Number Organization Date да да да да Y/N/NULL Foreign нет Формат поля Текст: RegTalon – Свидетельств о регистрации транспортного средства PTS – Паспорт транспортного средства Описание типа Expert № 1. 2. Описание поля Имя Фамилия Формат поля Текст Текст 17 Название переменной в xml Name FName Обязательность заполнения да да Отчество 3. Текст MName нет Формат поля Название переменной в xml Обязательность заполнения Текст FullName да Текст ShortName да Описание типа Operator № 1. 2. Описание поля Полное наименование Сокращенное наименование Контрольный пример запроса 1. Первичный осмотр Успешный осмотр: <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <tem:RegisterCard> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>nazvanie programmnogo obespechenia</tec:ExtSystem> </tem:user> <tem:card> <tec:BodyNumber>AF88898888</tec:BodyNumber> <tec:DateOfDiagnosis>2012-01-04T00:00:00</tec:DateOfDiagnosis> <tem:Form> <tem:Comment>особые отметки</tem:Comment> <tem:Duplicate>false</tem:Duplicate> <tem:Validity>2012-12-07T16:00:00</tem:Validity> </tem:Form> <tec:Name>Кузнецов</tec:Name> <tec:FName>Иван</tec:FName> <tec:MName>Петрович</tec:MName> <tec:Note>Тестирование рулевого управления</tec:Note> <tec:RegistrationNumber>D322DD22Z</tec:RegistrationNumber> <tec:TestResult>Passed</tec:TestResult> <tec:TestType>Primary</tec:TestType> <tec:Values> <tec:CardItemValue> <tec:Code>1</tec:Code> <tec:TestResult>0</tec:TestResult> </tec:CardItemValue> </tec:Values> <tec:Vehicle> <tec:Make>ВАЗ</tec:Make> <tec:Model>2107</tec:Model> </tec:Vehicle> <tec:VehicleCategory>B</tec:VehicleCategory> <tec:VehicleCategory2>M1</tec:VehicleCategory2> <tec:Vin>W3W0W234WWW537W5W</tec:Vin> <tec:Year>2011</tec:Year> <tem:FrameNumber>234</tem:FrameNumber> <tem:EmptyMass>900</tem:EmptyMass> <tem:MaxMass>1000</tem:MaxMass> <tem:Fuel>PressureGas</tem:Fuel> <tem:BrakingSystem>Hydraulic</tem:BrakingSystem> <tem:Tyres>Aeolus</tem:Tyres> <tem:Killometrage>20000</tem:Killometrage> <tem:RegistrationDocument> <tem:DocumentType>PTS</tem:DocumentType> <tem:Series>33DD</tem:Series> <tem:Number>423432</tem:Number> <tem:Organization>РВДП</tem:Organization> <tem:Date>2011-02-08T00:00:00</tem:Date> 18 <tem:Foreign>Y</tem:Foreign> </tem:RegistrationDocument> <tem:Expert> <tem:Name>Кузнецов</tem:Name> <tem:FName>Николай</tem:FName> <tem:MName>Петрович</tem:MName> </tem:Expert> </tem:card> </tem:RegisterCard> </soapenv:Body> </soapenv:Envelope> Неуспешный осмотр: <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <tem:RegisterCard> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>nazvanie programmnogo obespechenia</tec:ExtSystem> </tem:user> <tem:card> <tec:BodyNumber>AF88888888</tec:BodyNumber> <tec:DateOfDiagnosis>2012-01-04T00:00:00</tec:DateOfDiagnosis> <tec:Name>Кузнецов</tec:Name> <tec:FName>Иван</tec:FName> <tec:MName>Петрович</tec:MName> <tec:Note>Тестирование рулевого управления</tec:Note> <tec:RegistrationNumber>D322DD22Z</tec:RegistrationNumber> <tec:TestResult>NotPassed</tec:TestResult> <tec:TestType>Primary</tec:TestType> <tec:Values> <tec:CardItemValue> <tec:Code>1</tec:Code> <tec:TestResult>1</tec:TestResult> </tec:CardItemValue> </tec:Values> <tec:Vehicle> <tec:Make>ВАЗ</tec:Make> <tec:Model>2107</tec:Model> </tec:Vehicle> <tec:VehicleCategory>B</tec:VehicleCategory> <tec:VehicleCategory2>M1</tec:VehicleCategory2> <tec:Vin>W3W0W2W7W2W537WW8</tec:Vin> <tec:Year>2011</tec:Year> <tem:FrameNumber>234</tem:FrameNumber> <tem:EmptyMass>900</tem:EmptyMass> <tem:MaxMass>1000</tem:MaxMass> <tem:Fuel>PressureGas</tem:Fuel> <tem:BrakingSystem>Hydraulic</tem:BrakingSystem> <tem:Tyres>Aeolus</tem:Tyres> <tem:Killometrage>20000</tem:Killometrage> <tem:RegistrationDocument> <tem:DocumentType>PTS</tem:DocumentType> <tem:Series>33DD</tem:Series> <tem:Number>423452</tem:Number> <tem:Organization>РВДП</tem:Organization> <tem:Date>2011-02-08T00:00:00</tem:Date> </tem:RegistrationDocument> <tem:Expert> <tem:Name>Кузнецов</tem:Name> <tem:FName>Николай</tem:FName> <tem:MName>Петрович</tem:MName> </tem:Expert> </tem:card> </tem:RegisterCard> </soapenv:Body> </soapenv:Envelope> 2. Вторичный осмотр Успешный осмотр: <soapenv:Envelope xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <tem:RegisterCard> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> 19 <tec:ExtSystem>nazvanie programmnogo obespechenia</tec:ExtSystem> </tem:user> <tem:card> <tec:CardIsSecondaryFor>14508853</tec:CardIsSecondaryFor> <tem:Form> <tem:Comment>особые отметки</tem:Comment> <tem:Duplicate>false</tem:Duplicate> <tem:Validity>2012-02-04T00:00:00</tem:Validity> </tem:Form> <tec:TestResult>Passed</tec:TestResult> <tec:TestType>Secondary</tec:TestType> <tem:Expert> <tem:Name>Кузнецов</tem:Name> <tem:FName>Николай</tem:FName> <tem:MName>Петрович</tem:MName> </tem:Expert> </tem:card> </tem:RegisterCard> </soapenv:Body> </soapenv:Envelope> Неуспешный осмотр: <soapenv:Envelope xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <tem:RegisterCard> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>sys1</tec:ExtSystem> </tem:user> <tem:card> <tec:CardIsSecondaryFor>14508853</tec:CardIsSecondaryFor> <tec:TestResult>NotPassed</tec:TestResult> <tec:TestType>Secondary</tec:TestType> <tec:Values> <tec:CardItemValue> <tec:Code>1</tec:Code> <tec:TestResult>1</tec:TestResult> </tec:CardItemValue> </tec:Values> <tem:Expert> <tem:Name>Кузнецов</tem:Name> <tem:FName>Николай</tem:FName> <tem:MName>Петрович</tem:MName> </tem:Expert> </tem:card> </tem:RegisterCard> </soapenv:Body> </soapenv:Envelope> 3. Дубликат <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <tem:RegisterCard> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>sys1</tec:ExtSystem> </tem:user> <tem:card> <tec:CardIsDublicateFor>14509011</tec:CardIsDublicateFor> <tem:Form> <tem:Comment>особые отметки</tem:Comment> <tem:Duplicate>true</tem:Duplicate> <tem:Validity>2012-03-04T00:00:00</tem:Validity> </tem:Form> <tem:Expert> <tem:Name>Кузнецов</tem:Name> <tem:FName>Николай</tem:FName> <tem:MName>Петрович</tem:MName> </tem:Expert> </tem:card> </tem:RegisterCard> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный: 20 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/"> <SOAP-ENV:Body> <ns1:RegisterCardResponse> <ns1:RegisterCardResult>14508382</ns1:RegisterCardResult> <ns1:Nomer>201208011756014507072</ns1:Nomer> </ns1:RegisterCardResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Отрицательный: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>DK_CREATE_ERROR</faultcode> <faultstring>Произошла ошибка при создании карточки</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Структура пакета ответа № Описание поля Формат поля Уникальный номер Число карточки в системе Номер Диагностической Текст карты 1. 2. Название Обязательность переменной в заполнения xml RegisterCardRes да ult да Nomer 5.1.2 Метод получения результатов технического осмотра Логическое имя метода: GetCardByVin Структура пакета запроса № 1. Описание поля Пользователь Формат поля UserInfo 21 Название переменной в xml user Обязательность заполнения да 2. 3. 4. 5. 6. 7. 8. Цель поиска VIN Государственный регистрационный знак Номер Кузова Номер Шасси (Рамы) Номер Талона ТО или Диагностической карты Серия Талона ТО Примечания: Текст Принимает одно из следующих значений: ForSeco ndary – поиск карточек для проведения вторичного осмотра ForDubli cate – поиск карточек для выдачи дубликата да Purpose Текст vin Текст regNumber Текст BodyNumber Текст FrameNumber нет нет нет нет нет Число formNumber Текст formSeries нет – описание UserInfo – см. выше. – должен быть указано как минимум один параметр поиска. Допускается ввод всех параметров одновременно. Структура пакета ответа Элементы типа Card. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> 22 <soapenv:Body> <tem:GetCardByVin> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>sys1</tec:ExtSystem> </tem:user> <tem:Purpose>ForDublicate</tem:Purpose> <tem:vin>52345235235JKH23J</tem:vin> <tem:regNumber></tem:regNumber> <tem:BodyNumber></tem:BodyNumber> <tem:FrameNumber></tem:FrameNumber> <tem:formNumber></tem:formNumber> <tem:formSeries></tem:formSeries> </tem:GetCardByVin> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:GetCardByVinResponse> <ns2:GetCardByVinResult> <ns1:Id>14450039</ns1:Id> <ns1:IsArchive>0</ns1:IsArchive> <ns1:BodyNumber>234523</ns1:BodyNumber> <ns1:DateOfDiagnosis>2012-08-01T00:00:00</ns1:DateOfDiagnosis> <ns1:Form> <ns1:Duplicate>true</ns1:Duplicate> <ns1:Number>201208011022014464314</ns1:Number> <ns1:Series xsi:nil="true"/> <ns1:Type>DK</ns1:Type> <ns1:Validity>2013-01-01T00:00:00</ns1:Validity> </ns1:Form> <ns1:Name xsi:nil="true"/> <ns1:RegistrationNumber>52353</ns1:RegistrationNumber> <ns1:TestResult>Passed</ns1:TestResult> <ns1:Values xsi:nil="true"/> <ns1:Vehicle> <ns1:Make>34523</ns1:Make> <ns1:Model>23452345</ns1:Model> </ns1:Vehicle> <ns1:VehicleCategory>D</ns1:VehicleCategory> <ns1:VehicleCategory2>M3</ns1:VehicleCategory2> <ns1:Vin>52345235235JKH23J</ns1:Vin> <ns1:FrameNumber>523452345</ns1:FrameNumber> <ns1:Expert> <ns1:Name>Соколов</ns1:Name> <ns1:FName>Андрей</ns1:FName> <ns1:MName>Николаевич</ns1:MName> </ns1:Expert> <ns1:Operator> <ns1:FullName>ООО Автосервис</ns1:FullName> <ns1:ShortName>ООО Авто</ns1:ShortName> </ns1:Operator> </ns2:GetCardByVinResult> </ns2:GetCardByVinResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope></SOAP-ENV:Envelope> Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 23 5.1.3 Метод получения справочника результатов проверки. Логическое имя метода: ListTestResult Структура пакета запроса Название № Описание поля Формат поля переменной в xml 1. Пользователь UserInfo user Примечание: описание UserInfo – см. выше. Обязательность заполнения да Структура пакета ответа Элементы типа ListItem. Описание типа ListItem № Описание поля 1. Код 2. Наименование Формат поля Текст Текст Название переменной в xml Code Title Обязательность заполнения да да Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:ListTestResult> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> </tem:user> </tem:ListTestResult> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:ListTestResultResponse> <ns2:ListItem> <ns1:Code>Passed</ns1:Code> <ns1:Title>Проверка пройдена</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>NotPassed</ns1:Code> <ns1:Title>Проверка не пройдена</ns1:Title> </ns2:ListItem> </ns2:ListTestResultResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> 24 <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5.1.4 Метод получения справочника видов проверки. Логическое имя метода: ListTestType Структура пакета запроса Название № Описание поля Формат поля переменной в xml 1. Пользователь UserInfo user Примечание: описание UserInfo – см. выше. Обязательность заполнения да Структура пакета ответа Элементы типа ListItem. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:ListTestType> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> </tem:user> </tem:ListTestType> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:ListTestTypeResponse> <ns2:ListItem> <ns1:Code>Primary</ns1:Code> <ns1:Title>Первичная проверка</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>Secondary</ns1:Code> <ns1:Title>Вторичная проверка</ns1:Title> </ns2:ListItem> </ns2:ListTestTypeResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> 25 </SOAP-ENV:Envelope> 5.1.5 Метод получения справочника типов топлива. Логическое имя метода: ListFuel Структура пакета запроса Название № Описание поля Формат поля переменной в xml 1. Пользователь UserInfo user Примечание: описание UserInfo – см. выше. Обязательность заполнения да Структура пакета ответа Элементы типа ListItem. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:ListFuel> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> </tem:user> </tem:ListFuel> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:ListFuelResponse> <ns2:ListItem> <ns1:Code>Petrol</ns1:Code> <ns1:Title>Бензин</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>Diesel</ns1:Code> <ns1:Title>Дизельное топливо</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>PressureGas</ns1:Code> <ns1:Title>Сжатый газ</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>LiquefiedGas</ns1:Code> <ns1:Title>Сжиженный газ</ns1:Title> </ns2:ListItem> </ns2:ListFuelResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> 26 <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5.1.6 Метод получения справочника типов привода тормозной системы. Логическое имя метода: ListBrakingSystem Структура пакета запроса Название № Описание поля Формат поля переменной в xml 1. Пользователь UserInfo user Примечание: описание UserInfo – см. выше. Обязательность заполнения да Структура пакета ответа Элементы типа ListItem. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:ListBrakingSystem> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> </tem:user> </tem:ListBrakingSystem> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:ListBrakingSystemResponse> <ns2:ListItem> <ns1:Code>Mechanical</ns1:Code> <ns1:Title>Механический</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>Hydraulic</ns1:Code> <ns1:Title>Гидравлический</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>Pneumatic</ns1:Code> <ns1:Title>Пневматический</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>Combined</ns1:Code> <ns1:Title>Комбинированный</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>None</ns1:Code> <ns1:Title>Без тормозной системы</ns1:Title> </ns2:ListItem> </ns2:ListBrakingSystemResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 27 Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5.1.7 Метод получения справочника видов талонов. Логическое имя метода: ListFormType Структура пакета запроса Название № Описание поля Формат поля переменной в xml 1. Пользователь UserInfo user Примечание: описание UserInfo – см. выше. Обязательность заполнения да Структура пакета ответа Элементы типа ListItem. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:ListFormType> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> </tem:user> </tem:ListFormType> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:ListFormTypeResponse> <ns2:ListItem> <ns1:Code>Blank</ns1:Code> <ns1:Title>Талон ТО</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>Certificate</ns1:Code> <ns1:Title>Международный сертификат</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>DK</ns1:Code> <ns1:Title>Диагностическая карта</ns1:Title> </ns2:ListItem> </ns2:ListFormTypeResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 28 Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5.1.8 Метод получения справочника типов регистрационных документов. Логическое имя метода: ListRegistrationDocumentType Структура пакета запроса Название № Описание поля Формат поля переменной в xml 1. Пользователь UserInfo user Примечание: описание UserInfo – см. выше. Обязательность заполнения да Структура пакета ответа Элементы типа ListItem. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:ListRegistrationDocumentType> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>sys1</tec:ExtSystem> </tem:user> </tem:ListRegistrationDocumentType> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:ns2="http://tempuri.org/"> <SOAP-ENV:Body> <ns2:ListRegistrationDocumentTypeResponse> <ns2:ListItem> <ns1:Code>RegTalon</ns1:Code> <ns1:Title>Свидетельство о регистрации транспортного средства</ns1:Title> </ns2:ListItem> <ns2:ListItem> <ns1:Code>PTS</ns1:Code> <ns1:Title>Паспорт транспортного средства</ns1:Title> </ns2:ListItem> </ns2:ListRegistrationDocumentTypeResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 29 Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 30 5.2 Описание сервиса Оператора Имя сервиса: arm_operator Состав методов: ChangeCard – метод изменения результатов ТО; UnregisterCard – метод отмены ошибочно переданных данных о результатах ТО. Учётная запись для тестирования: Для получения логин и пароля Вам необходимо написать письмо с запросом на электронный адрес info@techosmotr.ru с указанием Вашего номера в реестре операторов, Названия организации и ФИО руководителя, а также ФИО ответственного сотрудника и контактный телефон для связи. Адрес веб-сервиса: Тестовая версия: http://eaistotest.srvdev.ru/common/ws/arm_operator.php?wsdl Промышленная версия: http://eaisto.gibdd.ru/common/ws/arm_operator.php?wsdl Описание сервисов в формате WSDL представлено в Приложении 2. 5.2.1 Метод изменения сведений результатов ТО. Для изменения доступны результаты ТО, введённые в систему за последние 5 дней. Логическое имя метода: ChangeCard Структура пакета запроса № 3. 4. Описание поля Пользователь Данные Формат поля UserInfo Card Примечания: – описание UserInfo – см. выше. 31 Название переменной в xml user card Обязательность заполнения да да – описание Card – см. выше. Контрольный пример запроса <soapenv:Envelope xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:tem="http://tempuri.org/" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header/> <soapenv:Body> <tem:ChangeCard> <tem:user> <tec:Name>?</tec:Name> <tec:Password>?</tec:Password> <tec:ExtSystem>sys1</tec:ExtSystem> </tem:user> <tem:card> <tec:Id>14450039</tec:Id> <tec:Form> <tec:Number>201208011022014464314</tec:Number> </tec:Form> <tec:BodyNumber>AF88888889</tec:BodyNumber> <tec:DateOfDiagnosis>2012-01-09T00:00:00</tec:DateOfDiagnosis> <tec:Name>Кузнецов</tec:Name> <tec:FName>Иван</tec:FName> <tec:MName>Петрович</tec:MName> <tec:Note>Тестирование рулевого управления9</tec:Note> <tec:RegistrationNumber>D322DD22Z9</tec:RegistrationNumber> <tec:TestResult>NotPassed</tec:TestResult> <tec:TestType>Primary</tec:TestType> <tec:Values> <tec:CardItemValue> <tec:Code>5</tec:Code> <tec:TestResult>1</tec:TestResult> </tec:CardItemValue> </tec:Values> <tec:Vehicle> <tec:Make>ВАЗ9</tec:Make> <tec:Model>21079</tec:Model> <tec:Modification>Нет9</tec:Modification> </tec:Vehicle> <tec:VehicleCategory>B</tec:VehicleCategory> <tec:VehicleCategory2>M1</tec:VehicleCategory2> <tec:Vin>WWWWWWWWWWWWWWWW9</tec:Vin> <tec:Year>2009</tec:Year> <tem:FrameNumber>2349</tem:FrameNumber> <tem:EmptyMass>90079</tem:EmptyMass> <tem:MaxMass>10009</tem:MaxMass> <tem:Fuel>PressureGas</tem:Fuel> <tem:BrakingSystem>Hydraulic</tem:BrakingSystem> <tem:Tyres>Aeolus</tem:Tyres> <tem:Killometrage>200009</tem:Killometrage> <tem:RegistrationDocument> <tem:DocumentType>PTS</tem:DocumentType> <tem:Series>33DD</tem:Series> <tem:Number>423359</tem:Number> <tem:Organization>РВДП9</tem:Organization> <tem:Date>2012-01-09T00:00:00</tem:Date> </tem:RegistrationDocument> </tem:card> </tem:ChangeCard> </soapenv:Body> </soapenv:Envelope> Пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/" xmlns:ns2="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SOAP-ENV:Body> <ns1:ChangeCardResponse> <ns1:ChangeCardResult>true</ns1:ChangeCardResult> <ns1:ChangedCard> <ns2:Id>14450039</ns2:Id> <ns2:CardIsSecondaryFor xsi:nil="true"/> <ns2:CardIsDublicateFor>14427328</ns2:CardIsDublicateFor> <ns2:BodyNumber>234523</ns2:BodyNumber> <ns2:DateOfDiagnosis>2012-08-01T00:00:00</ns2:DateOfDiagnosis> <ns2:Form> <ns2:Comment xsi:nil="true"/> <ns2:Duplicate>true</ns2:Duplicate> <ns2:Number>201208011022014464314</ns2:Number> <ns2:Series xsi:nil="true"/> <ns2:Type>DK</ns2:Type> <ns2:Validity>2013-01-01T00:00:00</ns2:Validity> </ns2:Form> 32 <ns2:Name>fsdaf</ns2:Name> <ns2:FName>asdf</ns2:FName> <ns2:MName/> <ns2:Note/> <ns2:RegistrationNumber>52353</ns2:RegistrationNumber> <ns2:TestResult>Passed</ns2:TestResult> <ns2:TestType>Primary</ns2:TestType> <ns2:Values> <ns2:CardItemValue> <ns2:Code>1</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>2</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>3</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>4</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>5</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>6</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>7</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>8</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>9</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>10</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>11</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>12</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>13</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>14</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>15</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>16</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>17</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>18</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>19</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>20</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>21</ns2:Code> <ns2:TestResult>0</ns2:TestResult> 33 </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>22</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>23</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>24</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>25</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>26</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>27</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>28</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>29</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>30</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>31</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>32</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>33</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>34</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>35</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>36</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>37</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>38</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>39</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>40</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>41</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>42</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>43</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>44</ns2:Code> 34 <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>45</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>46</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>47</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>48</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>49</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>50</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>51</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>52</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>53</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>54</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>55</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>56</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>57</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>58</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>59</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>60</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>61</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>62</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>63</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>64</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> <ns2:CardItemValue> <ns2:Code>65</ns2:Code> <ns2:TestResult>0</ns2:TestResult> </ns2:CardItemValue> </ns2:Values> <ns2:Vehicle> <ns2:Make>34523</ns2:Make> <ns2:Model>23452345</ns2:Model> </ns2:Vehicle> 35 <ns2:VehicleCategory>D</ns2:VehicleCategory> <ns2:VehicleCategory2>M3</ns2:VehicleCategory2> <ns2:Vin>52345235235JKH23J</ns2:Vin> <ns2:Year>2000</ns2:Year> <ns2:FrameNumber>523452345</ns2:FrameNumber> <ns2:EmptyMass>23523</ns2:EmptyMass> <ns2:MaxMass>23523</ns2:MaxMass> <ns2:Fuel>PressureGas</ns2:Fuel> <ns2:BrakingSystem>Pneumatic</ns2:BrakingSystem> <ns2:Tyres>523</ns2:Tyres> <ns2:Killometrage>52345</ns2:Killometrage> <ns2:RegistrationDocument> <ns2:DocumentType>RegTalon</ns2:DocumentType> <ns2:Series>5234</ns2:Series> <ns2:Number>523452</ns2:Number> <ns2:Organization>234523</ns2:Organization> <ns2:Date>2012-07-10T00:00:00</ns2:Date> </ns2:RegistrationDocument> <ns2:Expert> <ns2:Name>Соколов</ns2:Name> <ns2:FName>Андрей</ns2:FName> <ns2:MName>Николаевич</ns2:MName> </ns2:Expert> </ns1:ChangedCard> </ns1:ChangeCardResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>USER_AUTH</faultcode> <faultstring>Данные пользователя указаны неверно</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 5.2.2 Метод отмены ошибочно переданных данных о результатах ТО. Логическое имя метода: UnregisterCard Структура пакета запроса Структура пакета запроса № 1. 2. Название переменной в xml user Формат Описание поля поля Пользователь Уникальный номер карточки в системе UserInfo Число cardId Обязательно сть заполнения да да Примечания: – описание UserInfo – см. выше. Контрольный пример запроса <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:tec="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts"> <soapenv:Header/> <soapenv:Body> <tem:UnregisterCard> <tem:user> <tec:Name>?</tec:Name> 36 <tec:Password>?</tec:Password> <tec:ExtSystem>nazvanie programmnogo obespechenia</tec:ExtSystem> </tem:user> <tem:CardId>1</tem:CardId> </tem:UnregisterCard> </soapenv:Body> </soapenv:Envelope> Контрольный пример ответа Положительный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/"> <SOAP-ENV:Body> <ns1:UnregisterCardResponse> <ns1:UnregisterCardResult>true</ns1:UnregisterCardResult> </ns1:UnregisterCardResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Отрицательный <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body> <SOAP-ENV:Fault> <faultcode>DK_EMPTY_ERROR</faultcode> <faultstring>Карточка не найдена</faultstring> </SOAP-ENV:Fault> </SOAP-ENV:Body> </SOAP-ENV:Envelope> 37 Приложение 1. Описание сервиса эксперта в формате WSDL <wsdl:definitions xmlns: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-utility-1.0.xsd" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" <wsdl:definitions name="Inspection" targetNamespace="http://tempuri.org/"><wsdl:types><xsd:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/"><xsd:element name="RegisterCard"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q1:UserInfo"/><xsd:element minOccurs="0" name="card" nillable="true" type="q2:Card"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="RegisterCardResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="RegisterCardResult" type="xsd:long"/><xsd:element minOccurs="0" name="Nomer" type="xsd:string"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="GetCardByVin"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q4:UserInfo"/><xsd:element minOccurs="0" name="Purpose" type="q18:Purpose"/><xsd:element minOccurs="0" name="vin" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="regNumber" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="BodyNumber" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="FrameNumber" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="formNumber" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="formSeries" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="dateFrom" nillable="true" type="xsd:string"/><xsd:element minOccurs="0" name="dateTo" nillable="true" type="xsd:string"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="GetCardByVinResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="GetCardByVinResult" nillable="true" type="q5:Card"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListTestResult"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q6:UserInfo"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListTestResultResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="ListItem" nillable="true" type="q7:ListItem"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListTestType"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q8:UserInfo"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListTestTypeResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="ListItem" nillable="true" type="q9:ListItem"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListFuel"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q10:UserInfo"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListFuelResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="ListItem" nillable="true" type="q11:ListItem"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListBrakingSystem"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q12:UserInfo"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListBrakingSystemResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="ListItem" nillable="true" type="q13:ListItem"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListFormType"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q14:UserInfo"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListFormTypeResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="ListItem" nillable="true" type="q15:ListItem"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListRegistrationDocumentType"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q16:UserInfo"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ListRegistrationDocumentTypeResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" maxOccurs="unbounded" name="ListItem" nillable="true" type="q17:ListItem"/></xsd:sequence></xsd:complexType></xsd:element></xsd:schema><xsd:schema targetNamespace="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" elementFormDefault="qualified"><xsd:complexType name="UserInfo"><xsd:sequence><xsd:element name="Name" type="xsd:string" nillable="true"/><xsd:element name="Password" type="xsd:string" nillable="true"/><xsd:element name="ExtSystem" type="xsd:string" nillable="true" minOccurs="0"/></xsd:sequence></xsd:complexType><xsd:element name="UserInfo" type="tns:UserInfo" nillable="true"/><xsd:complexType name="Card"><xsd:sequence><xsd:element name="Id" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="CardIsSecondaryFor" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="CardIsDublicateFor" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="IsArchive" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="BodyNumber" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="DateOfDiagnosis" type="xsd:dateTime"/><xsd:element name="Form" type="tns:Form" nillable="true" minOccurs="0"/><xsd:element name="Name" type="xsd:string" nillable="true"/><xsd:element name="FName" type="xsd:string" minOccurs="0"/><xsd:element name="MName" type="xsd:string" minOccurs="0"/><xsd:element name="Note" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="RegistrationNumber" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="TestResult" type="q1:TestResult"/><xsd:element name="TestType" type="q2:TestType" minOccurs="0"/><xsd:element name="Values" type="tns:ArrayOfCardItemValue" nillable="true"/><xsd:element name="Vehicle" type="tns:Vehicle" nillable="true"/><xsd:element name="VehicleCategory" type="xsd:string" nillable="true"/><xsd:element name="VehicleCategory2" type="xsd:string"/><xsd:element name="Vin" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="Year" type="xsd:int" minOccurs="0"/><xsd:element name="FrameNumber" type="xsd:string" minOccurs="0"/><xsd:element name="EmptyMass" type="xsd:int" minOccurs="0"/><xsd:element name="MaxMass" type="xsd:int" minOccurs="0"/><xsd:element name="Fuel" type="q1:FuelType" minOccurs="0"/><xsd:element name="BrakingSystem" type="q1:BrakingSystemType" minOccurs="0"/><xsd:element name="Tyres" type="xsd:string" minOccurs="0"/><xsd:element name="Killometrage" type="xsd:int" minOccurs="0"/><xsd:element name="RegistrationDocument" minOccurs="0"><xsd:complexType><xsd:sequence><xsd:element name="DocumentType" type="q1:RegistrationDocumentType"/><xsd:element name="Series" type="xsd:string"/><xsd:element 38 name="Number" type="xsd:string"/><xsd:element name="Organization" type="xsd:string"/><xsd:element name="Date" type="xsd:dateTime"/><xsd:element name="Foreign" type="q1:RegistrationDocumentForeign" nillable="true" minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="DateOfRetest" type="xsd:dateTime" minOccurs="0"/><xsd:element name="Expert" minOccurs="0"><xsd:complexType><xsd:sequence><xsd:element name="Name" type="xsd:string"/><xsd:element name="FName" type="xsd:string"/><xsd:element name="MName" type="xsd:string" minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="Operator" minOccurs="0"><xsd:complexType><xsd:sequence><xsd:element name="FullName" type="xsd:string"/><xsd:element name="ShortName" type="xsd:string"/></xsd:sequence></xsd:complexType></xsd:element></xsd:sequence></xsd:complexTyp e><xsd:element name="Card" type="tns:Card" nillable="true"/><xsd:complexType name="Form"><xsd:sequence><xsd:element name="Comment" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="Duplicate" type="xsd:boolean"/><xsd:element name="Number" type="xsd:string" nillable="true"/><xsd:element name="Series" type="xsd:string" nillable="true"/><xsd:element name="Type" type="q5:FormType"/><xsd:element name="Validity" type="xsd:dateTime"/></xsd:sequence></xsd:complexType><xsd:element name="Form" type="tns:Form" nillable="true"/><xsd:complexType name="ArrayOfCardItemValue"><xsd:sequence><xsd:element name="CardItemValue" type="tns:CardItemValue" nillable="true" minOccurs="0" maxOccurs="unbounded"/></xsd:sequence></xsd:complexType><xsd:element name="ArrayOfCardItemValue" type="tns:ArrayOfCardItemValue" nillable="true"/><xsd:complexType name="CardItemValue"><xsd:sequence><xsd:element name="Code" type="xsd:int"/><xsd:element name="TestResult" type="xsd:int"/></xsd:sequence></xsd:complexType><xsd:element name="CardItemValue" type="tns:CardItemValue" nillable="true"/><xsd:complexType name="Vehicle"><xsd:sequence><xsd:element name="Make" type="xsd:string" nillable="true"/><xsd:element name="Model" type="xsd:string" nillable="true"/></xsd:sequence></xsd:complexType><xsd:element name="Vehicle" type="tns:Vehicle" nillable="true"/><xsd:complexType name="ArrayOfListItem"><xsd:sequence><xsd:element name="ListItem" type="tns:ListItem" nillable="true" minOccurs="0" maxOccurs="unbounded"/></xsd:sequence></xsd:complexType><xsd:element name="ArrayOfListItem" type="tns:ArrayOfListItem" nillable="true"/><xsd:complexType name="ListItem"><xsd:sequence><xsd:element name="Code" type="xsd:string"/><xsd:element name="Title" type="xsd:string"/></xsd:sequence></xsd:complexType><xsd:element name="ListItem" type="tns:ListItem" nillable="true"/></xsd:schema><xsd:schema targetNamespace="http://schemas.datacontract.org/2004/07/TechInspection.Domain.Enums" elementFormDefault="qualified"><xsd:simpleType name="FormType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Blank"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo></ xsd:annotation></xsd:enumeration><xsd:enumeration value="Certificate"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appi nfo></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="FormType" type="tns:FormType" nillable="true"/><xsd:simpleType name="TestResult"><xsd:restriction base="xsd:string"><xsd:enumeration value="Passed"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo>< /xsd:annotation></xsd:enumeration><xsd:enumeration value="NotPassed"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="TestResult" type="tns:TestResult" nillable="true"/><xsd:simpleType name="TestType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Primary"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo> </xsd:annotation></xsd:enumeration><xsd:enumeration value="Secondary"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="TestType" type="tns:TestType" nillable="true"/><xsd:simpleType name="RegistrationDocumentType"><xsd:restriction base="xsd:string"><xsd:enumeration value="RegTalon"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo ></xsd:annotation></xsd:enumeration><xsd:enumeration value="PTS"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo></xs d:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="RegistrationDocumentType" type="tns:RegistrationDocumentType" nillable="true"/><xsd:simpleType name="RegistrationDocumentForeign"><xsd:restriction base="xsd:string"><xsd:enumeration value="Y"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo></xsd: annotation></xsd:enumeration><xsd:enumeration value="N"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo></xsd: annotation></xsd:enumeration><xsd:enumeration value="NULL"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo></x sd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="RegistrationDocumentForeign" type="tns:RegistrationDocumentForeign" nillable="true"/><xsd:simpleType name="FuelType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Petrol"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo>< /xsd:annotation></xsd:enumeration><xsd:enumeration value="Diesel"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo>< /xsd:annotation></xsd:enumeration><xsd:enumeration value="PressureGas"><xsd:annotation><xsd:appinfo><EnumerationValue>3</EnumerationValue></xsd:appi nfo></xsd:annotation></xsd:enumeration><xsd:enumeration value="LiquefiedGas"><xsd:annotation><xsd:appinfo><EnumerationValue>4</EnumerationValue></xsd:app info></xsd:annotation></xsd:enumeration><xsd:enumeration value="None"><xsd:annotation><xsd:appinfo><EnumerationValue>5</EnumerationValue></xsd:appinfo></x sd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="FuelType" type="tns:FuelType" nillable="true"/><xsd:simpleType name="BrakingSystemType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Mechanical"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appin fo></xsd:annotation></xsd:enumeration><xsd:enumeration value="Hydraulic"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration><xsd:enumeration value="Pneumatic"><xsd:annotation><xsd:appinfo><EnumerationValue>3</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration><xsd:enumeration value="Combined"><xsd:annotation><xsd:appinfo><EnumerationValue>4</EnumerationValue></xsd:appinfo ></xsd:annotation></xsd:enumeration><xsd:enumeration 39 value="None"><xsd:annotation><xsd:appinfo><EnumerationValue>5</EnumerationValue></xsd:appinfo></x sd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="BrakingSystemType" type="tns:BrakingSystemType" nillable="true"/><xsd:simpleType name="Purpose"><xsd:restriction base="xsd:string"><xsd:enumeration value="ForSecondary"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:app info></xsd:annotation></xsd:enumeration><xsd:enumeration value="ForDublicate"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:app info></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="Purpose" type="tns:Purpose" nillable="true"/></xsd:schema><xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/"><xsd:element name="anyType" nillable="true" type="xsd:anyType"/><xsd:element name="anyURI" nillable="true" type="xsd:anyURI"/><xsd:element name="base64Binary" nillable="true" type="xsd:base64Binary"/><xsd:element name="boolean" nillable="true" type="xsd:boolean"/><xsd:element name="byte" nillable="true" type="xsd:byte"/><xsd:element name="dateTime" nillable="true" type="xsd:dateTime"/><xsd:element name="decimal" nillable="true" type="xsd:decimal"/><xsd:element name="double" nillable="true" type="xsd:double"/><xsd:element name="float" nillable="true" type="xsd:float"/><xsd:element name="int" nillable="true" type="xsd:int"/><xsd:element name="long" nillable="true" type="xsd:long"/><xsd:element name="QName" nillable="true" type="xsd:QName"/><xsd:element name="short" nillable="true" type="xsd:short"/><xsd:element name="string" nillable="true" type="xsd:string"/><xsd:element name="unsignedByte" nillable="true" type="xsd:unsignedByte"/><xsd:element name="unsignedInt" nillable="true" type="xsd:unsignedInt"/><xsd:element name="unsignedLong" nillable="true" type="xsd:unsignedLong"/><xsd:element name="unsignedShort" nillable="true" type="xsd:unsignedShort"/><xsd:element name="char" nillable="true" type="tns:char"/><xsd:simpleType name="char"><xsd:restriction base="xsd:int"/></xsd:simpleType><xsd:element name="duration" nillable="true" type="tns:duration"/><xsd:simpleType name="duration"><xsd:restriction base="xsd:duration"><xsd:pattern value="\?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?"/><xsd:minInclusive value="P10675199DT2H48M5.4775808S"/><xsd:maxInclusive value="P10675199DT2H48M5.4775807S"/></xsd:restriction></xsd:simpleType><xsd:element name="guid" nillable="true" type="tns:guid"/><xsd:simpleType name="guid"><xsd:restriction base="xsd:string"><xsd:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}[\da-fA-F]{12}"/></xsd:restriction></xsd:simpleType><xsd:attribute name="FactoryType" type="xsd:QName"/><xsd:attribute name="Id" type="xsd:ID"/><xsd:attribute name="Ref" type="xsd:IDREF"/></xsd:schema></wsdl:types><wsdl:message name="IInspection_RegisterCard_InputMessage"><wsdl:part name="parameters" element="tns:RegisterCard"/></wsdl:message><wsdl:message name="IInspection_RegisterCard_OutputMessage"><wsdl:part name="parameters" element="tns:RegisterCardResponse"/></wsdl:message><wsdl:message name="IInspection_GetCardByVin_InputMessage"><wsdl:part name="parameters" element="tns:GetCardByVin"/></wsdl:message><wsdl:message name="IInspection_GetCardByVin_OutputMessage"><wsdl:part name="parameters" element="tns:GetCardByVinResponse"/></wsdl:message><wsdl:message name="IInspection_ListTestResult_InputMessage"><wsdl:part name="parameters" element="tns:ListTestResult"/></wsdl:message><wsdl:message name="IInspection_ListTestResult_OutputMessage"><wsdl:part name="parameters" element="tns:ListTestResultResponse"/></wsdl:message><wsdl:message name="IInspection_ListTestType_InputMessage"><wsdl:part name="parameters" element="tns:ListTestType"/></wsdl:message><wsdl:message name="IInspection_ListTestType_OutputMessage"><wsdl:part name="parameters" element="tns:ListTestTypeResponse"/></wsdl:message><wsdl:message name="IInspection_ListFuel_InputMessage"><wsdl:part name="parameters" element="tns:ListFuel"/></wsdl:message><wsdl:message name="IInspection_ListFuel_OutputMessage"><wsdl:part name="parameters" element="tns:ListFuelResponse"/></wsdl:message><wsdl:message name="IInspection_ListBrakingSystem_InputMessage"><wsdl:part name="parameters" element="tns:ListBrakingSystem"/></wsdl:message><wsdl:message name="IInspection_ListBrakingSystem_OutputMessage"><wsdl:part name="parameters" element="tns:ListBrakingSystemResponse"/></wsdl:message><wsdl:message name="IInspection_ListFormType_InputMessage"><wsdl:part name="parameters" element="tns:ListFormType"/></wsdl:message><wsdl:message name="IInspection_ListFormType_OutputMessage"><wsdl:part name="parameters" element="tns:ListFormTypeResponse"/></wsdl:message><wsdl:message name="IInspection_ListRegistrationDocumentType_InputMessage"><wsdl:part name="parameters" element="tns:ListRegistrationDocumentType"/></wsdl:message><wsdl:message name="IInspection_ListRegistrationDocumentType_OutputMessage"><wsdl:part name="parameters" element="tns:ListRegistrationDocumentTypeResponse"/></wsdl:message><wsdl:portType name="IInspection"><wsdl:operation name="RegisterCard"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/RegisterCard" message="tns:IInspection_RegisterCard_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/RegisterCardResponse" message="tns:IInspection_RegisterCard_OutputMessage"/></wsdl:operation><wsdl:operation name="GetCardByVin"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/GetCardByVin" message="tns:IInspection_GetCardByVin_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/GetCardByVinResponse" message="tns:IInspection_GetCardByVin_OutputMessage"/></wsdl:operation><wsdl:operation name="ListTestResult"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/ListTestResult" message="tns:IInspection_ListTestResult_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ListTestResultResponse" message="tns:IInspection_ListTestResult_OutputMessage"/></wsdl:operation><wsdl:operation name="ListTestType"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/ListTestType" message="tns:IInspection_ListTestType_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ListTestTypeResponse" message="tns:IInspection_ListTestType_OutputMessage"/></wsdl:operation><wsdl:operation name="ListFuel"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/ListFuel" message="tns:IInspection_ListFuel_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ListFuelResponse" message="tns:IInspection_ListFuel_OutputMessage"/></wsdl:operation><wsdl:operation name="ListBrakingSystem"><wsdl:input 40 wsaw:Action="http://tempuri.org/IInspection/ListBrakingSystem" message="tns:IInspection_ListBrakingSystem_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ListBrakingSystemResponse" message="tns:IInspection_ListBrakingSystem_OutputMessage"/></wsdl:operation><wsdl:operation name="ListFormType"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/ListFormType" message="tns:IInspection_ListFormType_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ListFormTypeResponse" message="tns:IInspection_ListFormType_OutputMessage"/></wsdl:operation><wsdl:operation name="ListRegistrationDocumentType"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/ListRegistrationDocumentType" message="tns:IInspection_ListRegistrationDocumentType_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ListRegistrationDocumentTypeResponse" message="tns:IInspection_ListRegistrationDocumentType_OutputMessage"/></wsdl:operation></wsdl:por tType><wsdl:binding name="IInspection" type="tns:IInspection"><soap:binding transport="http://schemas.xmlsoap.org/soap/http"/><wsdl:operation name="RegisterCard"><soap:operation soapAction="http://tempuri.org/IInspection/RegisterCard" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="GetCardByVin"><soap:operation soapAction="http://tempuri.org/IInspection/GetCardByVin" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="ListTestResult"><soap:operation soapAction="http://tempuri.org/IInspection/ListTestResult" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="ListTestType"><soap:operation soapAction="http://tempuri.org/IInspection/ListTestType" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="ListFuel"><soap:operation soapAction="http://tempuri.org/IInspection/ListFuel" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="ListBrakingSystem"><soap:operation soapAction="http://tempuri.org/IInspection/ListBrakingSystem" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="ListFormType"><soap:operation soapAction="http://tempuri.org/IInspection/ListFormType" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="ListRegistrationDocumentType"><soap:operation soapAction="http://tempuri.org/IInspection/ListRegistrationDocumentType" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service name="Inspection"><wsdl:port name="IInspection" binding="tns:IInspection"><soap:address location="http://eaisto.gibdd.ru/common/ws/arm_expert.php"/></wsdl:port></wsdl:service></wsdl:def initions> 41 Приложение 2. Описание сервиса оператора в формате WSDL <wsdl:definitions name="Inspection" targetNamespace="http://tempuri.org/"><wsdl:types><xsd:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/"><xsd:element name="ChangeCard"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q1:UserInfo"/><xsd:element minOccurs="0" name="card" nillable="true" type="q2:Card"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="ChangeCardResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="ChangeCardResult" type="xsd:boolean"/><xsd:element minOccurs="0" name="ChangedCard" type="q3:Card"/></xsd:sequence></xsd:complexType></xsd:element><!--удаление карточек-><xsd:element name="UnregisterCard"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="user" nillable="true" type="q1:UserInfo"/><xsd:element minOccurs="0" name="CardId" nillable="true" type="xsd:int"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="UnregisterCardResponse"><xsd:complexType><xsd:sequence><xsd:element minOccurs="0" name="UnregisterCardResult" type="xsd:boolean"/></xsd:sequence></xsd:complexType></xsd:element><!--END удаление карточек-></xsd:schema><xsd:schema targetNamespace="http://schemas.datacontract.org/2004/07/TechInspection.Domain.DataContracts" elementFormDefault="qualified"><xsd:complexType name="UserInfo"><xsd:sequence><xsd:element name="Name" type="xsd:string" nillable="true"/><xsd:element name="Password" type="xsd:string" nillable="true"/><xsd:element name="ExtSystem" type="xsd:string" nillable="true" minOccurs="0"/></xsd:sequence></xsd:complexType><xsd:element name="UserInfo" type="tns:UserInfo" nillable="true"/><xsd:complexType name="Card"><xsd:sequence><xsd:element name="Id" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="CardIsSecondaryFor" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="CardIsDublicateFor" type="xsd:int" nillable="true" minOccurs="0"/><xsd:element name="BodyNumber" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="DateOfDiagnosis" type="xsd:dateTime"/><xsd:element name="Form" type="tns:Form" nillable="true" minOccurs="0"/><xsd:element name="Name" type="xsd:string" nillable="true"/><xsd:element name="FName" type="xsd:string"/><xsd:element name="MName" type="xsd:string" minOccurs="0"/><xsd:element name="Note" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="RegistrationNumber" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="TestResult" type="q1:TestResult"/><xsd:element name="TestType" type="q2:TestType"/><xsd:element name="Values" type="tns:ArrayOfCardItemValue" nillable="true"/><xsd:element name="Vehicle" type="tns:Vehicle" nillable="true"/><xsd:element name="VehicleCategory" type="xsd:string" nillable="true"/><xsd:element name="VehicleCategory2" type="xsd:string"/><xsd:element name="Vin" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="Year" type="xsd:int"/><xsd:element name="FrameNumber" type="xsd:string" minOccurs="0"/><xsd:element name="EmptyMass" type="xsd:int"/><xsd:element name="MaxMass" type="xsd:int"/><xsd:element name="Fuel" type="q1:FuelType"/><xsd:element name="BrakingSystem" type="q1:BrakingSystemType"/><xsd:element name="Tyres" type="xsd:string"/><xsd:element name="Killometrage" type="xsd:int"/><xsd:element name="RegistrationDocument"><xsd:complexType><xsd:sequence><xsd:element name="DocumentType" type="q1:RegistrationDocumentType"/><xsd:element name="Series" type="xsd:string"/><xsd:element name="Number" type="xsd:string"/><xsd:element name="Organization" type="xsd:string"/><xsd:element name="Date" type="xsd:dateTime"/><xsd:element name="Foreign" type="q1:RegistrationDocumentForeign" nillable="true" minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="DateOfRetest" type="xsd:dateTime" minOccurs="0"/><xsd:element name="Expert" minOccurs="0"><xsd:complexType><xsd:sequence><xsd:element name="Name" type="xsd:string"/><xsd:element name="FName" type="xsd:string"/><xsd:element name="MName" type="xsd:string" minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element></xsd:sequence></xsd:complexType><x sd:element name="Card" type="tns:Card" nillable="true"/><xsd:complexType name="Form"><xsd:sequence><xsd:element name="Comment" type="xsd:string" nillable="true" minOccurs="0"/><xsd:element name="Duplicate" type="xsd:boolean"/><xsd:element name="Number" type="xsd:string" nillable="true"/><xsd:element name="Series" type="xsd:string" nillable="true"/><xsd:element name="Type" type="q5:FormType" nillable="true"/><xsd:element name="Validity" type="xsd:dateTime"/></xsd:sequence></xsd:complexType><xsd:element name="Form" type="tns:Form" nillable="true"/><xsd:complexType name="ArrayOfCardItemValue"><xsd:sequence><xsd:element name="CardItemValue" type="tns:CardItemValue" nillable="true" minOccurs="0" maxOccurs="unbounded"/></xsd:sequence></xsd:complexType><xsd:element name="ArrayOfCardItemValue" type="tns:ArrayOfCardItemValue" nillable="true"/><xsd:complexType name="CardItemValue"><xsd:sequence><xsd:element name="Code" type="xsd:int"/><xsd:element name="TestResult" type="xsd:int"/></xsd:sequence></xsd:complexType><xsd:element name="CardItemValue" type="tns:CardItemValue" nillable="true"/><xsd:complexType name="Vehicle"><xsd:sequence><xsd:element name="Make" type="xsd:string" nillable="true"/><xsd:element name="Model" type="xsd:string" nillable="true"/></xsd:sequence></xsd:complexType><xsd:element name="Vehicle" type="tns:Vehicle" nillable="true"/><xsd:complexType name="ArrayOfListItem"><xsd:sequence><xsd:element name="ListItem" type="tns:ListItem" nillable="true" minOccurs="0" maxOccurs="unbounded"/></xsd:sequence></xsd:complexType><xsd:element name="ArrayOfListItem" type="tns:ArrayOfListItem" nillable="true"/><xsd:complexType name="ListItem"><xsd:sequence><xsd:element name="Code" type="xsd:string"/><xsd:element name="Title" type="xsd:string"/></xsd:sequence></xsd:complexType><xsd:element name="ListItem" type="tns:ListItem" nillable="true"/></xsd:schema><xsd:schema targetNamespace="http://schemas.datacontract.org/2004/07/TechInspection.Domain.Enums" elementFormDefault="qualified"><xsd:simpleType name="FormType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Blank"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo></ xsd:annotation></xsd:enumeration><xsd:enumeration value="Certificate"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appi nfo></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="FormType" type="tns:FormType" nillable="true"/><xsd:simpleType name="TestResult"><xsd:restriction base="xsd:string"><xsd:enumeration value="Passed"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo>< /xsd:annotation></xsd:enumeration><xsd:enumeration value="NotPassed"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinf 42 o></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="TestResult" type="tns:TestResult" nillable="true"/><xsd:simpleType name="TestType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Primary"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo> </xsd:annotation></xsd:enumeration><xsd:enumeration value="Secondary"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="TestType" type="tns:TestType" nillable="true"/><xsd:simpleType name="RegistrationDocumentType"><xsd:restriction base="xsd:string"><xsd:enumeration value="RegTalon"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo ></xsd:annotation></xsd:enumeration><xsd:enumeration value="PTS"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo></xs d:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="RegistrationDocumentType" type="tns:RegistrationDocumentType" nillable="true"/><xsd:simpleType name="RegistrationDocumentForeign"><xsd:restriction base="xsd:string"><xsd:enumeration value="Y"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo></xsd: annotation></xsd:enumeration><xsd:enumeration value="N"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo></xsd: annotation></xsd:enumeration><xsd:enumeration value="NULL"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo></x sd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="RegistrationDocumentForeign" type="tns:RegistrationDocumentForeign" nillable="true"/><xsd:simpleType name="FuelType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Petrol"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appinfo>< /xsd:annotation></xsd:enumeration><xsd:enumeration value="Diesel"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinfo>< /xsd:annotation></xsd:enumeration><xsd:enumeration value="PressureGas"><xsd:annotation><xsd:appinfo><EnumerationValue>3</EnumerationValue></xsd:appi nfo></xsd:annotation></xsd:enumeration><xsd:enumeration value="LiquefiedGas"><xsd:annotation><xsd:appinfo><EnumerationValue>4</EnumerationValue></xsd:app info></xsd:annotation></xsd:enumeration><xsd:enumeration value="None"><xsd:annotation><xsd:appinfo><EnumerationValue>5</EnumerationValue></xsd:appinfo></x sd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="FuelType" type="tns:FuelType" nillable="true"/><xsd:simpleType name="BrakingSystemType"><xsd:restriction base="xsd:string"><xsd:enumeration value="Mechanical"><xsd:annotation><xsd:appinfo><EnumerationValue>1</EnumerationValue></xsd:appin fo></xsd:annotation></xsd:enumeration><xsd:enumeration value="Hydraulic"><xsd:annotation><xsd:appinfo><EnumerationValue>2</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration><xsd:enumeration value="Pneumatic"><xsd:annotation><xsd:appinfo><EnumerationValue>3</EnumerationValue></xsd:appinf o></xsd:annotation></xsd:enumeration><xsd:enumeration value="Combined"><xsd:annotation><xsd:appinfo><EnumerationValue>4</EnumerationValue></xsd:appinfo ></xsd:annotation></xsd:enumeration><xsd:enumeration value="None"><xsd:annotation><xsd:appinfo><EnumerationValue>5</EnumerationValue></xsd:appinfo></x sd:annotation></xsd:enumeration></xsd:restriction></xsd:simpleType><xsd:element name="BrakingSystemType" type="tns:BrakingSystemType" nillable="true"/></xsd:schema><xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/"><xsd:element name="anyType" nillable="true" type="xsd:anyType"/><xsd:element name="anyURI" nillable="true" type="xsd:anyURI"/><xsd:element name="base64Binary" nillable="true" type="xsd:base64Binary"/><xsd:element name="boolean" nillable="true" type="xsd:boolean"/><xsd:element name="byte" nillable="true" type="xsd:byte"/><xsd:element name="dateTime" nillable="true" type="xsd:dateTime"/><xsd:element name="decimal" nillable="true" type="xsd:decimal"/><xsd:element name="double" nillable="true" type="xsd:double"/><xsd:element name="float" nillable="true" type="xsd:float"/><xsd:element name="int" nillable="true" type="xsd:int"/><xsd:element name="long" nillable="true" type="xsd:long"/><xsd:element name="QName" nillable="true" type="xsd:QName"/><xsd:element name="short" nillable="true" type="xsd:short"/><xsd:element name="string" nillable="true" type="xsd:string"/><xsd:element name="unsignedByte" nillable="true" type="xsd:unsignedByte"/><xsd:element name="unsignedInt" nillable="true" type="xsd:unsignedInt"/><xsd:element name="unsignedLong" nillable="true" type="xsd:unsignedLong"/><xsd:element name="unsignedShort" nillable="true" type="xsd:unsignedShort"/><xsd:element name="char" nillable="true" type="tns:char"/><xsd:simpleType name="char"><xsd:restriction base="xsd:int"/></xsd:simpleType><xsd:element name="duration" nillable="true" type="tns:duration"/><xsd:simpleType name="duration"><xsd:restriction base="xsd:duration"><xsd:pattern value="\?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?"/><xsd:minInclusive value="P10675199DT2H48M5.4775808S"/><xsd:maxInclusive value="P10675199DT2H48M5.4775807S"/></xsd:restriction></xsd:simpleType><xsd:element name="guid" nillable="true" type="tns:guid"/><xsd:simpleType name="guid"><xsd:restriction base="xsd:string"><xsd:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}[\da-fA-F]{12}"/></xsd:restriction></xsd:simpleType><xsd:attribute name="FactoryType" type="xsd:QName"/><xsd:attribute name="Id" type="xsd:ID"/><xsd:attribute name="Ref" type="xsd:IDREF"/></xsd:schema></wsdl:types><wsdl:message name="IInspection_ChangeCard_InputMessage"><wsdl:part name="parameters" element="tns:ChangeCard"/></wsdl:message><wsdl:message name="IInspection_ChangeCard_OutputMessage"><wsdl:part name="parameters" element="tns:ChangeCardResponse"/></wsdl:message><wsdl:message name="IInspection_UnregisterCard_InputMessage"><wsdl:part name="parameters" element="tns:UnregisterCard"/></wsdl:message><wsdl:message name="IInspection_UnregisterCard_OutputMessage"><wsdl:part name="parameters" element="tns:UnregisterCardResponse"/></wsdl:message><wsdl:portType name="IInspection"><wsdl:operation name="ChangeCard"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/ChangeCard" message="tns:IInspection_ChangeCard_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IInspection/ChangeCardResponse" message="tns:IInspection_ChangeCard_OutputMessage"/></wsdl:operation><wsdl:operation name="UnregisterCard"><wsdl:input wsaw:Action="http://tempuri.org/IInspection/UnregisterCard" message="tns:IInspection_UnregisterCard_InputMessage"/><wsdl:output 43 wsaw:Action="http://tempuri.org/IInspection/UnregisterCardResponse" message="tns:IInspection_UnregisterCard_OutputMessage"/></wsdl:operation></wsdl:portType><wsdl:bi nding name="IInspection" type="tns:IInspection"><soap:binding transport="http://schemas.xmlsoap.org/soap/http"/><wsdl:operation name="ChangeCard"><soap:operation soapAction="http://tempuri.org/IInspection/ChangeCard" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation><wsdl:operation name="UnregisterCard"><soap:operation soapAction="http://tempuri.org/IInspection/UnregisterCard" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service name="Inspection"><wsdl:port name="IInspection" binding="tns:IInspection"><soap:address location="http://eaisto.gibdd.ru/common/ws/arm_operator.php"/></wsdl:port></wsdl:service></wsdl:d efinitions> 44