Technical Minutes 2020 07 31 - adewg/ICAR GitHub Wiki
ICAR Animal Data Exchange Working Group – Technical meeting 31 July 2020
- In attendance: Andrew C, Arjan L, Craig V, Erwin S, Marvin R, Sven S, Thomas P.
- Apology noted from Andrew who had a family event come up on 17 July, which meant that the meeting could not be started.
Agenda:
- Timeline for ADE 1.1.
- Reproductive and Lactation Status
- Listing and filtering resources - query parameters
- Collections or Arrays for APIs
- Examples of updating URL schemes
- Gestations
#128)
1. Timeline for ADE 1.1 (Feedback from the comments on the issue indicated we should complete and promote ADE 1.1 as soon as possible.
- There has been good progress with Health Treatments, Available Locations, and Conformation Scoring (incl. Condition Scores) being added.
- Noted we wanted to complete the work in progress with Gestations API.
#111)
2. Collections and pagination (Discussed the combined reproductive and lactation status originally suggested by GEA.
- Noted that this was a useful derived status to have for many animal recording and management purposes.
- Reflected our earlier questions whether this should belong in a separate sub-resource that could be queried for an animal by URL, or just added to the animal core resource.
- Discussed owner vs. locations (farms). Ownership can be complex with multiple owners.
- Decided that it reproductive status and lactation status to be optional fields within the animal core object.
- Marvin will take the lead in drawing together status values. Preference of the group was two fields rather than one if it made sense.
#130)
3. Listing and filtering resources - query parameters (Should we document common query parameters, especially for the Animals end point? It would be useful to specify if you wanted all animals or only live animals.
- We should document how query parameters should be formulated generally.
- Filtering on status of alive or not is particularly important and useful for animals.
- Arjan undertook to start documenting this in the Wiki. We should probably update the URL scheme for the animals collection too.
#129)
4. Collections or Arrays for APIs (We returned to discuss the issue that was previously covered on 3 July 2020 . We understand the cases well:
- There are cases where pagination is necessary, particularly dealing with large data sets that cannot be predictively filtered.
- There are cases for data hubs where inspection to merge collections from different sources is inefficient - particularly where those hubs support other than ICAR specifications. The only obvious solution discussed was to support two API specifications (one with just an array, the other with a "collection" envelope and array). This is not desirable, but may be more obvious than having a parameter where the client asks for one or the other.
#18)
5. Examples of updating URL schemes (relates toIt would be useful to document how to send updates with PUT/POST/DELETE. Not all implementations would support these.
- Noted that the exampleUrlScheme.json file is getting quite large, though it is already categorised by topic.
- Could split the file into separate files by topic - or wait and see if there is demand.
- Could create a file and documentation for how to POST into a collection, to PUT (update) resources, etc.
- Andrew undertook to look at this.
#121)
6. Gestations (Erwin presented an updated Gestations resource and API proposal.
- The updated resource contains expected calving date and sire(s), but no other properties.
- Erwin to create a pull request for this as the meeting was happy with this resource.
Next meeting scheduled for 14 August 2020 at 9am CET