Обмен данными

Чем проверяется наш обмен

Ответ книги сверяется с настоящими схемами стандарта на каждом прогоне. Здесь видно, с какими именно и что эта сверка уже нашла.

«Соответствует ICAR» говорят все, и проверить это со стороны нельзя: ни сертификации, ни реестра внедрений у стандарта нет. Единственное, что отличает утверждение от слов, — показать, чем именно оно проверяется.

Версия стандарта
ICAR ADE 1.5.1
Ветка у ICAR
ADE-1
Копия снята
3 сентября 2026 г.
Коммит у ICAR
ac55844e9c

Схемы стандарта лежат копией в дереве проекта, и каждый прогон сверяет с ними то, что книга отдаёт наружу. Ниже — что участвует в этой сверке, что не участвует и почему.

303

файлов схем стандарта в дереве проекта

77

из них участвуют в сверке наших ресурсов

11

ресурсов книги проверяется на каждом прогоне

Разница между 303 и 77 — не оговорка. Сверяются все 14 наших ресурсов; участвуют в сверке те схемы, без которых она не состоится: общие предки, типы, перечисления. Остальные 226 лежат в дереве, чтобы ссылки разрешались целиком и чтобы обновление стандарта было видно построчным сравнением — включая то, чего книга не делает.

Что книга отдаёт и принимает

14 коллекций по адресам стандарта; 7 из них принимают данные. Остальные закрыты на запись намеренно: постановка животного на учёт и переход прав — утверждения, за которые отвечает Ассоциация, и они идут заявкой с проверкой.

Что это в книгеСхема ICARСодержаниеПриём
ЖивотноеicarAnimalCoreResourceКарточка: номера, пол, дата рождения, порода, родители.только отдача
Контрольное доениеicarTestDayResultEventResourceУдой за сутки, жир, белок, соматические клетки на дату.принимается
ОтёлicarReproParturitionEventResourceДата, номер отёла, лёгкость, перечень приплода с полом и статусом.принимается
ОсеменениеicarReproInseminationEventResourceДата, кратность, бык, способ воспроизводства.принимается
ВзвешиваниеicarWeightEventResourceЖивая масса на дату, в килограммах.принимается
Проверка стельностиicarReproPregnancyCheckEventResourceРезультат теста; живёт при осеменении, своей записи не имеет.только отдача
Оценка экстерьераicarTypeClassificationEventResourceЛинейные признаки и сводные оценки, с указанием оценщика.только отдача
Племенная ценностьicarBreedingValueResourceЗначение индекса, достоверность, профиль весов, база сравнения.только отдача
ПоступлениеicarMovementArrivalEventResourceЖивотное пришло в хозяйство: покупка, ввоз, перевод.только отдача
ВыбытиеicarMovementDepartureEventResourceЖивотное ушло: продажа, перевод, выбраковка на убой.только отдача
ПадёжicarMovementDeathEventResourceГибель на ферме — отдельный ресурс со своими полями.только отдача

Схемы, участвующие в сверке

Наши ресурсы ссылаются на общие предки, те — на типы, типы — на перечисления. Замкнутый круг этих ссылок и есть то, чем ответ книги проверяется на самом деле. Имена приведены как в репозитории: по ним схему находят за один поиск.

Ресурсы 18

icarAnimalBaseResource
icarAnimalCoreResource
icarAnimalEventCoreResource
icarBreedingValueResource
icarEventCoreResource
icarMovementArrivalEventResource
icarMovementDeathEventResource
icarMovementDepartureEventResource
icarProgenyDetailsResource
icarReproEmbryoResource
icarReproInseminationEventResource
icarReproParturitionEventResource
icarReproPregnancyCheckEventResource
icarReproSemenStrawResource
icarResource
icarTestDayResultEventResource
icarTypeClassificationEventResource
icarWeightEventResource

Типы 31

icarAnimalIdentifierType
icarAnimalStateType
icarBreedFractionsType
icarBreedIdentifierType
icarBreedingValueType
icarBVBaseIdentifierType
icarCoatColorIdentifierType
icarConformationScoreType
icarConsignmentDeclarationType
icarConsignmentType
icarDateTimeType
icarDateType
icarDeclarationIdentifierType
icarDeviceReferenceType
icarDeviceRegistrationIdentifierType
icarIdentifierType
icarInterestedPartyType
icarLocationIdentifierType
icarMassMeasureType
icarMetaDataType
icarMilkCharacteristicsType
icarMilkingMilkWeightType
icarMilkingPredictionType
icarOrganizationIdentifierType
icarOrganizationIdentityType
icarOrganizationType
icarParentageType
icarReasonIdentifierType
icarResourceReferenceType
icarTraitLabelIdentifierType
PostalAddress

Перечисления 28

icarAnimalGenderType
icarAnimalHealthStatusType
icarAnimalLactationStatusType
icarAnimalRelationType
icarAnimalReproductionStatusType
icarAnimalSpecieType
icarAnimalStatusType
icarArrivalReasonType
icarBreedingValueCalculationType
icarConformationScoringMethodType
icarConformationTraitGroupType
icarConformationTraitType
icarDeathDisposalMethodType
icarDeathMethodType
icarDeathReasonType
icarDepartureKindType
icarDepartureReasonType
icarParturitionBirthSizeType
icarParturitionBirthStatusType
icarProductionPurposeType
icarReproCalvingEaseType
icarReproInseminationType
icarReproPregnancyMethodType
icarReproPregnancyResultType
icarReproSemenPreservationType
icarTestDayCodeType
icarWeightMethodType
uncefactMassUnitsType

Что в стандарте есть, а в книге нет

226 схем в сверке не участвуют, и это не пробел. Стандарт описывает всю ферму — от кормового стола до убойного цеха, — а племенная книга отвечает за происхождение и продуктивность. Границу видно здесь.

Тема стандартаСхемПочему не у нас
Корма и рационы30Кормление ведут в системе управления стадом; книге нужен результат, а не рацион.
Здоровье и лечение31Ветеринарный контур отдельный и по закону, и по ответственности.
Убой и туши16Мясной учёт: другая отрасль, другие измерения, другой потребитель.
Группы животных28Групповые события и сортировка нужны роботам на ферме, а не книге.
Устройства и датчики30Показания доильного зала и датчиков — сырьё для фермы; в книгу попадает итог.
Склад и оборот9Учёт запасов и движения товара — задача хозяйства, а не племенного учёта.
Воспроизводство сверх нашего23Охоты, аборты, трансплантация эмбрионов — следующий шаг, названный в разборе ICAR.
Молоко сверх нашего18Подробности дойки по четвертям и визитам; книга ведёт контрольные доения.
Прочее ядро стандарта41Общие предки, ссылки на ресурсы, служебные обёртки коллекций.

Разбор по темам — по ключевому слову в имени схемы. Правило грубое и годится ровно для того, ради чего заведено: показать размер стандарта и границы книги.

Что сверка уже нашла

Нашу ошибку

Перечень приплода у отёла уезжал без обязательных полей, которых требует общий предок ресурса. Собственная проверка книги пройти мимо была обязана — она про предка не знала. Любой партнёр, сверяющий по схеме, отверг бы каждый наш отёл с приплодом.

Ошибку в самом стандарте

icarTypeClassificationEventResource объявляет обязательными два поля, которых не определяет ни сам, ни его предки: список обязательных скопирован из соседнего типа при разделении ресурса надвое. Выполнить такую схему нельзя ничем. У нас это снято исключением под конкретную поломку и печатается отдельной строкой, чтобы не растворилось в зелёном.

Пробел стандарта

В icarBreedingValueType нет ни числа дочерей, ни числа стад, хотя оценка по потомству без них непроверяема: двести дочерей в одном хозяйстве описывают хозяйство, а не быка. Пока рабочая группа не завела поля, книга принимает daughters и herds расширением — на уровне ресурса или одинаковыми у всех признаков набора. Отдаём мы строго по стандарту, без расширения.

Источник и обновление

Схемы взяты из репозитория adewg/ICAR под лицензией Apache 2.0, ветка ADE-1, коммит ac55844e9c76. Файлы не изменялись.

Копия лежит в дереве намеренно. Проверка, ходящая в сеть, падает, когда чужой сервер недоступен, и — хуже — проходит, когда он недоступен незаметно. Обновление копии видно построчным сравнением: расхождение со стандартом становится событием, которое кто-то прочитал и принял.