6.6.2.2 Offspring
6.6.2.2.1 Purpose¶
One newborn of a parturition, alive or dead. Twins are two rows; a stillborn calf may never become an animal, while a registered calf links to its animal record.
6.6.2.2.2 Questions it answers¶
- How many calves were born at a parturition, and did they survive?
- Which registered animal came from this birth?
6.6.2.2.3 Fields¶
| Field | Type | Cardinality | Description |
|---|---|---|---|
id |
string (uuid) |
1..1 |
Key. |
parturition |
ParturitionEvent | 1..1 |
|
animal |
Animal | 0..1 |
The registered animal, when the newborn was registered. |
sex |
AnimalSexEnum | 0..1 |
|
viability |
enum | 1..1 |
Values: alive, stillborn, died_after_birth, unknown. |
created_at |
datetime |
1..1 |
|
updated_at |
datetime |
1..1 |
6.6.2.2.4 Relationships¶
References
Offspring.parturition→ ParturitionEvent (1..1)Offspring.animal→ Animal (0..1)
Referenced by
Animal.birth(0..1)ParturitionEvent.offspring(0..*)
Uses types
6.6.2.2.5 Rules & constraints¶
- One newborn of a ParturitionEvent. A dead calf may never become an Animal.
- Twins: two Offspring rows of the same ParturitionEvent.
- Immutable child payload of an exact event revision; a correction creates new child rows.
- Registered animal is unique only within that parturition revision, not across feeds or revisions.
- Animal.birth is a resolved current projection; it does not prohibit multiple birth evidence rows.