FindStreetListByName: различия между версиями

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


Операция FindStreetListByName предназначена для получения списка активных записей улиц (active=true, last=true) по идентификатору населённого пункта и названию или его части. Выполнение операции заканчивается либо возвратом списка улиц, либо ошибкой, в случае если параметры запроса не корректны или произошла иная ошибка выполнения запроса.
Операция FindStreetListByName предназначена для получения списка активных записей улиц (active=true, last=true) по идентификатору населённого пункта и названию улицы или его части. Выполнение операции заканчивается либо возвратом списка улиц, либо ошибкой, в случае если параметры запроса не корректны или произошла иная ошибка выполнения запроса.


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

Версия 15:03, 1 ноября 2016

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

Операция FindStreetListByName предназначена для получения списка активных записей улиц (active=true, last=true) по идентификатору населённого пункта и названию улицы или его части. Выполнение операции заканчивается либо возвратом списка улиц, либо ошибкой, в случае если параметры запроса не корректны или произошла иная ошибка выполнения запроса.

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


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

Объект findStreetListByNameRequest

Корневой объект запроса. Содержит параметры запрашиваемого списка, название населённого пункта или его часть и идентификатор региона.

Поле Описание Тип данных Обязательность
listOptions Параметры возвращаемого списка: количество элементов и смещение. bs:ListOptions 0..1
localityGuid Идентификатор региона. bs:UUID 1
pattern Часть названия или название улицы. bs:String255 1

Объект ..Request/listOptions

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

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

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

Объект findStreetListByNameResponse

Корневой объект ответа. Содержит список улиц, соответствующих условиям отбора.

Поле Описание Тип данных Обязательность
streetList Объект содержит улиц указанного населённого пункта. ikar:StreetList 1

Объект ..Response/streetList

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

Поле Описание Тип данных Обязательность
street Данные улицы. ikar:Street 1..*

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

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

Объект ..Response/streetList/street

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

Поле Описание Тип данных Обязательность
UUID Уникальный идентификатор версии записи в реестре системы Икар. bs:UUID 1
GUID Глобальный уникальный идентификатор записи в реестре системы Икар. bs:UUID 1
active Флаг, указывающий активна ли запись. xs:boolean 1
previous Флаг, указывающий наличие предыдущей записи. xs:boolean 0..1
last Флаг, указывающий, является ли версия записи последней. xs:boolean 1
status Статус версии записи. bs:VersionStatus 1
createDate Дата создания записи. xs:date 1
updateDate Дата обновления записи. Если запись не обновлялась, то указывается значение createDate. xs:date 1
name Название улицы. xs:string 1
view Представление объекта. Обычно это название + его тип
  • Например: ул.Ленина.
bs:String255 1
regionCode Код региона
  • Например: 33 (код Владимирской области).
xs:string 1
type Сокращённое название адресного типа
  • Например, ул.
bs:String255 1
hasStreets Флаг, указывающий на наличие улиц. xs:boolean 1

Описание ошибок

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


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

Запрос первых трёх г.Москвы, в названии которых есть слово "Большая"

<codeblock language="xml" class = "mw-collapsible"> <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" 
                 xmlns:ikar="http://api.vetrf.ru/schema/cdm/ikar">
  <soapenv:Header/>
  <soapenv:Body>
     <ws:findStreetListByNameRequest>
        <base:listOptions>
           <base:count>3</base:count>
           <base:offset>0</base:offset>
        </base:listOptions>
        <ikar:localityGuid>0c5b2444-70a0-4932-980c-b4dc0d3f02b5</ikar:localityGuid>
        <ws:pattern>Большая</ws:pattern>
     </ws:findStreetListByNameRequest>
  </soapenv:Body>

</soapenv:Envelope> </syntaxhighlight>


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

<codeblock language="xml" class = "mw-collapsible"> <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:findStreetListByNameResponse 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:streetList count="3" total="43" offset="0">
       <ikar:street>
         <bs:uuid>65d8bd2a-5b3a-4154-8025-7385896b034b</bs:uuid>
         <bs:guid>2e89a0be-57e5-4759-b198-d469886c8cc9</bs:guid>
         <bs:active>true</bs:active>
         <bs:last>true</bs:last>
         <bs:status>100</bs:status>
         <bs:createDate>1900-01-01T00:00:00+03:00</bs:createDate>
         <bs:updateDate>2012-08-30T00:00:00+04:00</bs:updateDate>
         <ikar:name>Большая Академическая</ikar:name>
         <ikar:view>Большая Академическая ул.</ikar:view>
         <ikar:regionCode>77</ikar:regionCode>
         <ikar:type>ул.</ikar:type>
         <ikar:hasStreets>false</ikar:hasStreets>
       </ikar:street>
       <ikar:street>
         <bs:uuid>4131711f-c2b8-47b8-ab43-9fe5db14d35d</bs:uuid>
         <bs:guid>907d69bf-a9b0-45f1-93d4-4c79ddf64917</bs:guid>
         <bs:active>true</bs:active>
         <bs:last>true</bs:last>
         <bs:status>100</bs:status>
         <bs:createDate>1900-01-01T00:00:00+03:00</bs:createDate>
         <bs:updateDate>2011-09-14T00:00:00+04:00</bs:updateDate>
         <ikar:name>Большая Андроньевская</ikar:name>
         <ikar:view>Большая Андроньевская ул.</ikar:view>
         <ikar:regionCode>77</ikar:regionCode>
         <ikar:type>ул.</ikar:type>
         <ikar:hasStreets>false</ikar:hasStreets>
       </ikar:street>
       <ikar:street>
         <bs:uuid>e77ed95d-39cc-4e3e-87ce-d41bc7a20921</bs:uuid>
         <bs:guid>97634277-3726-4e9a-ab41-f656b6b72900</bs:guid>
         <bs:active>true</bs:active>
         <bs:last>true</bs:last>
         <bs:status>100</bs:status>
         <bs:createDate>1900-01-01T00:00:00+03:00</bs:createDate>
         <bs:updateDate>2011-09-14T00:00:00+04:00</bs:updateDate>
         <ikar:name>Большая</ikar:name>
         <ikar:view>Большая ул.</ikar:view>
         <ikar:regionCode>77</ikar:regionCode>
         <ikar:type>ул.</ikar:type>
         <ikar:hasStreets>false</ikar:hasStreets>
       </ikar:street>
     </ikar:streetList>
   </ws:findStreetListByNameResponse>
 </SOAP-ENV:Body>

</soapenv:Envelope> </syntaxhighlight>