From 06870b75334d2583019ff6014abba8ea3108cffd Mon Sep 17 00:00:00 2001 From: Andrew Cooke <45248509+cookeac@users.noreply.github.com> Date: Thu, 27 Jun 2024 17:23:10 +1200 Subject: [PATCH 1/4] Add extended reason codes Define icarReasonIdentifierType and add its well-known file for people to document their schemes. Add an array of extended reasons to the death, departure, and do-not-breed events. --- resources/icarMovementDeathEventResource.json | 9 ++++++++- resources/icarMovementDepartureEventResource.json | 9 ++++++++- resources/icarReproDoNotBreedEventResource.json | 7 +++++++ types/icarReasonIdentifierType.json | 7 +++++++ well-known/icarReasonIdentifierType.md | 6 ++++++ 5 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 types/icarReasonIdentifierType.json create mode 100644 well-known/icarReasonIdentifierType.md diff --git a/resources/icarMovementDeathEventResource.json b/resources/icarMovementDeathEventResource.json index d93bc2d..69f5ccc 100644 --- a/resources/icarMovementDeathEventResource.json +++ b/resources/icarMovementDeathEventResource.json @@ -1,5 +1,5 @@ { - "description": "Event for recording animal death", + "description": "Event for recording animal death on farm.", "allOf": [{ "$ref": "../resources/icarAnimalEventCoreResource.json" @@ -35,6 +35,13 @@ "deathMethod": { "$ref": "../enums/icarDeathMethodType.json", "description": "Defines the method of death, including an accident, natural causes, or euthanised." + }, + "extendedReasons": { + "description": "Extended reason codes why this animal has died.", + "type": "array", + "items": { + "$ref": "../types/icarReasonIdentifierType.json" + } } } } diff --git a/resources/icarMovementDepartureEventResource.json b/resources/icarMovementDepartureEventResource.json index 78286b7..6e9f832 100644 --- a/resources/icarMovementDepartureEventResource.json +++ b/resources/icarMovementDepartureEventResource.json @@ -1,5 +1,5 @@ { - "description": "Event for recording animal departure", + "description": "Event for recording live animal departure.", "allOf": [{ "$ref": "../resources/icarAnimalEventCoreResource.json" @@ -19,6 +19,13 @@ "consignment": { "$ref": "../types/icarConsignmentType.json", "description": "Identifies the consignment of the animal from the holding." + }, + "extendedReasons": { + "description": "Extended reason codes why this animal has departed.", + "type": "array", + "items": { + "$ref": "../types/icarReasonIdentifierType.json" + } } } } diff --git a/resources/icarReproDoNotBreedEventResource.json b/resources/icarReproDoNotBreedEventResource.json index ce7fbb3..75c36ec 100644 --- a/resources/icarReproDoNotBreedEventResource.json +++ b/resources/icarReproDoNotBreedEventResource.json @@ -11,6 +11,13 @@ "type": ["boolean", "null"], "description": "Set this attribute to true if the animal should not be bred, false if it may now be bred.", "default": true + }, + "extendedReasons": { + "description": "Extended reason codes why this animal should not be bred.", + "type": "array", + "items": { + "$ref": "../types/icarReasonIdentifierType.json" + } } } } diff --git a/types/icarReasonIdentifierType.json b/types/icarReasonIdentifierType.json new file mode 100644 index 0000000..39e5bb1 --- /dev/null +++ b/types/icarReasonIdentifierType.json @@ -0,0 +1,7 @@ +{ + "description": "Extended reason identifier based on a scheme and ID.", + + "allOf": [{ + "$ref": "../types/icarIdentifierType.json" + }] +} \ No newline at end of file diff --git a/well-known/icarReasonIdentifierType.md b/well-known/icarReasonIdentifierType.md new file mode 100644 index 0000000..6789511 --- /dev/null +++ b/well-known/icarReasonIdentifierType.md @@ -0,0 +1,6 @@ +# Well-known Extended Reason Identifier Schemes + +These schemes define country, region, or species-specific extended reason codes for departures, deaths, and do not breed events. If you represent a recording organisation or scheme operator, please edit and "Pull Request" this file to let others know about your extended reason code schemes. + +| Short URI | Resolvable URI | Description | Example | Code list or format specification | +| --- | --- | --- | --- | --- | \ No newline at end of file From aa1f2ccb23a6543c973380455b8284424a7b0d7f Mon Sep 17 00:00:00 2001 From: NedapLivestockManagement Date: Thu, 27 Jun 2024 10:29:16 +0200 Subject: [PATCH 2/4] #477 Sorting command with multiple sorting sites --- resources/icarAnimalSortingCommandResource.json | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/resources/icarAnimalSortingCommandResource.json b/resources/icarAnimalSortingCommandResource.json index df762de..4728787 100644 --- a/resources/icarAnimalSortingCommandResource.json +++ b/resources/icarAnimalSortingCommandResource.json @@ -16,9 +16,12 @@ "$ref": "../types/icarAnimalIdentifierType.json", "description": "Unique animal scheme and identifier combination." }, - "site": { - "type": "string", - "description": "Unique identifier in the system for this site." + "sites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array with unique site identifiers where this animal can be sorted to." }, "validFrom": { "$ref": "../types/icarDateTimeType.json", From 9b0e3468350c308bf9ba8144f4daa38d815bc54e Mon Sep 17 00:00:00 2001 From: Andrew Cooke <45248509+cookeac@users.noreply.github.com> Date: Thu, 11 Jul 2024 16:44:03 +1200 Subject: [PATCH 3/4] Replace "site" with "sites" in required fields. --- resources/icarAnimalSortingCommandResource.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/icarAnimalSortingCommandResource.json b/resources/icarAnimalSortingCommandResource.json index 4728787..1376211 100644 --- a/resources/icarAnimalSortingCommandResource.json +++ b/resources/icarAnimalSortingCommandResource.json @@ -8,7 +8,7 @@ "type": "object", "required": [ "animal", - "site", + "sites", "validFrom" ], "properties": { From ecd3899e45f35340b86dbef70ea913f21c5e3f59 Mon Sep 17 00:00:00 2001 From: Andrew Cooke <45248509+cookeac@users.noreply.github.com> Date: Thu, 8 Aug 2024 18:59:29 +1200 Subject: [PATCH 4/4] Update CHANGELOG.md Update Changelog prior to 1.4.1 release --- CHANGELOG.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0fb2b9e..7552c01 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## [v1.4.1](https://github.com/adewg/ICAR/tree/HEAD) + +[Full Changelog](https://github.com/adewg/ICAR/compare/v1.4.0...HEAD) + +**Closed issues:** + +- Update readme for 1.4 [\#478](https://github.com/adewg/ICAR/issues/478) +- Sorting command with multiple sorting sites [\#477](https://github.com/adewg/ICAR/issues/477) +- Review departure reason list [\#455](https://github.com/adewg/ICAR/issues/455) +- expand departure reasons [\#454](https://github.com/adewg/ICAR/issues/454) + +**Merged pull requests:** + +- Update README.md for 1.4 [\#480](https://github.com/adewg/ICAR/pull/480) ([cookeac](https://github.com/cookeac)) + ## [v1.4.0](https://github.com/adewg/ICAR/tree/v1.4.0) (2024-05-21) [Full Changelog](https://github.com/adewg/ICAR/compare/v1.3.2...v1.4.0) @@ -14,6 +29,7 @@ - Sorting of animals [\#456](https://github.com/adewg/ICAR/issues/456) - Remove "enum" attribute from deprecated "@type" property of icarResourceType [\#451](https://github.com/adewg/ICAR/issues/451) - Add support for milking shifts or batch milking to icarMilkingVisitEventResource [\#450](https://github.com/adewg/ICAR/issues/450) +- Improvements to documentation of icarMilkingVisitEventResource [\#444](https://github.com/adewg/ICAR/issues/444) - Remaining items to be addressed for ADE 1.4 release [\#443](https://github.com/adewg/ICAR/issues/443) - Update icarResourceTypeCatalog.md [\#440](https://github.com/adewg/ICAR/issues/440) - icarDeviceResource is not correctly structured [\#439](https://github.com/adewg/ICAR/issues/439) @@ -28,6 +44,7 @@ - service-sires API [\#402](https://github.com/adewg/ICAR/issues/402) - Device Attentions message [\#393](https://github.com/adewg/ICAR/issues/393) - Define metrics for carcass observations [\#386](https://github.com/adewg/ICAR/issues/386) +- Animal and Group Position events [\#383](https://github.com/adewg/ICAR/issues/383) - Group feed utilisation/allowance event [\#382](https://github.com/adewg/ICAR/issues/382) - Add Inventory to MedicineRessource? [\#369](https://github.com/adewg/ICAR/issues/369) - Request to make Meta required on IcarEventCoreResource and SourceId on Meta required [\#366](https://github.com/adewg/ICAR/issues/366) @@ -40,16 +57,67 @@ - Heat recording - standardise vendor-specific fields and make them extensible [\#354](https://github.com/adewg/ICAR/issues/354) - Possible agenda for webinar January 2023 [\#343](https://github.com/adewg/ICAR/issues/343) - Provide predictions for expected milk yield [\#285](https://github.com/adewg/ICAR/issues/285) +- Moving to open api spec 3.1 [\#239](https://github.com/adewg/ICAR/issues/239) - Define carcase data feedback event and collection [\#155](https://github.com/adewg/ICAR/issues/155) **Merged pull requests:** +- Merge changes from Develop branch into ADE-1 for 1.4.0 release [\#475](https://github.com/adewg/ICAR/pull/475) ([cookeac](https://github.com/cookeac)) +- Update CHANGELOG for 1.4.0 [\#474](https://github.com/adewg/ICAR/pull/474) ([cookeac](https://github.com/cookeac)) +- Finished description improvements in icarMilkingVisitEventResource [\#473](https://github.com/adewg/ICAR/pull/473) ([cookeac](https://github.com/cookeac)) +- Fix linting errors [\#472](https://github.com/adewg/ICAR/pull/472) ([cookeac](https://github.com/cookeac)) +- \#458 Add fedding costs and deliveried weight to consumed feed types [\#471](https://github.com/adewg/ICAR/pull/471) ([ErikUniformAgri](https://github.com/ErikUniformAgri)) +- Addition of attaention catgories and causes \#462 [\#470](https://github.com/adewg/ICAR/pull/470) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) +- get to the develop branch [\#469](https://github.com/adewg/ICAR/pull/469) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) +- Add milkingShiftNumber and milkingShiftLocalDate [\#468](https://github.com/adewg/ICAR/pull/468) ([cookeac](https://github.com/cookeac)) +- Improve description for icarGestationResource [\#464](https://github.com/adewg/ICAR/pull/464) ([cookeac](https://github.com/cookeac)) +- Remove enum from @type [\#460](https://github.com/adewg/ICAR/pull/460) ([cookeac](https://github.com/cookeac)) +- Sorting of animals [\#457](https://github.com/adewg/ICAR/pull/457) ([AndreasSchultzGEA](https://github.com/AndreasSchultzGEA)) +- Remove use of $comment which breaks linting [\#453](https://github.com/adewg/ICAR/pull/453) ([cookeac](https://github.com/cookeac)) +- Add enum for milk characteristics type [\#452](https://github.com/adewg/ICAR/pull/452) ([cookeac](https://github.com/cookeac)) +- Update Resource Type Catalog for ADE 1.4 [\#449](https://github.com/adewg/ICAR/pull/449) ([cookeac](https://github.com/cookeac)) +- Merge identifier scheme updates from ADE-1 [\#448](https://github.com/adewg/ICAR/pull/448) ([cookeac](https://github.com/cookeac)) - Add AU/NZ/UK medicine registers [\#447](https://github.com/adewg/ICAR/pull/447) ([cookeac](https://github.com/cookeac)) +- Make icarDeviceResource an icarResource [\#442](https://github.com/adewg/ICAR/pull/442) ([cookeac](https://github.com/cookeac)) +- Update to OpenAPI version 3.1 [\#438](https://github.com/adewg/ICAR/pull/438) ([cookeac](https://github.com/cookeac)) +- Upgrade from OpenAPI 3.0 to 3.1 [\#437](https://github.com/adewg/ICAR/pull/437) ([cookeac](https://github.com/cookeac)) +- Additional data for IcarMovementArrivalEventResource [\#431](https://github.com/adewg/ICAR/pull/431) ([AndreasSchultzGEA](https://github.com/AndreasSchultzGEA)) +- Define position observations [\#430](https://github.com/adewg/ICAR/pull/430) ([cookeac](https://github.com/cookeac)) +- Update descriptions re meta and sourceId [\#429](https://github.com/adewg/ICAR/pull/429) ([cookeac](https://github.com/cookeac)) +- Device registration and manufacturer information [\#428](https://github.com/adewg/ICAR/pull/428) ([cookeac](https://github.com/cookeac)) +- Add resourceType column to resourceTypeCatalog.md [\#427](https://github.com/adewg/ICAR/pull/427) ([cookeac](https://github.com/cookeac)) +- Add a comma to fix error in icarAnimalCoreResource [\#424](https://github.com/adewg/ICAR/pull/424) ([cookeac](https://github.com/cookeac)) +- fix: value added to icarInventoryTransactionKindType [\#423](https://github.com/adewg/ICAR/pull/423) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Descriptions added or modified [\#420](https://github.com/adewg/ICAR/pull/420) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Update icarConsignmentType.json [\#417](https://github.com/adewg/ICAR/pull/417) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Update icarCarcassMetricType.json [\#416](https://github.com/adewg/ICAR/pull/416) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Update icarBreedFractionsType.json [\#415](https://github.com/adewg/ICAR/pull/415) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Update icarGroupMovementBirthEventResource.json [\#414](https://github.com/adewg/ICAR/pull/414) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Description for "parentage" in icarAnimalCoreResource [\#413](https://github.com/adewg/ICAR/pull/413) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Add icarAttentionEventResource issue 393 [\#407](https://github.com/adewg/ICAR/pull/407) ([cookeac](https://github.com/cookeac)) +- Update icarProductFamilyType.json [\#406](https://github.com/adewg/ICAR/pull/406) ([donwilson-rezare](https://github.com/donwilson-rezare)) +- Add service-sires API - https://github.com/adewg/ICAR/issues/402 [\#405](https://github.com/adewg/ICAR/pull/405) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) +- Develop [\#404](https://github.com/adewg/ICAR/pull/404) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) +- Correct typo in icarReproHeatEventResource.json [\#401](https://github.com/adewg/ICAR/pull/401) ([cookeac](https://github.com/cookeac)) +- Erwinspeybroeck [\#400](https://github.com/adewg/ICAR/pull/400) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) +- rebase with Develop [\#399](https://github.com/adewg/ICAR/pull/399) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) +- Changes to the icarReproHeatEvent to make it device independent [\#398](https://github.com/adewg/ICAR/pull/398) ([cvigorsICBF](https://github.com/cvigorsICBF)) +- Add icarGroupFeedingEventResource [\#396](https://github.com/adewg/ICAR/pull/396) ([cookeac](https://github.com/cookeac)) - feat: add rearing, growing & finishing to animal set purposes enum [\#392](https://github.com/adewg/ICAR/pull/392) ([willsimmMOA](https://github.com/willsimmMOA)) +- Update documentation from ADE1 [\#389](https://github.com/adewg/ICAR/pull/389) ([cookeac](https://github.com/cookeac)) - Add well-known identifier documentation for Australian NLIS ID and PIC [\#388](https://github.com/adewg/ICAR/pull/388) ([cookeac](https://github.com/cookeac)) +- Create icarCarcassMetricIdentifierType.md [\#387](https://github.com/adewg/ICAR/pull/387) ([cookeac](https://github.com/cookeac)) +- Inventory transaction resources [\#385](https://github.com/adewg/ICAR/pull/385) ([cookeac](https://github.com/cookeac)) +- Merge ADE1 well-known identifier doc changes back into Develop [\#384](https://github.com/adewg/ICAR/pull/384) ([cookeac](https://github.com/cookeac)) +- Implement Milking Predictions [\#381](https://github.com/adewg/ICAR/pull/381) ([erwinspeybroeck](https://github.com/erwinspeybroeck)) - Update icarLocationIdentifierType.md [\#380](https://github.com/adewg/ICAR/pull/380) ([matheuscanalmoa](https://github.com/matheuscanalmoa)) - Update icarAnimalIdentifierType.md [\#379](https://github.com/adewg/ICAR/pull/379) ([matheuscanalmoa](https://github.com/matheuscanalmoa)) - Update icarBreedIdentifierType.md [\#378](https://github.com/adewg/ICAR/pull/378) ([matheuscanalmoa](https://github.com/matheuscanalmoa)) +- Animal set changes [\#376](https://github.com/adewg/ICAR/pull/376) ([AlexeyHardCode](https://github.com/AlexeyHardCode)) +- Carcass, processing lot, and carcass observations resources [\#371](https://github.com/adewg/ICAR/pull/371) ([cookeac](https://github.com/cookeac)) +- Extensions to Consignment for animals being sent to a processor [\#370](https://github.com/adewg/ICAR/pull/370) ([cookeac](https://github.com/cookeac)) +- Merge ADE 1.3.2 changes back into Develop branch [\#368](https://github.com/adewg/ICAR/pull/368) ([cookeac](https://github.com/cookeac)) +- Reapply Embryo Flushing Changes [\#351](https://github.com/adewg/ICAR/pull/351) ([cookeac](https://github.com/cookeac)) ## [v1.3.2](https://github.com/adewg/ICAR/tree/v1.3.2) (2023-02-15)