adewg / ICAR

Standard messages and specifications for animal data exchange in livestock.
https://icar.org/
Apache License 2.0
49 stars 27 forks source link

ICAR Animal Data Exchange JSON Standards V1.4

The repository contains the JSON standard for Animal Data Exchange (ADE) produced by the International Committee for Animal Recording (ICAR).

The content of this repository is licenced using the Apache 2.0 Licence. You are encouraged to use it in your data exchanges and other applications, and also to contribute to the further development of the standard.

If you have implemented previous versions of ADE, you should read the release notes for the latest version.

Normative Sections

There are three key areas of this standard:

  1. The JSON Schema for Data Types: JSON ICAR Resource Types
  2. The URL Schemes and Open API for location centric applications: Application API and specification for these.
  3. The Generic Data API for data exchange: Generic Data API

You can also find an explanation of how to choose between location or generic data exchange APIs and the different types of animal groups and sets supported by the standard.

Compliance

There is no formal compliance defined beyond that implied by the JSON Schema for data types and as stated in the relevant API documentation.

Documentation

You can find the documentation for this project in the Wiki.

There you will find:

OpenAPI Quick Start

Developers may wish to start by reading OpenAPI specification examples in the \url-schemes folder in their favourite OpenAPI specification editor. You can also view the basic example Url Scheme using the swagger editor.

Code Generation

Developers will likely take one or more of the url-schemes and generate their own code wrappers using openapi-generator or an equivalent generation tool. Version 1.4 of this specification has been tested with OpenAPI Generator version 7.6.0 and conforms to the OpenAPI '3.1' specification as much as possible (and JSON Schema 2020-12). We value feedback on code generation, noting that some implementers have needed to make adjustments to get Java generation to work.

Acknowledgements

Input into this standard was based on previous work of:

Contributing

The Animal Data Exchange Working Group welcome contributions