Herriot:RegisterAnimal:v1.0

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

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

Код Описание операции
AMS.HRT.1.1 Операция предназначена для подачи заявки на регистрацию учётной карточки животного или группы животных, включая сведения об идентификации животного, ввозе на территорию РФ, текущем содержании, потомстве.

Сценарии операции

Регистрация индивидуального животного

  1. В случае регистрации индивидуального животного в запросе должен быть передан объект specifiedAnimal.
  2. Объект specifiedAnimalGroup должен отсутствовать. Если необходимо привязать индивидуальное животное к зарегистрированной группе или группам, то для этого используется объект membershipInfo.

Регистрация группы животных

  1. В случае регистрации группы животных в запросе должен быть передан объект specifiedAnimalGroup.
  2. Объект specifiedAnimal должен отсутствовать. Если необходимо включить в состав группы зарегистрированных индивидуальных животных, то для этого используется объект unitInfo.

Ограничения

  1. Учёт животных в компоненте Хорриот возможен только на поднадзорном объекте (ПО), идентификатор которого передаётся в параметре ../animalRegistration/keepingDetails/operatorSupervisedObject/guid из справочника ES.HRT.2. Реестр поднадзорных объектов.
  2. Поднадзорный объект (ПО), на котором возможен учёт животных в компоненте Хорриот, должен удовлетворять следующим условиям:
    1. Статус ПО в реестре Цербер "Подтвержден" (объект ../supervisedObject/registryStatus == VERIFIED).
    2. Вид ПО (справочник ES.HRT.2.5) входит в список разрешенных видов (объект ../supervisedObject/objectType).
    3. Вид деятельности ПО (справочник ES.HRT.2.4) входит в список разрешенных видов деятельности (объект ../supervisedObject/activity).

Массовая регистрация животных

В случае массовой регистрации животных возможно образование большого количество перекрестных связей различных учётных карточек животных или групп животных между собой (сведения о членстве животных в группах, сведения о составе групп животных, сведения о родословной). Таким образом возникает необходимость соблюдения строгого порядка отправки запросов на регистрацию и ожидания ответов, чтобы построить все необходимые связи (например, родителей животного необходимо зарегистрировать раньше самого этого животного), что может создать определённые трудности при регистрации большого количества животных и групп животных.


Чтобы упростить процесс создания связей при массовой регистрации животных, предусмотрено два варианта передачи сведений:

  1. Использование внешних идентификаторов учётной системы - в этом случае порядок отправки запросов не важен, регистрация карточки завершится только после того, как будут переданы все прочие карточки животных, которые связаны с текущей.
  2. Использование идентификаторов компонента Хорриот - в этом случае важно соблюдать порядок отправки запросов, чтобы используемые в текущей карточке связи были уже зарегистрированы в компоненте Хорриот ранее.

Интеграционные решения могут использовать как один из этих вариантов, так и их комбинирование в зависимости от внутренних процессов и объёмов данных.

Использование идентификаторов внешней системы для построения связей

Предусловия:

  1. На стороне внешней системы должен быть аналог учётной карточки животного (группы животных) со своим уникальным идентификатором вида UUID.
  2. На стороне внешней системы должны быть организованы все связи между различными учётными карточками.

Общая схема процесса:

  1. Каждый запрос на регистрацию учётной карточки обязательно содержит внешний идентификатор из предусловия, который передаётся с помощью связанного документа с типом 55 (объект ../animalRegistration/referencedDocument).
  2. При формировании новых запросов на регистрацию в зависимости от требуемой связи данный идентификатор передаётся в соответствующем связанном документе с тем же типом 55:
    1. для родословной: ../animalRegistration/pedigreeInfo/parent/referencedDocument/uuid;
    2. для состава группы: ../animalRegistration/unitInfo/individualMember/referencedDocument/uuid;
    3. для членства в группах: ../animalRegistration/membershipInfo/parentGroup/referencedDocument/uuid.
  3. Все запросы с подобной организацией связей могут быть отправлены параллельно в любом порядке.
  4. Если в переданном запросе содержатся сведения о ещё незарегистрированных животных (группах животных), то в компоненте Хорриот будет создана учётная карточка в статусе PREPARING (в обработке).
  5. Как только будут обработаны параллельные запросы, в которых содержатся все необходимые для текущей карточки сведения, то компонент Хорриот зарегистрирует все связи, а учётная карточка перейдёт в статус ACTIVE (действующая учётная карточка).


Примеры передачи внешних идентификаторов

...
	<!-- Родословная -->	
      <vd:pedigreeInfo>
         <vd:parent>
            <vd:referencedDocument>
               <bs:uuid>65902137-ff15-494e-845d-d7eed68e363b</bs:uuid>
               <vd:type>55</vd:type>
               <vd:relationshipType>6</vd:relationshipType>
            </vd:referencedDocument>
         </vd:parent>
		 <vd:parent>
            <vd:referencedDocument>
               <bs:uuid>81f07799-aa4b-4f11-a8dc-ff42873ade59</bs:uuid>
               <vd:type>55</vd:type>
               <vd:relationshipType>6</vd:relationshipType>
            </vd:referencedDocument>
         </vd:parent>
      </vd:pedigreeInfo>

	<!-- Сведения о составе группы -->
      <vd:unitInfo>
         <vd:individualMember>
            <vd:referencedDocument>
               <bs:uuid>22e39540-6889-45ee-9505-3c7f6f5746db</bs:uuid>
               <vd:type>55</vd:type>
               <vd:relationshipType>6</vd:relationshipType>
            </vd:referencedDocument>
         </vd:individualMember>
		 <vd:individualMember>
            <vd:referencedDocument>
               <bs:uuid>357c48c4-522e-47a4-b754-881d18d8ec67</bs:uuid>
               <vd:type>55</vd:type>
               <vd:relationshipType>6</vd:relationshipType>
            </vd:referencedDocument>
         </vd:individualMember>
      </vd:unitInfo>
	
	<!-- Сведения о членстве в группах -->
      <vd:membershipInfo>
         <vd:parentGroup>
            <vd:referencedDocument>
               <bs:uuid>2cbd008e-6439-4e9a-a2d2-60045216c5f6</bs:uuid>
               <vd:type>55</vd:type>
               <vd:relationshipType>6</vd:relationshipType>
            </vd:referencedDocument>
         </vd:parentGroup>
		 <vd:parentGroup>
            <vd:referencedDocument>
               <bs:uuid>4d3277d0-7ba5-4731-a73d-5df7d756e7ce</bs:uuid>
               <vd:type>55</vd:type>
               <vd:relationshipType>6</vd:relationshipType>
            </vd:referencedDocument>
         </vd:parentGroup>
      </vd:membershipInfo>
...


Использование идентификаторов учетных карточек компонента Хорриот для построения связей

Общая схема процесса:

  1. Каждый запрос на регистрацию учётной карточки формируется и отправляется в строгом порядке таким образом, чтобы все сведения, требуемые для последующих запросов, были уже зарегистрированы в компоненте Хорриот.
  2. После отправки каждого запроса необходимо ожидать окончания регистрации и ответа с идентификатором карточки компонента Хорриот (../animalRegistration/guid).
  3. При формировании новых запросов на регистрацию в зависимости от требуемой связи данный идентификатор передаётся в соответствующем объекте:
    1. для родословной: ../animalRegistration/pedigreeInfo/parent/guid;
    2. для состава группы: ../animalRegistration/unitInfo/individualMember/guid;
    3. для членства в группах: ../animalRegistration/membershipInfo/parentGroup/guid.


Примеры передачи идентификаторов компонента Хорриот

...
	<!-- Родословная -->	
      <vd:pedigreeInfo>
         <vd:parent>
			<bs:guid>a80af715-3f45-4ea6-828a-77859a78bf0e</bs:guid>
         </vd:parent>
		 <vd:parent>
			<bs:guid>2982b8b2-3f97-4b37-a7e6-2fe19fcf51c3</bs:guid>
         </vd:parent>
      </vd:pedigreeInfo>

	<!-- Сведения о составе группы -->
      <vd:unitInfo>
         <vd:individualMember>
			<bs:guid>07b613f8-c0a0-4845-8f08-354585c4779f</bs:guid>
         </vd:individualMember>
		 <vd:individualMember>
			<bs:guid>eccffd43-069e-4810-9cc2-cde4ed44d7f3</bs:guid>
         </vd:individualMember>
      </vd:unitInfo>
	
	<!-- Сведения о членстве в группах -->
      <vd:membershipInfo>
         <vd:parentGroup>
			<bs:guid>e23a5f70-1fc2-4e3e-a48f-862977f66c9d</bs:guid>
         </vd:parentGroup>
		 <vd:parentGroup>
			<bs:guid>40dc684f-a768-414d-9131-a2d72c5b096a</bs:guid>
         </vd:parentGroup>
      </vd:membershipInfo>
...


Спецификация запроса

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <hrt:registerAnimalRequest>
002 ···<hrt:localTransactionId>?</hrt:localTransactionId> bs:Identifier [1..1] Идентификатор заявки в клиентской системе
003 ···<hrt:initiator> vd:User [1..1]

Пользователь, зарегистрированный в ВетИС, инициирующий запрос

  • является ответственным за выполнение бизнес-операции
  • требуется логин ветврача или пользователя ХС, логин для базовой аутентификации не подойдёт
004 ······<vd:login>?</vd:login> xs:NCName [1..1] Логин пользователя
005 ···</hrt:initiator>
006 ···<hrt:animalRegistration> vd:AnimalRegistration [1..1] Сведения регистрации (учётная карточка) животного или группы животных
007 ······<vd:identityType>?</vd:identityType> vd:AnimalIdentityType [1..1]

Тип идентификации/учёта: индивидуальная/групповая

Возможные значения:

  • INDIVIDUAL - индивидуальная идентификация
  • GROUP - групповая идентификация
008 ······<vd:registrationStatus>?</vd:registrationStatus> vd:AnimalRegistrationStatus [1..1]

Статус учётной карточки животного (группы животных)

Возможные значения:

  • ACTIVE - регистрация действующих сведений о животных (значение по умолчанию)
  • TERMINATED - регистрация выбывших животных
009 ······<vd:initialIdentificationType>?</vd:initialIdentificationType> vd:AnimalIdentificationEventType [1..1]

Причина первичной идентификации: рождение, импорт, другое

Возможные значения:

  • BIRTH - рождение
  • IMPORT - импорт
  • OTHER - иная причина первичной идентификации
010 ······<vd:specifiedAnimal> dt:Animal [0..1]

Сведения о животном (в случае индивидуальной идентификации)

  • Обязательно должен быть передан один из объектов:
    • specifiedAnimal - для индивидуальной идентификации
    • specifiedAnimalGroup - для групповой идентификации
  • Одновременное наличие объектов specifiedAnimal и specifiedAnimalGroup не допускается
011 ·········<dt:species> dt:AnimalSpecies [1..1]

Биологический вид животного

012 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
013 ·········</dt:species>
014 ·········<dt:breed> dt:AnimalBreed [0..1]

Порода животного

015 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
016 ·········</dt:breed>
017 ·········<dt:colour> dt:AnimalColour [0..1] Масть/окрас животного
018 ············<dt:name>?</dt:name> bs:String255 [1..1] Наименование масти/кокраса животного
019 ·········</dt:colour>
020 ·········<dt:gender>?</dt:gender> dt:AnimalGender [1..1]

Пол животного

Возможные значения:

  • MALE - самец
  • FEMALE - самка
021 ·········<dt:name>?</dt:name> bs:String255 [0..1] Кличка животного
022 ·········<dt:weight> dt:Measure [0..1]

Вес животного

  • Возможность указания веса животных появится в будущих версиях системы Хорриот
  • На текущий момент объект будет проигнорирован в запросе
023 ············<dt:value>?</dt:value> bs:Decimal [1..1] Значение веса животного
024 ············<dt:unit> dt:Unit [1..1] Единица измерения
025 ···············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
026 ············</dt:unit>
027 ·········</dt:weight>
028 ·········<dt:birthDate> bs:ComplexDate [0..1] Дата рождения животного
029 ············<bs:year>?</bs:year> bs:Year [1..1] Год
030 ············<bs:month>?</bs:month> bs:Month [1..1] Месяц
031 ············<bs:day>?</bs:day> bs:Day [0..1] День
032 ·········</dt:birthDate>
033 ·········<dt:birthLocation> dt:AnimalKeepingLocation [0..1] Место рождения
034 ············<dt:supervisedObject> dt:SupervisedObject [1..1]

Поднадзорный объект

035 ···············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
036 ············</dt:supervisedObject>
037 ·········</dt:birthLocation>
038 ·········<dt:photo> bs:File [0..1] Фото животного
039 ············<bs:id>?</bs:id> bs:Identifier [1..1] Идентификатор загруженного файла
040 ·········</dt:photo>
041 ······</vd:specifiedAnimal>
042 ······<vd:specifiedAnimalGroup> dt:AnimalGroup [0..1]

Сведения о животном (в случае групповой идентификации)

  • Обязательно должен быть передан один из объектов:
    • specifiedAnimal - для индивидуальной идентификации
    • specifiedAnimalGroup - для групповой идентификации
  • Одновременное наличие объектов specifiedAnimal и specifiedAnimalGroup не допускается
043 ·········<dt:species> dt:AnimalSpecies [1..1]

Биологический вид животного

044 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
045 ·········</dt:species>
046 ·········<dt:breed> dt:AnimalBreed [0..1]

Порода животного

047 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
048 ·········</dt:breed>
049 ·········<dt:gender>?</dt:gender> dt:AnimalGender [1..1]

Пол животного

Возможные значения:

  • MALE - самец
  • FEMALE - самка
  • UNDEFINED - в составе группы разный пол животных
050 ·········<dt:size>?</dt:size> xs:nonNegativeInteger [1..1] Численность группы животных
051 ·········<dt:weight> dt:Measure [0..1]

Суммарный вес животных

  • Возможность указания веса животных появится в будущих версиях системы Хорриот
  • На текущий момент объект будет проигнорирован в запросе
052 ············<dt:value>?</dt:value> bs:Decimal [1..1] Значение веса животного
053 ············<dt:unit> dt:Unit [1..1] Единица измерения
054 ···············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
055 ············</dt:unit>
056 ·········</dt:weight>
057 ·········<dt:birthDatePeriod> bs:ComplexDatePeriod [0..1] Интервал дат рождения животных
058 ············<bs:startDate> bs:ComplexDate [1..1] Дата начала интервала
059 ···············<bs:year>?</bs:year> bs:Year [1..1] Год
060 ···············<bs:month>?</bs:month> bs:Month [1..1] Месяц
061 ···············<bs:day>?</bs:day> bs:Day [0..1] День
062 ············</bs:startDate>
063 ············<bs:endDate> bs:ComplexDate [1..1] Дата окончания интервала
064 ···············<bs:year>?</bs:year> bs:Year [1..1] Год
065 ···············<bs:month>?</bs:month> bs:Month [1..1] Месяц
066 ···············<bs:day>?</bs:day> bs:Day [0..1] День
067 ············</bs:endDate>
068 ·········</dt:birthDatePeriod>
069 ······</vd:specifiedAnimalGroup>
070 ······<vd:specifiedAnimalIdentity> vd:AnimalIdentity [1..*] Сведения об идентификации животного
071 ·········<vd:attachedLabel> dt:AnimalLabel [1..1] Сведения о маркировке животного
072 ············<dt:animalID format="?">?</dt:animalID> dt:AnimalID [0..1]

Номер, нанесенный на животное с помощью средства маркирования

  • Атрибут format - обязателен при передаче в запросе значения animalID
    • Возможные значения атрибута format:
      • UNMM - Формат Уникального номера средства маркирования (УНСМ) в соответствии с утвержденными Правилами маркирования животных РСХН
      • OTHER - Другой тип номера
  • Номер animalID обязателен для следующих типов средства маркирования:
    • LABEL - Бирка
    • MICROCHIP - Вживляемый микрочип
    • BOLUS - Болюс
    • RING - Кольцо
    • ELECTRONIC_RING - Электронное кольцо
    • COLLAR - Ошейник
    • ELECTRONIC_COLAR - Электронный ошейник
    • WING_TAG - Крыло-метка
    • ELECTRONIC_WING_TAG - Электронное крыло-метка
    • ELECTRONIC_TAG - Электронная метка
    • NAMEPLATE - Табло
073 ············<dt:type>?</dt:type> dt:AnimalLabelType [1..1]

Вид маркировки: основная/дополнительная

Возможные значения:

  • MAIN - основное средство маркирования
  • ADDITIONAL - дополнительное средство маркирования
074 ············<dt:markingMeans> dt:AnimalMarkingMeans [1..1] Cредство маркирования
075 ···············<dt:type>?</dt:type> dt:AnimalMarkingMeansType [1..1]

Тип средства маркирования

Возможные значения:

  • LABEL - Бирка
  • MICROCHIP - Вживляемый микрочип
  • BRAND - Тавро/Клеймо
  • TATTOO - Татуировка
  • BOLUS - Болюс
  • RING - Кольцо
  • ELECTRONIC_RING - Электронное кольцо
  • COLLAR - Ошейник
  • ELECTRONIC_COLAR - Электронный ошейник
  • WING_TAG - Крыло-метка
  • ELECTRONIC_WING_TAG - Электронное крыло-метка
  • ELECTRONIC_TAG - Электронная метка
  • TISSUE_SECTION - Вырез тканей
  • NAMEPLATE - Табло
076 ············</dt:markingMeans>
077 ············<dt:attachmentLocation> dt:AnimalMarkingLocation [1..1]

Место нанесения/прикрепления

078 ···············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
079 ············</dt:attachmentLocation>
080 ············<dt:description>?</dt:description> bs:String255 [0..1]

Описание средства маркирования

  • Обязательно для следующих типов средства маркирования:
    • BRAND (Тавро/Клеймо)
    • TATTOO (Татуировка)
    • TISSUE_SECTION - Вырез тканей
081 ············<dt:photo> bs:File [0..1]

Фото средства маркирования

  • Обязательно для следующих типов средства маркирования:
    • BRAND (Тавро/Клеймо)
    • TATTOO (Татуировка)
    • TISSUE_SECTION - Вырез тканей
082 ···············<bs:id>?</bs:id> bs:Identifier [1..1] Идентификатор загруженного файла
083 ············</dt:photo>
084 ·········</vd:attachedLabel>
085 ·········<vd:associatedMarkingEvent> vd:AnimalMarkingEvent [0..*] Сведения о нанесении / выбытии средства маркирования
086 ············<vd:type>?</vd:type> vd:VeterinaryEventType [1..1]

Тип мероприятия

Возможные значения:

  • AME - нанесение средства маркирования
  • AIR - выбытие средства маркирования
087 ············<vd:actualDate> bs:ComplexDatePeriod [1..1] Дата мероприятия
088 ···············<bs:date> bs:ComplexDate [1..1] Точное значение даты
089 ··················<bs:year>?</bs:year> bs:Year [1..1] Год
090 ··················<bs:month>?</bs:month> bs:Month [1..1] Месяц
091 ··················<bs:day>?</bs:day> bs:Day [0..1] День
092 ···············</bs:date>
093 ············</dt:actualDate>
094 ············<vd:operatorBusinessEntity> dt:BusinessEntity [0..1]

Сведения о физическом лице / организации, осуществлявшем мероприятие

095 ···············<bs:guid>?</bs:guid> bs:UUID [0..1] Глобальный идентификатор записи
096 ···············<dt:inn>?</dt:inn> bs:String255 [0..1] ИНН
097 ············</vd:operatorBusinessEntity>
098 ············<vd:occurrenceReason>?</vd:occurrenceReason> vd:AnimalMarkingEventReason [0..1]

Причина выбытия средства маркирования

  • Обязательно, если тип мероприятия - выбытие (type == AIR)
  • Возможные значения:
    • TERMINATED - Прекращение экплуатации средства маркирования по причине выбытия животного
    • LOSS - Средство маркирования утеряно
    • BROKEN - Средство маркирования повреждено (сломано)
    • EXPIRATION - Истёк срок действия средства маркирования
    • REMOVED - Средство маркирования удалено владельцем животного
099 ·········</vd:associatedMarkingEvent>
100 ······</vd:specifiedAnimalIdentity>
101 ······<vd:specifiedGeneticPassport> dt:AnimalGeneticPassport [0..1] Сведения о генетической идентификации
102 ·········<dt:data>?</dt:data> bs:String255 [1..1] Данные генетической идентификации
103 ·········<dt:conclusion>?</dt:conclusion> bs:String255 [1..1] Заключение по генетической идентификации
104 ······</vd:specifiedGeneticPassport>
105 ······<vd:importDetails> vd:AnimalImportDetails [0..1]

Данные о ввозе на территорию РФ

  • Обязательно, если причина первичной идентификации initialIdentificationType = IMPORT (импорт на территорию РФ)
106 ·········<vd:importDate> bs:ComplexDatePeriod [1..1] Дата ввоза
107 ············<bs:date> bs:ComplexDate [0..1] Точная дата
108 ···············<bs:year>?</bs:year> bs:Year [1..1] Год
109 ···············<bs:month>?</bs:month> bs:Month [1..1] Месяц
110 ···············<bs:day>?</bs:day> bs:Day [0..1] День
111 ············</bs:date>
112 ············<bs:startDate> bs:ComplexDate [0..1] Дата начала интервала
113 ···············<bs:year>?</bs:year> bs:Year [1..1] Год
114 ···············<bs:month>?</bs:month> bs:Month [1..1] Месяц
115 ···············<bs:day>?</bs:day> bs:Day [0..1] День
116 ············</bs:startDate>
117 ············<bs:endDate> bs:ComplexDate [0..1] Дата окончания интервала
118 ···············<bs:year>?</bs:year> bs:Year [1..1] Год
119 ···············<bs:month>?</bs:month> bs:Month [1..1] Месяц
120 ···············<bs:day>?</bs:day> bs:Day [0..1] День
121 ············</bs:endDate>
122 ·········</vd:importDate>
123 ·········<vd:importCountry> dt:Country [1..1]

Страна, из которой было ввезено животное (группа животных)

124 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
125 ·········</vd:importCountry>
126 ······</vd:importDetails>
127 ······<vd:keepingDetails> vd:AnimalKeepingDetails [1..1] Сведения о содержании животного (группы животных)
128 ·········<vd:operatorSupervisedObject> dt:SupervisedObject [1..1]

Место содержания (поднадзорный объект)

129 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
130 ·········</vd:operatorSupervisedObject>
131 ·········<vd:keepingType> dt:AnimalKeepingType [1..1]

Тип содержания животного (группы животных)

132 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
133 ·········</vd:keepingType>
134 ·········<vd:keepingPurpose> dt:AnimalKeepingPurpose [1..*]

Цель содержания животного (группы животных)

135 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
136 ·········</vd:keepingPurpose>
137 ·········<vd:facilityDescription>?</vd:facilityDescription> bs:String255 [0..1] Описание объекта (отделение, строение, корпус) содержания
138 ······</vd:keepingDetails>
139 ······<vd:breedingValueType>?</vd:breedingValueType> dt:AnimalBreedingValueType [1..1]

Племенная ценность

Возможные значения:

  • BREEDING - Племенное
  • NON_BREEDING - Неплеменное
  • UNDEFINED - Тип не определен
140 ······<vd:specifiedProductivity> dt:AnimalProductivity [0..*] Сведения о продуктивности животного (группы животных)
141 ·········<dt:subProduct> dt:SubProduct [1..1]

Вид получаемой продукции

142 ············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
143 ·········</dt:subProduct>
144 ·········<dt:output> dt:ComplexMeasure [1..1] Значение продуктивности животного по указанному виду продукции
145 ············<dt:value>?</dt:value> bs:Decimal [1..1] Значение
146 ············<dt:unit> dt:Unit [1..1]

Единица измерения

147 ···············<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
148 ············</dt:unit>
149 ·········</dt:output>
150 ······</vd:specifiedProductivity>
151 ······<vd:additionalAttribute> dt:UnmeasuredAttribute [0..*]

Дополнительные атрибуты учётной карточки

152 ·········<dt:attrID>?</dt:attrID> bs:Identifier [1..1] Идентификатор атрибута
153 ·········<dt:attrValue>?</dt:attrValue> bs:Text [1..1] Значение атрибута
154 ······</vd:additionalAttribute>
155 ······<vd:pedigreeInfo> vd:AnimalPedigreeInfo [0..1]

Сведения о родословной животного

  • Обязательно, если причина первичной идентификации initialIdentificationType = BIRTH (рождение)
156 ·········<vd:parent> vd:AnimalRegistration [1..*]

Идентификатор карточки учёта животного, являющегося родителем зарегистрированного животного

  • Обязательно использование одного из вариантов указания:
    • parent/guid - в случае, если учётная карточка была ранее успешно зарегистрирована в компоненте Хорриот и был получен её идентификатор (в этом случае объект referncedDocument не передаётся).
    • объект referncedDocument:
      • тип документа (type == 55);
      • идентификатор (uuid) - значение внешнего идентификатора документа, в котором содержатся сведения о данном животном, в случае параллельной отправки нескольких запросов на регистрацию, если ещё не был получен инедтификатор учётной карточки компонента Хорриот (подробнее: раздел "Массовая регистрация животных").
157 ············<bs:guid>?</bs:guid> bs:UUID [0..1] Идентификатор зарегистрированной карточки животного
158 ············<vd:referencedDocument> vd:ReferencedDocument [0..1] Сведения о связанном документе
159 ···············<bs:uuid>?</bs:uuid> bs:UUID [1..1] Идентификатор документа (значение внешнего идентификатора карточки)
160 ···············<vd:type>55</vd:type> dt:DocumentType [1..1] Тип документа (55 - внешний идентификатор карточки)
161 ···············<vd:relationshipType>6</vd:relationshipType> dt:ReferenceType [1..1] Тип связи документа
162 ············</vd:referencedDocument>
163 ·········</vd:parent>
164 ······</vd:pedigreeInfo>
165 ······<vd:unitInfo> vd:AnimalUnitInfo [0..1] Сведения об индивидуальных животных, входящих в состав группы
166 ·········<vd:individualMember> vd:AnimalRegistration [1..*]

Идентификатор карточки индивидуального учёта животного

  • Обязательно использование одного из вариантов указания:
    • parent/guid - в случае, если учётная карточка была ранее успешно зарегистрирована в компоненте Хорриот и был получен её идентификатор (в этом случае объект referncedDocument не передаётся).
    • объект referncedDocument:
      • тип документа (type == 55);
      • идентификатор (uuid) - значение внешнего идентификатора документа, в котором содержатся сведения о данном животном, в случае параллельной отправки нескольких запросов на регистрацию, если ещё не был получен инедтификатор учётной карточки компонента Хорриот (подробнее: раздел "Массовая регистрация животных").
167 ············<bs:guid>?</bs:guid> bs:UUID [0..1] Идентификатор зарегистрированной карточки животного
168 ············<vd:referencedDocument> vd:ReferencedDocument [0..1] Сведения о связанном документе
169 ···············<bs:uuid>?</bs:uuid> bs:UUID [1..1] Идентификатор документа (значение внешнего идентификатора карточки)
170 ···············<vd:type>55</vd:type> dt:DocumentType [1..1] Тип документа (55 - внешний идентификатор карточки)
171 ···············<vd:relationshipType>6</vd:relationshipType> dt:ReferenceType [1..1] Тип связи документа
172 ············</vd:referencedDocument>
173 ·········</vd:individualMember>
174 ······</vd:unitInfo>
175 ······<vd:membershipInfo> vd:AnimalGroupMembershipInfo [0..1] Сведения о членстве в зарегистрированных группах животных
176 ·········<vd:parentGroup> vd:AnimalRegistration [1..*]

Идентификатор карточки группового учёта животного

  • Обязательно использование одного из вариантов указания:
    • parent/guid - в случае, если учётная карточка была ранее успешно зарегистрирована в компоненте Хорриот и был получен её идентификатор (в этом случае объект referncedDocument не передаётся).
    • объект referncedDocument:
      • тип документа (type == 55);
      • идентификатор (uuid) - значение внешнего идентификатора документа, в котором содержатся сведения о данном животном, в случае параллельной отправки нескольких запросов на регистрацию, если ещё не был получен инедтификатор учётной карточки компонента Хорриот (подробнее: раздел "Массовая регистрация животных").
177 ············<bs:guid>?</bs:guid> bs:UUID [0..1] Идентификатор зарегистрированной карточки животного
178 ············<vd:referencedDocument> vd:ReferencedDocument [0..1] Сведения о связанном документе
179 ···············<bs:uuid>?</bs:uuid> bs:UUID [1..1] Идентификатор документа (значение внешнего идентификатора карточки)
180 ···············<vd:type>55</vd:type> dt:DocumentType [1..1] Тип документа (55 - внешний идентификатор карточки)
181 ···············<vd:relationshipType>6</vd:relationshipType> dt:ReferenceType [1..1] Тип связи документа
182 ············</vd:referencedDocument>
183 ·········</vd:parentGroup>
184 ······</vd:membershipInfo>
185 ······<vd:referencedDocument> vd:ReferencedDocument [1..1] Сведения о связанном документе
186 ·········<bs:uuid>?</bs:uuid> bs:UUID [1..1]

Идентификатор документа (значение внешнего идентификатора карточки)

  • значение внешнего идентификатора текущей карточки для построения связей (родословная, группы животных) в случае параллельной отправки нескольких запросов;
  • подробнее: раздел "Массовая регистрация животных"
187 ·········<vd:type>55</vd:type> dt:DocumentType [1..1] Тип документа (55 - внешний идентификатор карточки)
188 ·········<vd:relationshipType>6</vd:relationshipType> dt:ReferenceType [1..1] Тип связи документа
189 ······</vd:referencedDocument>
190 ······<vd:referencedDocument> vd:ReferencedDocument [0..1]

Сведения о связанном документе

  • обязательно, если причина первичной регистрации - импорт (initialIdentificationType == IMPORT)
191 ·········<bs:issueNumber>?</bs:issueNumber> bs:String255 [1..1] Номер документа
192 ·········<vd:type>56</vd:type> dt:DocumentType [1..1] Тип документа (56 - иностранный идентификационный номер животного)
193 ·········<vd:relationshipType>6</vd:relationshipType> dt:ReferenceType [1..1] Тип связи документа
194 ······</vd:referencedDocument>
195 ······<vd:lifecycleEventList> vd:AnimalLifecycleEventList [0..1]

Сведения о выбытии животных

  • Обязательно при регистрации выбывших животных (registrationStatus = TERMINATED)
196 ·········<vd:animalLifecycleEvent> vd:AnimalLifecycleEvent [1..1] Событие выбытия
197 ············<vd:type>?</vd:type> vd:VeterinaryEventType [1..1]

Тип выбытия

Возможные значения:

  • APS - Плановый убой животного
  • ADS - Диагностический убой животного
  • AFS - Вынужденный убой животного
  • DTH - Падёж животного
  • LSS - Пропажа животного (сбежало, украдено и т.п.)
  • RLS - Выпуск животного в среду обитания
  • EXP - Экспорт животного
198 ············<vd:actualDate> bs:ComplexDatePeriod [1..1] Дата события
199 ···············<bs:date> bs:ComplexDate [1..1] Точная дата
200 ··················<bs:year>?</bs:year> bs:Year [1..1] Год
201 ··················<bs:month>?</bs:month> bs:Month [1..1] Месяц
202 ··················<bs:day>?</bs:day> bs:Day [1..1] День
203 ···············</bs:date>
204 ············</vd:actualDate>
205 ············<vd:occurrenceReason>?</vd:occurrenceReason> vd:AnimalLifecycleEventReason [0..1]

Основание (причина) выбытия

  • Обязательно, если тип выбытия (type):
    • AFS (Вынужденный убой животного)
    • DTH (Падёж животного)
  • Возможные значения для типа AFS:
    • IDENTIFIED_CONTAGIOUS_DISEASE - Падёж/убой животного, у которого выявлена заразная болезнь
    • IDENTIFIED_NON_CONTAGIOUS_DISEASE - Падёж/убой животного, у которого выявлена незаразная болезнь
    • DISEASE_ERADICATION - Убой здорового животного в рамках ликвидации болезни
    • RESEARCH_OBJECTIVES - Убой животного в научно-исследовательских целях
    • USELESSNESS - Убой животного за ненадобностью в будущем (лабораторные животные, непродуктивные и т.п.)
  • Возможные значения для типа DTH:
    • WITHOUT_DISEASES - Падёж/убой животного, у которого не выявлено заразных или незаразных болезней
    • IDENTIFIED_CONTAGIOUS_DISEASE - Падёж/убой животного, у которого выявлена заразная болезнь
    • IDENTIFIED_NON_CONTAGIOUS_DISEASE - Падёж/убой животного, у которого выявлена незаразная болезнь
206 ·········</vd:animalLifecycleEvent>
207 ······</vd:lifecycleEventList>
208 ···</hrt:animalRegistration>
209 </hrt:registerAnimalRequest>

Спецификация ответа

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <hrt:registerAnimalResponse>
002 ···<hrt:animalRegistration> vd:AnimalRegistration [1..1] Сведения регистрации (учётная карточка) животного или группы животных
003 ······<bs:uuid>?</bs:uuid> bs:UUID [1..1] Идентификатор версии записи
004 ······<bs:guid>?</bs:guid> bs:UUID [1..1] Глобальный идентификатор записи
005 ······<bs:active>?</bs:active> xs:boolean [1..1] Флаг: является ли запись активной
006 ······<bs:last>?</bs:last> xs:boolean [1..1] Флаг: является ли версия последней
007 ······<bs:status>?</bs:status> bs:VersionStatus [1..1] Статус версии записи
008 ······<bs:createDate>?</bs:createDate> xs:dateTime [1..1] Дата создания записи
009 ······<bs:updateDate>?</bs:updateDate> xs:dateTime [1..1] Дата последнего изменения записи
010 ······<bs:previous>?</bs:previous> bs:UUID [0..1] Идентификатор предыдущей версии записи
011 ······<bs:next>?</bs:next> bs:UUID [0..1] Идентификатор следующей версии записи
012 ······<vd:identityType>?</vd:identityType> vd:AnimalIdentityType [1..1]

Тип идентификации/учёта: индивидуальная/групповая

Возможные значения:

  • INDIVIDUAL - индивидуальная идентификация
  • GROUP - групповая идентификация
013 ······<vd:registrationNumber>?</vd:registrationNumber> dt:AnimalID [0..1]

Регистрационный номер учётной карточки животного (группы животных)

  • Возвращается только для статусов:
    • ACTIVE
    • TERMINATED
  • При статусе PREPARING регистрационный номер отсутствует (не присваивается системой до окончания регистрации)
014 ······<vd:registrationStatus>?</vd:registrationStatus> vd:AnimalRegistrationStatus [1..1]

Статус учётной карточки животного (группы животных)

Возможные значения:

  • PREPARING - В обработке. Сведения о животном приняты на регистрацию. Изменение сведений не допускается до окончания процедуры регистрации.
  • ACTIVE - Действующий, действительна. Сведения о животном зарегистрированы. Допускается изменение сведений о животном.
  • TERMINATED - Недействующий, регистрация завершена (например, по причине выбытия животного). Изменение сведений о животном не допускается.
015 ······<vd:initialIdentificationType>?</vd:initialIdentificationType> vd:AnimalIdentificationEventType [1..1]

Причина первичной идентификации: рождение, импорт, другое

Возможные значения:

  • BIRTH - рождение
  • IMPORT - импорт
  • OTHER - иная причина первичной идентификации
016 ···</hrt:animalRegistration>
017 </hrt:registerAnimalResponse>

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

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

# Шаблон XML Описание шаблона
1 AMS.HRT.1.1-EX.1.RQ.xml Регистрация индивидуального животного (без связей с другими учётными карточками)
2 AMS.HRT.1.1-EX.2.RQ.xml Регистрация группы животных (без связей с другими учётными карточками)
3 AMS.HRT.1.1-EX.3.RQ.xml Регистрация индивидуального животного с членством в зарегистрированной группе животных
4 AMS.HRT.1.1-EX.4.RQ.xml Регистрация индивидуального животного с членством в ещё не зарегистрированной группе животных с помощью внешних идентификаторов
5 AMS.HRT.1.1-EX.5.RQ.xml Регистрация группы животных с передачей сведений о членстве в данной группе зарегистрированных индивидуальных животных