OpenAgri Open Source Services (Solutions)

OpenAgri provides a suite of OS, reusable and standards-compliant software services that are central to the digitization of agricultural practices for all farms. The OpenAgri OS Services are offered as ready to integrate software libraries (EUPL license). These core services aim to enable the bootstrapping of new ADSs by the AgTech providers of the OpenAgri SIPs and the wider community across Europe, lowering the development cost and ensuring the use of good practices (e.g. data interoperability, data sharing, resources optimisation). This will support ADSs developers to achieve greater functionality or to automate processes without writing code from scratch and support additional technology providers to enter the AgriTech business. The OpenAgri’s OS Services follow the microservices software architecture  where each service is self-contained implementing a single business capability providing well-defined, standards-based, APIs that allow their complementary use and integration.

OpenAgri’s OS Services are under continuous improvement through thematic-specific and loosely coupled OS software projects created and managed by consortium partners but also engaging actors from the wider software development community. The OpenAgri’s OS Services are hosted in a public code repository following Open Source development principles under the guidance and support of AgStack of the Linux Foundation: https://github.com/openagri-eu/

OpenAgri’s OS Services have been specified and implemented following a set of core design principles aiming to address the technical requirements imposed by the needs of the agricultural sector. Among these are that all OS Services will be designed to offer a level of functionality in remote areas with weak or even no connectivity and to exploit edge computing techniques. Moreover, compliance with EU standards and policy obligations are considered. Please note that the OpenAgri consortium reserves the right to regularly update the descriptions of the OpenAgri Open Source components during the period of Open Call. 

Updated on 05.11.2024.

OpenAgri Digital Farm Calendar

The use of digital farm calendars has been recognized as a key step for the digitalisation of farms. The “OpenAgri Digital Farm Calendar” service aims to address the data capture needs of farms by providing for the manual recording of: farmers activities, farmers observations, parcels properties and the recording of the farm’s assets. A Web User Interface (UI) is provided which allows the users to visualize and navigate through the farm calendar of activities and to facilitate the management of the farm assets. In addition, all these operations and farm assets can be managed through a REST API, which provides these resources in a linked data format (i.e., using JSON-LD) and conforms to the OpenAgri Common Semantic Model (OCSM). The development of the OpenAgri Digital Farm Calendar is ongoing and more details on the status of the service are available here:
https://github.com/openagri-eu/farmcalendar

OpenAgri Weather Data service

The functionalities offered by the “OpenAgri Weather Data service” are based on the integration of  open or low-cost weather monitoring and forecast services e.g., OpenWeather, and also by connecting to local weather stations. A variety of agricultural weather data functionalities will progressively be integrated and offered for use, such as services for measuring the accumulation of precipitation, dormant season’s accumulation of chilling hours, calculators of Growing Degree Days, forecasts and weather conditions in relation to optimum conditions per farming activity (e.g. spraying) and crop type.

Currently, the OpenAgri Weather Data service uses data from the OpenWeatherMap API and its agriculture specific suite of services https://agromonitoring.com/api.  It offers seamless access through a RESTful API interface and delivers comprehensive 5-day weather forecasts with a focus on agriculture related indicators. Data is provided in a linked-data format using JSON-LD and following the specification of the OCSM, ensuring interoperability across various platforms.

The service also performs a second level analysis calculating specific indicators that are not provided by the underlying service such as the Temperature-Humidity Index (THI) (Islam et al. 2021). THI is a combined metric used to assess heat stress in livestock, calculated using air temperature and relative humidity.

The development of the OpenAgri Weather data service is ongoing and more details on the status of the service are available here:
https://github.com/openagri-eu/weather-service

OpenAgri Pest & Disease Management service

The “OpenAgri Pest and Disease Management service” offers a modular pest infestation probabilistic decision support system. It receives as input a number of relevant variables such as weather conditions, crop type, growth stage, and observations from scouting, in order to provide an estimate of the risk of pest and disease infestation. Initially, algorithms tailored to the pests and diseases of the OpenAgri SIPs are  implemented, aiming to act as examples for guiding the development of rule-based prediction systems for additional plant enemies.

The initial release of this service is focusing on analysing recorded environmental conditions (Temperature, Humidity) that affect the development/infestation of pests and diseases. It provides a way for farm users to define rules with parameters that correspond to the circumstances for either pests to attack or diseases to appear/spread, as well as actions that should be triggered if the criteria are fulfilled, such as sending a notification to the user. It also provides a way for farm users to reuse these definitions for multiple different pests/diseases that vary in circumstance and to combine multiple definitions to create new ones. The “OpenAgri Pest and Disease Management service” provides a REST API that allows service consumers to upload datasets, specify new rules, apply these rules to a dataset, and retrieve information on whether or not the rules applied during a period of time.

These resources offered by the REST API are available in linked-data format (JSON-LD) and conform to the OpenAgri Common Semantic Model (OCSM).

The service project, alongside more details on its operation, setup as well as usage, can be found at:
https://github.com/openagri-eu/pest-and-disease-management

OpenAgri Irrigation service

The “OpenAgri Irrigation Service” acts as a toolkit, providing a set of useful calculators to support decision-making in irrigation management. The current implementation of the OpenAgri Irrigation Service is designed to offer an “Evapotranspiration calculator (ETo) ” and a “Soil moisture analysis engine”.

The “OpenAgri Irrigation Service” ETo calculator is  based on the Penman-Monteith equation defined by the FAO in Allen et al. 1998.  This calculator assesses ETo from the recorded meteorological data in the area and provides a numerical indication of the amount of water that is absorbed from the soil to the atmosphere. This amount can then be part of the decision-making process of a farmer advisor, the farmer, or another service to calculate the amount of irrigation that the cultivation needs.

The “Soil moisture analysis engine” takes recorded soil moisture measurements as input from soil moisture sensors, e.g., soil moisture measurements from the last month, and identifies critical points and provides an overall assessment of the irrigation strategy’s efficiency. The OpenAgri’s “Soil moisture analysis engine” aims to  automate the analysis of these datasets and returns a report with the results in an easy to comprehend format. The initial version of the service provides easy to extract elements but important for supporting decision making in irrigation. The irrigation analytics report currently include:

  1. Time period covered: this will be based on the dataset used.
  2. Irrigation events detected: Identification will be based on the increase in soil moisture without a rain event. In addition, a rain event creates a different pattern in soil moisture change than an irrigation event.
  3. Precipitation events detected: this will be based on identifying events of soil moisture alterations due to rainfall.
  4. High Dose irrigation event: For the detected irrigation events (in 1) an analysis if sudden increases (high increasing trend) of soil moisture values are detected. High increase followed by sudden decrease in soil moisture is often associated with water drainage/run off.
  5. Saturation and Field capacity level detection: There are various approaches in literature on how to define the “field capacity” threshold. The current version of the service will use a practical approach (rule of thumb) where “saturation level” will be the soil moisture level after a series prolonged rain event over a crop cycle or else through saturating/irrigating the soil around the sensor. The “field capacity” level will then be defined when the water content levels stop changing quickly, suggesting that removal of water from the soil profile due to gravity has slowed down. These approaches will be further refined incorporating more sophisticated analysis and considering additional parameters like soil types, growth stage of cultivation, season of year, etc.
  6. Stress level detection: Detect the soil moisture threshold that reflects the point that the plant is getting into a stress condition. The stress level is detected when soil moisture trace line levels out and the soil moisture slope of the line becomes shallower.

The development of the OpenAgri irrigation support service is currently ongoing and more details on the status of the service are available here: https://github.com/openagri-eu/irrigation-management

OpenAgri reporting service

The “OpenAgri Reporting service” enables (semi)automated reports generation aiming to  significantly reduce reporting burdens towards a variety of stakeholders having as starting point the following indicative domains: a) generating farm level aggregates addressing policy needs (e.g. new CAP indicators, SAIO pesticide reporting), b) supporting certification (GlobalGAP, organic, etc.), c) other data and reporting required by contractual relations or track and trace legal obligations (e.g. Protected Designation of Origin-PDO). A set of reports are currently under development and will be available with both human and machine-readable outputs.

The reporting service uses the OCSM as a mechanism to harmonise the data collected from different/heterogeneous sources. By having the required data in a common format, it will then be feasible to create different reports by selecting and processing parts of the available datasets, supporting the realization of the “Collect Data Once, Use Many Times” principle.

Current implementation of the services is offering the relevant functionalities via a REST API.

The service consumer can request the creation of a report by selecting the respective datasets to be reused and the type of the report to be generated. The service is executed in an asynchronous mode where the generated report type is stored in the service’s database when ready. The service replies with a unique identifier that can be used for downloading the report. In the current implementation the REST API also supports the uploading of datasets in OCSM JSON-LD format that are used for generating the report.

The development of the OpenAgri reporting service is currently ongoing and more details on the status of the service are available here: GitHub – openagri-eu/reporting-service

OpenAgri Gatekeeper

The “OpenAgri Gatekeeper” serves as an API Gateway with centralised authentication, ensuring secure, efficient, and seamless centralised data exchange between the services in the OpenAgri ecosystem and third-party services. The Gatekeeper responses uses JSON-LD with the OpenAgri Semantic Model to ensure compatibility with modularised and evolving solutions for the agrifood sector, and is deployable on both Edge or Cloud to enable the data sharing through harmonised access to webservices in areas with limited connectivity. It reuses open standards and tools that avoid vendor lock-in, and therefore ensures that the stakeholders maintain full autonomy over their data sharing process.

Data sharing in OpenAgri will be realised through the discovery and use of web services that support data querying. The OpenAgri Gatekeeper acts as a proxy and API composition layer offering:

  1. API Routing: The gatekeeper will proxy requests to the actual service’s API endpoints, and invoke the translation of third-party services ontologies into the OCSM, before returning the results as JSON-LD compliant with the OCSM.
  2. API Composition: The gatekeeper composes the necessary API calls to “Farm Calendar B” on behalf of “Farm Calendar A.” This ensures that the data-sharing process is seamless and transparent to the end-users.
  3. Authentication and Authorisation: The gatekeeper handles the authentication and authorisation of requests, ensuring that only authorised users can access the shared data. This centralised security mechanism simplifies the implementation and enhances the system’s overall security.

The development of the OpenAgri Gatekeeper service is currently ongoing and more details on the status of the service are available here: https://github.com/openagri-eu/GateKeeper

 

OpenAgri Common Semantic Model (OCSM)

In OpenAgri, semantic and syntactic interoperability and data sharing are considered a core design requirements for the services which are being developed. This will ensure wide adoption and easy integration with the agricultural digital solutions developed by the pilots. The semantic model acts as an interoperability enabler by providing clear definitions of API concepts. OpenAgri provides a tailored ontology (formal semantic data model) that is built on and extending widely recognized agrifood semantic standards, and which provides the semantics for all APIs available in all the services. This should be used by all pilots in their implementations. Full details and guidance on how to use the OpenAgri Semantic Model is provided. The current version of the ontology is accessible in the OpenAgri Github.

https://github.com/openagri-eu/OCSM/tree/main

In addition, examples using the OCSM for modeling agri-food information concepts are available here. Examples of scripts that are parsing custom modeled datasets and translating them to OCSM ontology are available here.

© 2025 OpenAgri
Fill the form

Drop us a line

Fill in this form or send us an e-mail with your inquiry.

Or come visit us at:

301 Howard St. #600
San Francisco, CA 94105