GetCountryChangesList

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску

Общие сведения

Операция GetCountryChangesList предназначена для получения истории изменений в списке стран. Выполнение операции заканчивается возвратом списка стран, в который попадают записи, дата изменения которых принадлежит временному интервалу, указанному в запросе. В список попадут все версии записей, которые изменялись в течение указанного интервала, то есть могут присутствовать не последние и/или не актуальные записи. Выполнение операции заканчивается либо возвратом списка стран, либо ошибкой, в случае если параметры запроса не корректны или произошла иная ошибка выполнения запроса. Операция поддерживает возможность частичного вывода списка.

Используемые пространства имён и типы


Входные данные

  • параметры выводимого списка.
  • временной интервал.

Выходные данные

  • список записей стран, изменённых за период. Выводятся все записи, в том числе не активные и не последние.

Данные запроса

Объект getCountryChangesListRequest

Корневой объект запроса. Содержит параметры запрашиваемого списка.

Поле Описание Тип данных Обязательность
listOptions Параметры возвращаемого списка: количество элементов и смещение. bs:ListOptions 0..1
updateDateinterval Интервал дат, за который запрашиваются изменения. bs:DateInterval 1

Объект ..Request/listOptions

Объект содержит два параметра запрашиваемого списка: количество выводимых объектов и смещение относительно начала.

Поле Описание Тип данных Обязательность
count Количество значений в списке
  • По умолчанию значение равно 100;
  • Максимально допустимое значение равно 1000.
xs:nonNegativeInteger 0..1
offset Смещение в списке относительно начала. xs:nonNegativeInteger 0..1

Объект ..Request/updateDateInterval

Объект содержит сведения об интервале времени, за который необходимо получить обновления.

Поле Описание Тип Обязательность
beginDate Дата, начиная с которой пользователь получит историю изменений записей стран. xs:dateTime 1
endDate Конец временного интервала.
  • В случае, если компонента endDate не указана, то используется текущая дата.
xs:dateTime 0..1

Данные ответа

Объект getCountryChangesListResponse

Корневой объект ответа. Содержит список возвращаемых стран.

Поле Описание Тип данных Обязательность
countryList Объект, содержащий запрашиваемый список стран. ikar:CountryList 1

Объект ..Response/countryList

Объект содержит список стран.

Поле Описание Тип данных Обязательность
country Объект содержит информацию о стране. ikar:Country 0..*

Атрибуты списка countryList

Атрибут Описание Тип данных Обязательность
count Размер списка, передаваемого в ответе на запрос. xs:int 1
total Размер всего списка, удовлетворяющего запросу. xs:long 1
offset Смещение первого элемента передаваемого списка во всем списке результатов, удовлетворяющих запросу. xs:int 1

Объект ..Response/countryList/country

Объект содержит информацию о стране.

Поле Описание Тип данных Обязательность
UUID Идентификатор версии записи о стране в реестре системы Икар. bs:UUID 1
GUID Глобальный идентификатор страны в реестре системы Икар. bs:UUID 1
active Флаг, указывающий активна ли запись. xs:boolean 1
last Флаг, указывающий, является ли версия записи последней. xs:boolean 1
status Статус записи. bs:VersionStatus 1
createDate Дата создания записи. xs:date 1
updateDate Дата обновления записи. xs:date 1
previous Идентификатор предыдущей версии записи. bs:UUID 0..1
next Идентификатор следующей версии записи. bs:UUID 0..1
name Название страны (например, Белоруссия). xs:string 1
fullName Полное название страны (например, Республика Беларусь). xs:string 1
englishName Название страны на английском языке. xs:string 1
code Двухбуквенный код страны в соответствии со стандартом ISO 3166-1 alpha-2. xs:string 1
code3 Трёхбуквенный код страны в соответствии со стандартом ISO 3166-1 alpha-3. xs:string 1

Описание возможных ошибок

Ошибка Описание
InternalServiceFault Внутренняя ошибка сервиса.
IncorrectRequestFault Некорректный запрос. Возникает, если запрос не соответствует требованиям указанным в xsd.
OffsetOutOfRangeFault Заданный в запросе отступ больше числа записей в результате запроса.

Примеры запросов

Запрос первых трёх изменённых стран с 1.01.2013 по текущую дату без смещения.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ws="http://api.vetrf.ru/schema/cdm/ikar/ws-definitions" 
                  xmlns:base="http://api.vetrf.ru/schema/cdm/base">
  <soapenv:Header/>
  <soapenv:Body>
    <ws:getCountryChangesListRequest>
      <base:listOptions>
        <base:count>3</base:count>
        <base:offset>0</base:offset>
      </base:listOptions>
      <base:updateDateInterval>
        <base:beginDate>2013-01-01</base:beginDate>
        <base:endDate></base:endDate>
      </base:updateDateInterval>
    </ws:getCountryChangesListRequest>
  </soapenv:Body>
</soapenv:Envelope>


Ответ на запрос.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
  <SOAP-ENV:Body xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <ws:getCountryChangesListResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base" 
                                      xmlns:ikar="http://api.vetrf.ru/schema/cdm/ikar" 
                                      xmlns:ws="http://api.vetrf.ru/schema/cdm/ikar/ws-definitions">
      <ikar:countryList count="3" total="6" offset="0">
        <ikar:country>
          <bs:uuid>8fc2b7bd-6d1c-4172-ae87-d27c69e5d9b9</bs:uuid>
          <bs:guid>cac8a802-3c65-397d-895d-c0495bf6ea61</bs:guid>
          <bs:active>true</bs:active>
          <bs:last>true</bs:last>
          <bs:status>200</bs:status>
          <bs:createDate>2013-11-01T11:37:11+04:00</bs:createDate>
          <bs:updateDate>2013-11-01T11:37:11+04:00</bs:updateDate>
          <bs:previous>91134526-4373-ec59-4a1e-e0e99bd50b7b</bs:previous>
          <ikar:name>Соединенные Штаты Америки</ikar:name>
          <ikar:fullName>Соединенные Штаты Америки</ikar:fullName>
          <ikar:englishName>United States</ikar:englishName>
          <ikar:code>US</ikar:code>
          <ikar:code3>USA</ikar:code3>
        </ikar:country>
        <ikar:country>
          <bs:uuid>91134526-4373-ec59-4a1e-e0e99bd50b7b</bs:uuid>
          <bs:guid>cac8a802-3c65-397d-895d-c0495bf6ea61</bs:guid>
          <bs:active>false</bs:active>
          <bs:last>false</bs:last>
          <bs:status>100</bs:status>
          <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
          <bs:updateDate>2013-11-01T11:37:11+04:00</bs:updateDate>
          <bs:next>8fc2b7bd-6d1c-4172-ae87-d27c69e5d9b9</bs:next>
          <ikar:name>Соединенные Штаты</ikar:name>
          <ikar:fullName>Соединенные Штаты Америки</ikar:fullName>
          <ikar:englishName>United States</ikar:englishName>
          <ikar:code>US</ikar:code>
          <ikar:code3>USA</ikar:code3>
        </ikar:country>
        <ikar:country>
          <bs:uuid>0337a6ef-12c6-432d-af81-34e8156467c4</bs:uuid>
          <bs:guid>d13b7f26-82b6-4591-c1de-eb19e75671ea</bs:guid>
          <bs:active>true</bs:active>
          <bs:last>true</bs:last>
          <bs:status>200</bs:status>
          <bs:createDate>2016-01-22T10:40:36+03:00</bs:createDate>
          <bs:updateDate>2016-01-22T10:40:36+03:00</bs:updateDate>
          <bs:previous>cf24604d-f6db-822c-203e-1ad25572e48b</bs:previous>
          <ikar:name>Киргизия</ikar:name>
          <ikar:fullName>Киргизская Республика</ikar:fullName>
          <ikar:englishName>Kyrgyzstan</ikar:englishName>
          <ikar:code>KG</ikar:code>
          <ikar:code3>KGZ</ikar:code3>
        </ikar:country>
      </ikar:countryList>
    </ws:getCountryChangesListResponse>
  </SOAP-ENV:Body>
</soapenv:Envelope>


Запрос первых пяти изменённых стран с 9.08.2012 по 24.06.2013 со смещением, равным двум.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ws="http://api.vetrf.ru/schema/cdm/ikar/ws-definitions" 
                  xmlns:base="http://api.vetrf.ru/schema/cdm/base">
  <soapenv:Header/>
  <soapenv:Body>
    <ws:getCountryChangesListRequest>
      <base:listOptions>
        <base:count>5</base:count>
        <base:offset>2</base:offset>
      </base:listOptions>
      <base:updateDateInterval>
        <base:beginDate>2012-08-09</base:beginDate>
        <base:endDate>2013-06-24</base:endDate>
      </base:updateDateInterval>
    </ws:getCountryChangesListRequest>
  </soapenv:Body>
</soapenv:Envelope>


Ответ на запрос.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"/>
   <SOAP-ENV:Body xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
      <ws:getCountryChangesListResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base" xmlns:ikar="http://api.vetrf.ru/schema/cdm/ikar" xmlns:ws="http://api.vetrf.ru/schema/cdm/ikar/ws-definitions">
         <ikar:countryList count="5" total="287" offset="2">
            <ikar:country>
               <bs:uuid>02a83370-bde0-1daf-8006-459678bfe86e</bs:uuid>
               <bs:guid>867e4d97-ce6d-d352-e56c-ae9d7dc29561</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
               <bs:updateDate>2012-08-09T09:48:36+04:00</bs:updateDate>
               <ikar:name>Маврикий</ikar:name>
               <ikar:fullName>Республика Маврикий</ikar:fullName>
               <ikar:englishName>Mauritius</ikar:englishName>
               <ikar:code>MU</ikar:code>
               <ikar:code3>MUS</ikar:code3>
            </ikar:country>
            <ikar:country>
               <bs:uuid>03630ac0-5bf9-5706-ff7b-d5279cf9feab</bs:uuid>
               <bs:guid>05fea6a1-fdb9-ee3c-9ce8-c672760e8005</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
               <bs:updateDate>2012-08-09T09:48:36+04:00</bs:updateDate>
               <ikar:name>Сент-Люсия</ikar:name>
               <ikar:fullName/>
               <ikar:englishName>Saint Lucia</ikar:englishName>
               <ikar:code>LC</ikar:code>
               <ikar:code3>LCA</ikar:code3>
            </ikar:country>
            <ikar:country>
               <bs:uuid>03b55a0b-19ff-14a8-4100-ec5fbc1f9488</bs:uuid>
               <bs:guid>11dc3f27-465b-a30a-bd2c-335735257fc3</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
               <bs:updateDate>2012-08-09T09:48:36+04:00</bs:updateDate>
               <ikar:name>Токелау</ikar:name>
               <ikar:fullName/>
               <ikar:englishName>Tokelau</ikar:englishName>
               <ikar:code>TK</ikar:code>
               <ikar:code3>TKL</ikar:code3>
            </ikar:country>
            <ikar:country>
               <bs:uuid>041cf5ea-b322-437e-8eb1-fb503ef07fea</bs:uuid>
               <bs:guid>e89332ff-c36a-4363-bf78-317535da19e5</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
               <bs:updateDate>2012-08-09T09:48:36+04:00</bs:updateDate>
               <ikar:name>Джерси</ikar:name>
               <ikar:fullName/>
               <ikar:englishName>Jersey</ikar:englishName>
               <ikar:code>JE</ikar:code>
               <ikar:code3>JEY</ikar:code3>
            </ikar:country>
            <ikar:country>
               <bs:uuid>052b29f6-133e-68f0-46aa-7e60fc0a37f8</bs:uuid>
               <bs:guid>82302d5c-a868-c0b6-d516-9f8e9ce6277d</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2012-08-09T09:48:36+04:00</bs:createDate>
               <bs:updateDate>2012-08-09T09:48:36+04:00</bs:updateDate>
               <ikar:name>Парагвай</ikar:name>
               <ikar:fullName>Республика Парагвай</ikar:fullName>
               <ikar:englishName>Paraguay</ikar:englishName>
               <ikar:code>PY</ikar:code>
               <ikar:code3>PRY</ikar:code3>
            </ikar:country>
         </ikar:countryList>
      </ws:getCountryChangesListResponse>
   </SOAP-ENV:Body>
</soapenv:Envelope>