Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

adding 2 Types in ReproParturitionEventResource #191

Closed
dirbSEGES opened this issue Feb 12, 2021 · 14 comments
Closed

adding 2 Types in ReproParturitionEventResource #191

dirbSEGES opened this issue Feb 12, 2021 · 14 comments
Assignees
Labels
this-release Scheduled to be implemented for this release in development

Comments

@dirbSEGES
Copy link

Hi

We will make local additions in ReproParturitionEventResource

"progenyBirthsizeType" with following selections:

Little
Below average
Above average
Big

and

"progenyStateofbirthType" with following selections:

Defective calf
Live calf
Live calf, born prematurely 
Died within 1 day
Died after 1 day
Stillborn
Abortion
Culled at birth

To accept a parturition theese input will required from our side.

Maybe you're considering being added to ADE?

@ahokkonen
Copy link
Contributor

@dirbSEGES

This is also one of the things we are missing compared to previous exchange standard using in our systems (NordicNDX).

BirthSize and BirthStatus are the parameters what needs to be passed on progeny level, but for progeny we have an array of icalAnimalCoreResource -resources defined in a message. One solution would be to extend icalAnimalCoreResource with new fields, but I'm not sure is it a proper way of solving that.

Another way is to define new type aka icarAnimalBirthResource/Type (inherited from icalAnimalCoreResource ) and have it as progeny message. Then we can add required fields there

@dirbSEGES
Copy link
Author

@ahokkonen

both solutions are usable for us. We need this info to create the parturition correct.

@tpekeler
Copy link
Collaborator

We would like to have the values above added to the standard.

In case of birthSize we would add another value "average" for countres where it is needed.

For the birthState we think it would be good to have only one set of values and everyone should pick the values which ar needed.
This could be done by providing only translations in the local language for the desired values. the client could then filter the values based on the translation tables.

Would this be a solution also to other EnumValues in the ADE standard?

@cvigorsICBF
Copy link
Collaborator

We would collect multiple events/types at birth:

  • Malpresentation: no, backwards, head down, one leg down, both legs down, other
  • Birth Size: extra small, small, medium, large, very large
  • Birth Vigour: very lazy/weak, lazy, average, vigorous, very vigorous
  • Birth Weight: kgs
  • Chest Girth: cm
  • Shoulder height: cm

Each value would be recorded against the calf

@erwinspeybroeck
Copy link
Collaborator

At birth we collect:
calvingEaseScore : EASY, NORMAL, HEAVY, CAESAREAN, SAWED_OFF, OTHER_HELP
calfMeatScore : LOW_MUSCULATED, NORMALLY_MUSCULATED, EXTRA_MUSCULATED, DOUBLE_MUSCLED
calfWeight : The estimated weight of the calf in kilograms.
calfSurvivalSTatus : ALIVE, DEAD_WITHIN_24_HOURS, DEAD_AFTER_24_HOURS

@ahokkonen
Copy link
Contributor

ahokkonen commented Jun 14, 2021

In Finland we use following during parturition:

CalvingEase:

  • Unknown
  • Without assistance
  • With assistance
  • Strong pull assistance
  • Other assistance (Caesarean etc.)

BirthStatus:

  • Unknown
  • Live calf
  • Abortion before 7 months' pregnancy
  • Abortion after 7 months' pregnancy
  • Stillborn
  • Died before 7 days' age
  • Slaughtered before 7 days' age
  • Euthanasia before 7 days' age

@SvenSchierenbeck
Copy link

SvenSchierenbeck commented Jul 15, 2021

In Germany we use

CalvingEase:

  • unknown
  • easy
  • normal
  • heavy
  • Caeserean/sawed off

BirthStatus

  • alive
  • dead
  • abortion
  • died within 48 hours
  • died after 48 hours
  • malformation

destination of calve

  • for breeding on the own farm
  • for fattening on the own farm
  • to be sold for breeding purpose
  • to be sold for fattening purpose

@cookeac cookeac self-assigned this Jul 15, 2021
@cookeac
Copy link
Collaborator

cookeac commented Aug 12, 2021

Proposed solution as follows:

  1. Define a new icarProgenyDetailsType.
  2. Add a new progenyDetails as an array of icarProgenyDetailsType to icarReproParturitionEventResource.
  3. Mark the existing progeny array in icarReproParturitionEventResource as deprecated - to be removed in a later major release.

Content of icarProgenyDetailsType

Attribute Type Comment
identifier icarAnimalIdentifierType Nullable animal identifier for the progeny. May not be supplied (for instance, if not yet tagged).
alternativeIdentifiers array of icarAnimalIdentifierType Array of alternative animal identifiers. May be empty.
gender icarAnimalGenderType Gender of the progeny. Nullable as may be unknown.
status icarAnimalStatusType Identifies the progeny as alive or dead.
birthStatus icarParturitionBirthStatusType New enumeration for birth status as per comments above - combination of lists from Finland/Germany.
birthWeight icarMassMeasureType Weight of the progeny. Nullable.
birthWeightScore TBC Enumeration or generalised score (if the latter, as per icarConformationScoreEventResource).
musclingScore TBC Enumeration or score event as per icarConformationScoreEventResource

Extensible to cover other scores recorded by specific countries, or as agreed by this group.

@ahokkonen
Copy link
Contributor

ahokkonen commented Aug 23, 2021

I like this solution and strongly voting for it.

I can prepare first PR draft with proposed changes and try to prepare a common list of all possible birth/size statuses mentioned in current thread. Then we can adjust the PR changes toward ideality. :)

@ahokkonen
Copy link
Contributor

Draft PR is added and could be commented #243

@ahokkonen
Copy link
Contributor

ahokkonen commented Sep 2, 2021

@cookeac @erwinspeybroeck
One thing in addition - should also sire information be added for the progeny details or for the parturition event resource?

I even think if we can just use this new "ProgenyDetails" as an "extension" for the core animal resource. By having new type inherited from "icarAnimalCoreResource" we'll remain all original animal properties and add new without "breaking" a core resource. In general we can use the same "progeny" property in parturition resource as technically it the same type but extended a bit...

@ahokkonen
Copy link
Contributor

Added small updates for #243

  • code rename for DiedBeforeOfficialRegistrationDate -> DiedBeforeTaggingDate (icarParturitionBirthStatusType)
  • added optional tagging date for progeny

@ahokkonen
Copy link
Contributor

I've made my PR available for official review and we can now target it to the next ADE release.

@ahokkonen ahokkonen added the this-release Scheduled to be implemented for this release in development label Sep 21, 2021
@ahokkonen
Copy link
Contributor

PR is merged to the Development branch, issue is closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
this-release Scheduled to be implemented for this release in development
Projects
None yet
Development

No branches or pull requests

7 participants