<figure><img src="image_1.png" /></figure>

HAL
open science

# RustOnt: An Ontology to Explain Weather Favorable Conditions of the Coffee Rust

Carlos Suarez, David Griol, Cristhian Figueroa, Juan Carlos Corrales, David

Camilo Corrales

► To cite this version:

Carlos Suarez, David Griol, Cristhian Figueroa, Juan Carlos Corrales, David Camilo Corrales. RustOnt: An Ontology to Explain Weather Favorable Conditions of the Coffee Rust. Sensors, 2022, 22 (24), pp.9598. 10.3390/s22249598. [https://doi.org/10.3390/s22249598]

HAL Id: hal-04029056

https://hal.inrae.fr/hal-04029056

Submitted on 14 Mar 2023

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
Article

# RustOnt: An Ontology to Explain Weather Favorable Conditions of the Coffee Rust

Carlos Suarez <fnref n="1" />,*, David Griol <fnref n="2" />,*, Cristhian Figueroa <fnref n="1" /> ID, Juan Carlos Corrales <fnref n="1" /> ID and David Camilo Corrales <fnref n="1" />,<fnref n="3" /> ID

**Abstract:** Crop disease management in smart agriculture involves applying and using new technologies to reduce the impact of diseases on the quality of products. Coffee rust is a disease that factors such as poor agronomic management activities and climate conditions may favor. Therefore, it is crucial to identify the relationships between these factors and this disease to learn how to face its consequences and build intelligent systems to provide appropriate management or help farmers and experts make decisions accordingly. Nevertheless, there are no studies in the literature that propose ontologies to model these factors and coffee rust. This paper presents a new ontology called *RustOnt* to help experts more accurately model data, expressions, and samples related to coffee rust and apply it whilst taking into account the geographical location where the ontology is adopted. Consequently, this ontology is crucial for coffee rust monitoring and management by means of smart agriculture systems. *RustOnt* was successfully evaluated considering quality criteria such as clarity, consistency, modularity, and competence against a set of initial requirements for which it was built.

**Keywords:** coffee; ontologies; pest and disease management; rust; sensors; smart agriculture; software applications; weather

<figure><img src="image_3.png" /></figure>

check for
updates

**Citation:** Suarez, C.; Griol, D.; Figueroa, C.; Corrales, J.C.; Corrales, D.C. RustOnt: An Ontology to Explain Weather Favorable Conditions of the Coffee Rust. *Sensors* **2022**, *22*, 9598. https://doi.org/10.3390/s22249598

Academic Editors: Daniel García Fernández-Pacheco, José Miguel Molina Martínez and Dolores Parras-Burgos

Received: 30 October 2022
Accepted: 26 November 2022
Published: 7 December 2022

**Publisher's Note:** MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

<figure><img src="image_4.png" /></figure>

**Copyright:** © 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## 1. Introduction

Smart or precision agriculture (PA) represents the application of information and communication technology (ICT) solutions in agriculture, such as the use of the Internet of Things (IoT), sensors and actuators, geopositioning systems, big data, unmanned aerial vehicles or drones, robots, etc. [1,2]. These technologies enable PA to present real potential for increased sustainability and agricultural productivity, improved economic returns based on the cost-effective use of inputs while reducing environmental impact, and resource preservation for the more efficient and accurate use of resources through decision support tools (DSTs) [3–5].

Smart agriculture also has clear environmental benefits, for example, through more efficient water use and optimizing the use of phytosanitary treatments for pest and disease management [6,7]. Coffee rust is caused by the fungus Hemileia vastatrix [8]. A coffee plant affected by this fungus presents the characteristics of the disease, such as yellow or orange powder on the underside of the leaves of the coffee plant in the form of spots or dots [9]. This disease causes the defoliation and drying of the branches and limited growth of the coffee plant, which consequently generates important losses in the production and quality of coffee [8]. The evolution of this disease can be favored by deficient agronomic management activities and some climatic conditions such as rain, humidity, temperature and sunlight. Therefore, the correct identification of these factors is crucial in the management of this disease.

<footnote n="1">¹ Departamento de Telemática, Facultad de Ingeniería Electrónica y Telecomunicaciones, Universidad del Cauca, Calle 5 No. 4-70, Popayán 190002, Colombia</footnote>

<footnote n="2">² Department of Software Engineering, University of Granada, CITIC-UGR, Periodista Daniel Saucedo Aranda S/N, 18071 Granada, Spain</footnote>

<footnote n="3">³ Toulouse White Biotechnology (TWB), Institut National de Recherche Pour l'Agriculture, l'Alimentation et l'Environnement (INRAE), 135 Avenue de Rangueil, 31077 Toulouse, France</footnote>

<footnote>* Correspondence: csuarez@unicauca.edu.co (C.S.); dgriol@ugr.es (D.G.)</footnote>
A set of measures represent the status or value of meteorological variables in the field of coffee rust. The heterogeneity of these variables can cause inaccurate values and lead to misunderstandings in the interpretation of input data for models and systems developed to control coffee rust. In this regard, ontologies have been proposed to address data heterogeneity in different application domains [10,11]. Ontologies are a formal representation of knowledge and can be specified by concepts, taxonomies, functions, axioms, and instances [12,13]. Concepts are abstract or concrete representations of the real or fictional of virtually anything. Taxonomies are structures for organizing concepts. Relations are interactions between concepts. Axioms model statements that are asserted to be true in a domain. Finally, instances are elements of a domain attached to a specific concept [12,14].

Several research studies have documented the use of ontologies for agricultural control and monitoring for rice, coffee, and cocoa [15,16]; precision agriculture data [17]; mandarin crop life cycle [18]; coffee supply chain [19]; horticulture [20]; and smart livestock farming [21]. Only two of these studies are directly related to coffee cultivation and focus on modeling available pest and disease data. However, they lack a structure representing the climatic conditions favorable for coffee rust.

This paper proposes a new ontology, called *RustOnt*, for modeling favorable climatic conditions to prevent coffee rust. This ontology groups relevant concepts and instances of meteorological variables used by coffee rust control systems or models. In addition, *RustOnt* supports extensions to more concepts that can be detected later.

*RustOnt* allows experts to access a set of valid expressions, samples and values for each meteorological variable of interest in coffee rust, considering more precisely the geographical region (country) where the ontology can be adopted. This is possible because *RustOnt* has been constructed taking into account research studies on coffee rust models in several countries.

Early warning systems (EWSs) provide a set of articulated capacities, instruments and procedures for the purpose of monitoring, processing and systematizing information on foreseeable hazards in a specific area. The main objective is to reduce the loss of life and environmental damage, contributing to long-term sustainability [22]. The regional early warning system (SRAT) for rust and other important coffee diseases, developed by FONTAGRO for Central American and Caribbean countries, is an international cooperation platform for the development and co-financing of agricultural science and innovation projects [23]. The early warning and recommendation system (SART) to reduce rust growth was developed by the Coffee Institute of Costa Rica (ICAFE), which guarantees the quality and sustainability of coffee, promoting socially and environmentally responsible schemes [24]. *RustOnt* can contribute to the major objectives of these institutions, such as FONTAGRO and ICAFE, for Latin American and Caribbean countries through its integration into the SRAT and SART projects, helping to minimize the heterogeneous information used within the different modules that make up these EWSs.

The remainder of the paper is organized as follows. Sections 2 describe the climatic variables considered after a detailed analysis of related work and the methodology selected to develop the *RustOnt* ontology. Sections 3 and 4 respectively describe the *RustOnt* ontology, the process followed for its evaluation, and the main results obtained. Finally, Section 5 presents the main conclusions and future research lines.

## 2. Materials and Methods

This section presents the knowledge base needed to create our *RustOnt* ontology, the set of climatic variables considered after a detailed analysis of related work, and the methodology selected to develop the ontology.

### 2.1. *Ontological Knowledge Base*

An exhaustive study of the literature on the use of variables related to climatic conditions that can facilitate the detection of the incidence of rust in coffee has been carried out. Following the main steps of the systematic review methodology described in [25],
the string of terms defined for the bibliographic search was (system OR model) AND (detection OR prediction) AND (coffee leaf rust OR coffee rust) AND (weather OR climatic) AND (incidence OR infection). Scopus, IEEE, Elsevier ACM and Springer data repositories were consulted, in addition to the reports and technical guides published by CENICAFE, ICAFE, and OIRSA. A total of 85 studies were obtained, 26 studies were selected, and 59 studies were discarded due the fact that they did not consider climatic variables and were only focused on concepts including the variety, density, main flowering, and initial infection level.

Table 1 shows the climatic variables considered in this study. The table details the climatic variables that favor coffee rust in various countries selected from the bibliographic study, the samples and values considered to develop the computational models, and the country where the research work was conducted. These primary variables (shadow, humidity, temperature, precipitation, and wind) have been considered to develop the knowledge base for the RustOnt ontology. The ontology focuses on the variability of these variables, scales, and specific values defined to measure the impact of rust coffee. Although the meteorological condition Altitude was considered in other studies, this work avoids including it in RustOnt because this condition does not include changes in samples or values for measurement over time. In the following subsection, we describe the methodology used to create RustOnt.

<table><caption>**Table 1.** Climatic variables considered by country and their respective values, scales, and codification.</caption><thead><tr><th>Climatic Variable</th><th>Values, Scales, and Codification</th><th>Country</th></tr></thead><tbody><tr><td rowspan="5">Shadow</td><td>0 = full sun, 1 = Scattered shadows</td><td>El Salvador [26], Republic of Costa Rica [26-28]</td></tr><tr><td>Shade percentage</td><td>Colombia [29,30]</td></tr><tr><td>Not shade = 100%, fine shade = 99-70%, medium shade = 69-40%, dense shade = 39-20%</td><td>Uganda [31]</td></tr><tr><td>Number of shade trees per hectare = shade trees/Ha</td><td>Uganda [32]</td></tr><tr><td>average daily hours (&gt;90%), average night hours (&gt;90%), sum daily hours (&gt;90%), sum night hours (&gt;90%)</td><td>Colombia [30]</td></tr><tr><td rowspan="7">Humidity</td><td>Daily average relative humidity</td><td>Colombia [30,33]</td></tr><tr><td>Number night hours (&gt;95%)</td><td>Uganda [32]</td></tr><tr><td>Minimum daily humidity (daily periods 14, 7, 4 and 3), average daily humidity (daily Periods 14, 7, 4 and 3)</td><td>Republic of Costa Rica [28]</td></tr><tr><td>Amplitude relative humidity daily, leaf wetness time 6am-11am per day, moisture time in leaves (12am-6pm)/day</td><td>Republic of Costa Rica [34]</td></tr><tr><td>Relative humidity under shade/hour, relative humidity full sun/hour</td><td>Republic of Costa Rica [27]<br>Mexico, Belize, Guatemala, El Salvador, Honduras, Nicaragua, Republic of Costa Rica, Panama, Dominican Republic [35]</td></tr><tr><td>Number of wet days/month</td><td>Ethiopia [36]<br>Colombia [37]</td></tr><tr><td>Yearly percentage (&gt;80% monthly or quarterly), (&lt;80% monthly or quarterly)</td><td>Brazil [38]</td></tr><tr><td rowspan="3">Number of hours monthly (&gt;90%) and (&gt;80%), number days with number hours (&ge;90% and &gt;6 h/month) and (&ge;80% and &gt;6 h/month)</td><td>Daily average relative humidity, number days relative humidity (&gt;80%), number days relative humidity (&gt;90%)</td><td>Brazil [39]</td></tr><tr><td>Monthly average, number hours (&gt;90% monthly) and (&gt;80% monthly), number days with number hours (&ge;90% and &gt;6 h/month) and (&ge;80% and &gt;6 h/month)</td><td>Brazil [40]</td></tr><tr><td>Number of hours monthly (&ge;90% and &gt;6 h/month) and (&ge;80% and &gt;6 h/month)</td><td>Brazil [40]</td></tr></tbody></table>
<table><caption>**Table 1. Cont.**</caption><thead><tr><th>Climatic Variable</th><th>Values, Scales, and Codification</th><th>Country</th></tr></thead><tbody><tr><td rowspan="10"></td><td>Monthly or quarterly average, average number of hours relative humidity (&gt;95% monthly or quarterly), average and maximum number night relative humidity (&gt;95% monthly or quarterly)</td><td>Brazil [41]</td></tr><tr><td>Average daytime hours (&gt;95%), average and sum night hours (&gt;95%), sum daylight hours (&gt;95%)</td><td>Brazil [42]</td></tr><tr><td>Number of daytime hours (&gt;95%), number of night hours (&gt;95%)</td><td>Brazil [43,44]</td></tr><tr><td>Average relative humidity last 2 months, relative humidity (&gt;90% last 2 months)</td><td>Colombia [29]</td></tr><tr><td>Average during day (&gt;90%), average overnight (&gt;90%)</td><td>Colombia [30]</td></tr><tr><td>Daily maximum, daily minimum, daily average</td><td>Colombia [30,33]</td></tr><tr><td>Thermal amplitude</td><td>Mexico, Belize, Guatemala, El Salvador, Honduras, Nicaragua, Republic of Costa Rica, Panama, Dominican Republic [35]</td></tr><tr><td>Daily maximum, minimum and average (daily periods of 14, 7, 4 or 3)</td><td>Republic of Costa Rica [28]</td></tr><tr><td>Yearly average</td><td>Ethiopia [36]</td></tr><tr><td>Variation of the temperature last month</td><td>Colombia [29]</td></tr><tr><td>Daily average, night average, daily minimum, daily maximum, daily range, number of hours (temperature is below dew point at night)</td><td>Uganda [32]</td></tr><tr><td>Daily air temperature: minimum, maximum and thermal amplitude, daily leaf temperature: minimum, maximum and thermal amplitude</td><td>Republic of Costa Rica [34]</td></tr><tr><td>Thermal amplitude: (semi-annual/quarterly periods) = Temp. Max – Temp. Min, small (temperatures &lt; 12), large (temperature &gt; 12)</td><td>Colombia [37]</td></tr><tr><td>Monthly: minimum-maximum; annual: minimum average-maximum average</td><td>Rwanda [45]</td></tr><tr><td>Accumulated monthly (maximum, minimum, and average), seasonal period (accumulated minimum, accumulated maximum, average, monthly variation, seasonal variation and climatological variation)</td><td>Guatemala [46]</td></tr><tr><td>Daily minimum, daily maximum</td><td>Papua New Guinea [47]</td></tr><tr><td>Average daily maximum temperature, average daily minimum temperature</td><td>Brazil [38]</td></tr><tr><td>Monthly average, monthly minimum, monthly maximum, average temperature, monthly minimum, monthly maximum, average temperature with relative humidity (&gt;80%), average temperature with relative humidity (&gt;90%)</td><td>Brazil [39]</td></tr><tr><td>Monthly average, monthly minimum, monthly maximum</td><td>Brazil [40]</td></tr><tr><td>Average, maximum temperature, average minimum and minimum temperatures (monthly, quarterly, seasons), average temperature with hours of relative humidity (&gt;95% monthly, quarterly, seasons), maximum temperature hours with relative humidity (&gt;95% monthly, quarterly, seasons)</td><td>Brazil [41]</td></tr><tr><td>Average daily temperature with relative humidity (&gt;95%), average temperature of daily maximums, average temperature of daily maximums (incubation period), average daily temperature, average daily temperature (incubation period), average temperature of daily minimums, average temperature of daily minimums (incubation period)</td><td>Brazil [42]</td></tr><tr><td>Average daytime temperature relative humidity (&gt;95%), average night temperature relative humidity (&gt;95%)</td><td>Brazil [43,44]</td></tr><tr><td rowspan="5">Precipitation</td><td>Number of days (precipitation &gt; 1mm, daily periods 14, 7, 4 or 3), daily precipitation (daily periods 14, 7, 4 or 3)</td><td>Republic of Costa Rica [28]</td></tr><tr><td>Number of rainy days last month, accumulated rainfall last 2 months, accumulated night rainfall last month</td><td>Colombia [29]</td></tr><tr><td>Average daily rainfall, accumulated average daily rainfall</td><td>Colombia [30]</td></tr><tr><td>Annual precipitation</td><td>Ethiopia [36]</td></tr><tr><td>Monthly precipitation</td><td>Rwanda [45]</td></tr></tbody></table>
<table><caption>**Table 1.** *Cont.*</caption><thead><tr><th>Climatic Variable</th><th>Values, Scales, and Codification</th><th>Country</th></tr></thead><tbody><tr><td rowspan="10">Climatic Variable</td><td>Total daily rainfall, duration of daily precipitation</td><td>Republic of Costa Rica [34]</td></tr><tr><td>Rainfall(mm) every hour daily, number of daily hours without precipitation (&lt;0.1 mm), number of daily hours of precipitation (&gt;0.1 mm)</td><td>Republic of Costa Rica [27]</td></tr><tr><td>Accumulated monthly, accumulated seasonal</td><td>Guatemala [46]</td></tr><tr><td>Total daily (mm), number of days of precipitation (≥1 mm and &lt;9 mm), number of days of precipitation (&gt;10 mm)</td><td>Brazil [38]</td></tr><tr><td>Monthly total, number of days with precipitation (&gt;1 mm/month), number of days with precipitation (≥20 mm/month)</td><td>Brazil [39]</td></tr><tr><td>Number of days with precipitation (≥1 mm/month), number of days with precipitation (≥20 mm/month)</td><td>Brazil [39,40]</td></tr><tr><td>Average accumulated precipitation (monthly, quarterly, seasons), accumulated precipitation (monthly, quarterly, seasons)</td><td>Brazil [41]</td></tr><tr><td>Number of days with precipitation (≥1 mm), average daily, average of maximum, accumulated daily</td><td>Brazil [42]</td></tr><tr><td rowspan="3">Wind</td><td>Average daily speed (m/s)</td><td>Colombia [30]</td></tr><tr><td>Every hour (m/s)</td><td>Republic of Costa Rica [27]</td></tr><tr><td>Average daily speed Hm/h, sum of daily average speed Hm/h</td><td>Brazil [42]</td></tr></tbody></table>

## 2.2. Overview of Methodologies to Build Ontologies

We have followed the work proposed in [48] to select the best methodology to develop the *RustOnt* ontology. Their work compares six methodologies to build ontologies (Uschold and Kings [49], Methontology [50], On-To-Knowledge [51], Noy, and McGuinness [52], Terminae [53], and Termontography [54]) based on the following criteria:

* C1: Intended audience that uses the ontology methodology.

* C2: Level of detail (scale 1–5). The methodology recommends the methods and techniques to use to perform the different activities.

* C3: Associated software application. The methodology recommends using a software application to build the ontology.

* C4: Conceptualization phase. The methodology organizes and structures the knowledge, independent from the knowledge representation paradigms and ontology languages. The representations must be comprehensible by domain experts and ontology developers through diagrams and tables.

Table 2 shows the previously described methodologies to build ontologies and the four criteria used for their comparison.

<table><caption>**Table 2.** Comparison of methodologies to build ontologies; source: [48].</caption><thead><tr><th>Methodology</th><th>C1</th><th>C2</th><th>C3</th><th>C4</th></tr></thead><tbody><tr><td>Uschold and Kings [49]</td><td>Ontology developers</td><td>3</td><td>No</td><td>No</td></tr><tr><td>Methontology [50]</td><td>Ontology engineers and researchers</td><td>5</td><td>WebODE and Protégé</td><td>Yes</td></tr><tr><td>On-To-Knowledge [51]</td><td>Ontology developers</td><td>4</td><td>OntoStudio</td><td>Yes</td></tr><tr><td>Noy and McGuinness [52]</td><td>Ontology developers</td><td>5</td><td>Protégé</td><td>No</td></tr><tr><td>Terminae [53]</td><td>Knowledge engineers and terminologists</td><td>4</td><td>Terminae</td><td>Yes</td></tr><tr><td>Termontography [54]</td><td>Ontology builders, terminographers, and lexicographers</td><td>3</td><td>Termontography<br>Workbench</td><td>No</td></tr></tbody></table>

Based on the results of the comparison shown in Table 2, Methontology accomplishes the four criteria. This methodology is the most suitable for building ontologies due to its highly detailed instructions, good representation through charts and tables, and compatibility with popular ontology editors.

Methontology defines five phases or main tasks to be completed: (1) glossary of terms, (2) concept taxonomies, (3) ad-hoc binary relation diagrams, (4) concept dictionary,
and (5) rules. The following section describes how *RustOnt* was created following the aforementioned phases.

### 3. The RustOnt Ontology

This section describes the process followed to develop the *RustOnt* ontology. This process has involved the selection of the set of terms included in the ontology, the definition of the taxonomy, ad hoc relationships, the concept dictionary, instances and class attributes, and rules.

#### 3.1. Glossary of Terms

Table 3 shows the key terms included in *RustOnt*, as well as their descriptions, in natural language, and specific types (class, relation or attribute). Where a class represents a general term that involves similar characteristics for common individuals [55], a relation represents the association between individuals or classes [56], and the attributes are specific features associated to a class [57].

<table><caption>**Table 3.** Description and type (class, relation, or attribute) of the *RustOnt* terms.</caption><thead><tr><th>Name</th><th>Description</th><th>Type</th></tr></thead><tbody><tr><td>Mapping</td><td>Types of transformation that the ontology supports</td><td>Class</td></tr><tr><td>Lexical</td><td>Subclass of Mapping used to assign numerical scales to variables expressed as text</td><td>Class</td></tr><tr><td>Sample</td><td>Subclass of Mapping used to show valid values for weather variables depending on a specific country</td><td>Class</td></tr><tr><td>Country</td><td>Countries where the coffee rust has been studied</td><td>Class</td></tr><tr><td>Weather conditions</td><td>Samples of weather variables that affect coffee rust</td><td>Class</td></tr><tr><td>Humidity, precipitation, shadow, temperature, wind</td><td>Specific class in the set of weather conditions</td><td>Class</td></tr><tr><td>Value</td><td>This field can contain a specify type or unit (e.g., %, °C)</td><td>Attribute</td></tr><tr><td>Conditions</td><td>Restrictions of type greater than or less than, equal and if for the values of weather variables</td><td>Attribute</td></tr><tr><td>Expression</td><td>Mathematical description for the values of weather variables</td><td>Attribute</td></tr><tr><td>IdCountry</td><td>Alphabetic code associated with an instance of the Country class</td><td>Attribute</td></tr><tr><td>Range</td><td>Limits for the values of weather variables</td><td>Attribute</td></tr><tr><td>Synonyms</td><td>Lexical expressions for a value of an weather variable</td><td>Attribute</td></tr><tr><td>Time</td><td>Timestamp of a value of an weather variable</td><td>Attribute</td></tr><tr><td>Unit</td><td>Units used to specify the values of an weather variable</td><td>Attribute</td></tr><tr><td>Converts</td><td>Transformations used for weather variables</td><td>Relation</td></tr><tr><td>Has</td><td>Indicates the existence of weather variables for a country</td><td>Relation</td></tr></tbody></table>

#### 3.2. Concepts Taxonomies

A taxonomy formalizes the hierarchical relationships among concepts and specifies the term to be used to refer to each. It prescribes the structure and terminology of the ontology and provides a graphical view of concepts. The taxonomy selected for *RustOnt* employs a graph with rectangles representing classes, ovals as instances created from these classes, and lines denoting relationships. To develop the taxonomy, we have elaborated a glossary of terms verifying that there are not common instances among the concepts. In addition, we defined three general taxonomies for the following classes: Country, Mapping, and Weather\_conditions.

The Country class presents a taxonomy that contains the countries where *RustOnt* can be applied, as Figure 1 shows. The Mapping class represents the set of possible transformations that can be performed with *RustOnt*. This class is used to transform textual values to their corresponding similar or matching values for an weather variable. The Sample class contains a type of transformation to obtain valid values or samples with units of time (e.g., day, monthly, seasonal, yearly, etc.), speed wind, temperature, humidity, or shadow conditions (e.g., percent, mm, Celsius, h/m, etc.) according to the computer
models for the detection of coffee rust infections in each country. These values are instances
of the weather variables supported by the *RustOnt* ontology.

<figure><img src="image_5.png" /><figcaption>**Figure 1.** Taxonomy for the Country class.</figcaption></figure>

The Lexical class denotes a type of transformation to obtain numerical values according to the synonym text or unit of time of the weather variables supported by *RustOnt*. The taxonomy to mapping is described in Figure 2, where Sample and Lexical have been defined as subclasses.

<figure><img src="image_6.png" /><figcaption>**Figure 2.** Taxonomy for the Mapping class</figcaption></figure>

Figure 3 presents the Weather conditions class, in which there is an inheritance relationship with the Humidity, Temperature, Shadow, Precipitation, and Wind concepts.

<figure><img src="image_7.png" /><figcaption>**Figure 3.** Taxonomy of the Weather conditions concept.</figcaption></figure>

### 3.3. Ad Hoc Binary Relation Diagrams

The ad hoc binary relation diagrams represent the relationships that connect a set of root concepts of the same or different taxonomies. Where each relation has a domain and range that should be assigned to the classes involved avoiding imprecise or over-specification. Concepts are represented with rectangles, and dotted lines denote their relations.

The complete set of ad hoc relationships between the taxonomic concepts of the *RustOnt* ontology were described for this task. Figure 4 represents two existing binary relationships between the three main classes that were considered in the ontology.

* A country (1..1) has weather conditions (1..*): countryHasWeather

* A mapping (1..1) converts weather conditions (1..*): mappConvertsWeather
<figure><img src="image_8.png" /><figcaption>**Figure 4.** Ad hoc binary relation diagram defined for *RustOnt*.</figcaption></figure>

In addition, Table 4 presents the inverse relationships of the ad hoc binary relationships for the *RustOnt* ontology.

<table><caption>**Table 4.** Reverse relations of ad hoc binary relations from RustOnt.</caption><thead><tr><td>Relation Name</td><td>Inverse Relation</td></tr></thead><tbody><tr><td>Country has weather conditions</td><td>Weather conditions of a country</td></tr><tr><td>Mapping converts weather conditions</td><td>Weather conditions are used to apply a mapping</td></tr></tbody></table>

### 3.4. Concept Dictionary

The concept Dictionary is used to specify the characteristics for each of the classes defined in *RustOnt*, as shown in Table 5.

<table><caption>**Table 5.** Concept dictionary for the Country, Mapping, Sample, Lexical, Weather conditions, Humidity, Temperature, Shadow, Precipitation, and Wind variables</caption><thead><tr><td>Class Name</td><td>Class Attributes</td></tr></thead><tbody><tr><td>Country</td><td>Name and 3-digit international code that represents the country.</td></tr><tr><td>Mapping</td><td>Class type transformation can be lexical or sample.</td></tr><tr><td>Sample, lexical</td><td>A subclass of mapping that contains the converts relation.</td></tr><tr><td>Weather conditions</td><td>A class type for weather conditions.</td></tr><tr><td>Humidity, temperature, precipitation, wind</td><td>Attributes: scale, sample, conditions, minimum and maximum ranges, synonyms, units of time and units of the value of the variable.</td></tr><tr><td>Shadow</td><td>Attributes: synonyms, the correspondence value, expressions, and the units of the value of the variable.</td></tr></tbody></table>

The Country class includes the name and three-digit international code features. The instances of this class correspond to countries that consider some variables belonging to the Weather Conditions class, which can be Temperature, Humidity, Shade, Precipitation, and Wind. The Mapping class is a type of class that denotes a transformation or mapping and is divided into two subclasses Lexical or Sample that applies the Converts relationship to transform the instances of the Weather Conditions class. The Weather Conditions class includes weather variables considered by *RustOnt*, e.g., the Humidity, Precipitation, Temperature, and Wind classes. These classes include different characteristics, such as conditions (greater than, less than), scale (average, minimum, maximum, etc.), minimum and maximum ranges, synonyms, time expressions (month, quarter, semester, etc.), and other units used by these variables. In addition, the Shadow class includes the following characteristics; synonyms, values, and expressions (equations and units).

### 3.5. Instance and Class Attributes

This task has been used to integrate the *RustOnt* instances selected from the literature survey described in Section 2.1. As described above, the main objective of this search was to obtain the most important climatic conditions used in computer models and technical
reports to detect the incidence of coffee rust. Table 6 shows the instances of the RustOnt ontology and the bibliographic references that support their selection.

<table><caption>**Table 6.** Instances and class attributes for the Country, Sample, Lexical, Humidity, Temperature, Shadow, Precipitation, and Wind variables.</caption><thead><tr><td>Class Name</td><td>Instances</td></tr></thead><tbody><tr><td>Country</td><td>20 instances [26–47]</td></tr><tr><td>Sample</td><td>142 instances [27–47]</td></tr><tr><td>Lexical</td><td>32 instances [26–28,31,58–60]</td></tr><tr><td>Humidity</td><td>42 instances [27–30,32–44]</td></tr><tr><td>Temperature</td><td>67 instances [28–30,32–47]</td></tr><tr><td>Shadow</td><td>8 instances [26–32]</td></tr><tr><td>Precipitation</td><td>37 instances [27–30,33,34,36,38–42,45,46,59]</td></tr><tr><td>Wind</td><td>17 instances [27,30,42,60]</td></tr></tbody></table>

This task also describes the instance attributes created in RustOnt. Table 7 details the name of each attribute, corresponding classes, and data types (e.g., string, double, etc.).

<table><caption>**Table 7.** Attributes for the hasSynonyms, hasScale, maxRange, minRange, hasUnit, hasExpresion instances.</caption><thead><tr><td>Instance Attributes</td><td>Class Name</td><td>Type</td></tr></thead><tbody><tr><td>hasIdCountry</td><td>Country</td><td>xsd:string</td></tr><tr><td>justice</td><td>Lexical</td><td>xsd:string</td></tr><tr><td>hasExpresion</td><td>Shadow, Temperature, Humidity</td><td>xsd:string</td></tr><tr><td>hasTime</td><td>Precipitation, Temperature, Wind, Humidity</td><td>xsd:string</td></tr><tr><td>hasSynonyms, hasScale, hasConditions, hasUnit</td><td>Precipitation, Shadow, Temperature, Wind, Humidity</td><td>xsd:string</td></tr><tr><td>hasRange (maxRange, minRange)</td><td>Precipitation, Shadow, Temperature, Wind, Humidity</td><td>xsd:double</td></tr></tbody></table>

### 3.6. Rules

Rules define a set of explicit rules to constrain the correct operation of RustOnt. This section describes the rules that are stored in the ontology, including the natural language description and the expression that formally describes each of them. To represent the set of rules, the semantic rules language (SWRL) was used, which allows expressing OWL concepts (classes, attributes, and instances) combined with RuleML to have a high-level syntax. Rule expressions follows the structure:

`<antecedents or conditions> (body) → <consequence> (head)`

where antecedents or conditions are conjunctions of atoms $A_1 \land \dots \land A_n$ and functions $F_1(?A_1, ?A_2) \land \dots \land F_n(?A_n)$, variables are represented with the character '?' using the notation $?A_n$, and the consequence is a single atom.

A total of five rules have been defined for RustOnt. The rule (1) states that a Lexical class defines only instances that match a 'has' relation applied:

$$ Lexical(?l) \land has(?h, ?l) \rightarrow sqwrl : select(?l, ?h) \quad (1) $$

Rule (2) is used to list Lexical transformations corresponding to each Country instance:

$$ Country(?a) \land has(?h, ?a) \land Lexical(?l) \rightarrow sqwrl : select(?a, ?h, ?l) \quad (2) $$

Rule (3) lists only instances of Sample type that match a 'has' relation applied:

$$ Sample(?s) \land has(?h, ?s) \rightarrow sqwrl : select(?s) \quad (3) $$

Rule (4) is only used to list instances of Sample type for each of the Country instances:

$$ Country(?a) \land has(?a, ?h) \land Sample(?s) \rightarrow sqwrl : select(?a, ?h, ?s) \quad (4) $$
Rule (5) restricts the converts and 'has' relations on one same instance where they have been applied:

$$ converts(?c, ?l) \wedge has(?h, ?s) \rightarrow swrlb : notEqual(?l, ?s) \quad (5) $$

### 3.7. Ontology Editor

RustOnt has been modeled with the Protégé ontology editor. Protégé supports OWL 2, RDF, and XML schemes to create and edit ontologies. This software provides logical reasoners, such as HermiT and Pallet, to check for inconsistencies and support inference over the ontologies [61]. Protégé supports two types for ontology modeling: Protégé-Frames and Protégé-OWL [62]. This editor also provides a graphical user interface with tabs to model ontologies. The OntoGraf tab allows visualizing classes, instances, attributes and relationships in a graph. The entities tab allows managing data types, individuals and properties of annotations, data, classes, and objects. The individuals tab allows managing the instances of each class declared in the ontology. The DL query tab allows searching a classified ontology in a simple way using DL queries. The SPARQL tab supports SPARQL queries that provide a syntax for manipulating RDF graphs. Protégé also provides other tools that enable visualization and makes ontology maintenance easier.

The RustOnt ontology is publicly available at the following link: https://drive.google.com/file/d/1IoabvKSYBoVF1rM-P1lxTHh7X9GXbGk4/view?usp=sharing (accessed on 1 December 2022).

## 4. Evaluation

RustOnt has been evaluated to ensure the correct construction of its contents, definition, and implementation according to the requirements of the ontology and the competence issues that demonstrate the conformity between the actual model and the formal model [56]. In addition, we completed the evaluation of the competence and quality requirements that verify the correct behavior of the ontology with respect to the software environment, the documentation and reference framework created for its life cycle [63].

### 4.1. Ontology Competency

The competency of an ontological model denotes its ability to answer a set of questions [64]. This criterion is one of the most commonly used to evaluate ontologies [65–67] and to verify whether a model is complete with respect to a set of questions related to its competence [63].

The evaluation of this criterion is crucial to verify that a representation model is complete with respect to a set of competency questions [63]. The ontologist engineers and domain experts establishes the questions to be answered once the ontology has been implemented [63]. These questions are benchmarks to determine whether the model is sufficiently complete to represent the questions and solutions [64].

The competency evaluation of an ontology uses description logic (DL) axioms and SPARQL queries to model and answer an initial set of competency questions. We propose five competency questions to evaluate RustOnt (Q1–Q5). The evaluation runs on a laptop Asus S510U, ASUSTek cumputer Inc. Cali, Colombia with an Intel Core i7-8550U processor, 8 GB RAM, and a 64-bit Windows 10, @ 2019 Microsoft corporation operating system.

Q1 What types of transformation or mapping are applicable to weather variables in computational models of coffee rust?

The expected response of the ontology is based on the knowledge obtained through the bibliographical review of related work, identifying two ways of representing the values for the different variables [26–47,58–60].

Lexical involves the use of different ranges to determine the value of a weather variable using a lexical expression or vocabulary [26–28,31,58–60]. Sample refers to the different samples or measurements that each work uses for each of the weather variables, in order to obtain the values with which their computational models have been developed [27–47].
The following DL axiom (Equation (6)) allows describing the ontology's answer to the competency question Q1:

$$TBox = \{ Mapping \equiv \exists hasName.xsd : string \sqcap \exists hasDescription.xsd : string, \\ \qquad Sample \subseteq Mapping, Lexical \subseteq Mapping \} \qquad (6)$$

Figure 5 shows the sample and lexical transformation types supported by the designed ontology. These are subclasses of the Mapping class, which represents the types of transformation or mapping allowed by the ontology.

Q2 What are the weather variables taken into account in the computational models of coffee rust?

From the bibliographic review, the weather variables Humidity, Precipitation, Shadow, Temperature, and Wind were identified as the most important ones for the development of computational models for the management of coffee rust [26-47,58-60].

The following DL axiom (Equation (7)) allows describing the response of the ontology to the competency question Q2:

$$TBox = \{ Weather\_conditions \equiv \exists hasName.xsd : string \sqcap \exists hasDescription.xsd : string, \\ \qquad Humidity \subseteq Weather\_conditions, Temperature \subseteq Weather\_conditions, \\ \qquad Precipitation \subseteq Weather\_conditions, Shadow \subseteq Weather\_conditions, \\ \qquad Wind \subseteq Weather\_conditions \} \qquad (7)$$

Using Protégé 5's Pellet reasoner and executing a DL query (see Figure 6), the weather variables supported by the evaluated ontology are shown: Humidity, Precipitation, Shadow, Temperature, and Wind. There are subclasses of the Weather\_conditions class, which groups all the different weather variables supported by the ontology.

To solve the competency questions Q3, Q4, and Q5, a scenario is proposed for each question. The scenario approach is used to represent the queries in an ontology and modeled using the SPARQL language [63,67,68]. The solution to the proposed scenario indirectly answers each competency question.

The following are the competency questions, the scenarios that are used as a tool to answer, the expected response against the scenario, the SPARQL query that represents the solution, and the result that is obtained from the ontology.

Q3 What are the meteorological variables considered by each country in the computational models of coffee rust?

Scenario 1: In the South American country of Colombia, list the meteorological variables considered in the computational models developed for coffee rust. According to the bibliographical review, the meteorological variables considered by the computational models of coffee rust in Colombia are Temperature, Shadow, Humidity, Precipitation, and Wind, which are used in [29,30,33,37].

The following SPARQL query corresponds to the solution for Scenario 1:

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

PREFIX owl: <http://www.w3.org/2002/07/owl#>

PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>

PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

PREFIX rustont: <http://www semanticweb org asuscolombia ontologies 2021/7/
rustOnto#>

SELECT DISTINCT ?object2

WHERE {

rustont:Colombia rustont:has ?object1.

?object1 rdf:type ?object2.

FILTER(?object2 != owl:NamedIndividual)

Table 8 presents the results obtained using RustOnt for the query corresponding to Scenario 1.
Scenario 2: In the African region of Uganda, list the weather variables considered in the computational models developed for coffee rust.

According to the bibliographical review, the weather variables considered by the computational models of coffee rust in Uganda are Temperature, Shadow, and Humidity [31,32]. The following SPARQL query corresponds to the solution for Scenario 2:

```sparql
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rustont: <http://www semanticweb.org/asuscolombia/ontologies/2021/7/rustOnto#>
```

```sql
SELECT DISTINCT ?object2
WHERE {
    rustont:Uganda rustont:has ?object1.
    ?object1 rdf:type ?object2.
    FILTER(?object2 != owl:NamedIndividual)
}
```

Table 9 presents the results obtained for the query corresponding to Scenario 2 in *RustOnt*.

Other scenarios can be proposed for countries such as Brazil, Republic of Costa Rica, Mexico, Belize, Guatemala, El Salvador, Honduras, Nicaragua, Panama, Dominican Republic, Ethiopia, Rwanda, and Papua New Guinea. These countries are also considered in *RustOnt* so that the proposed scenarios for these countries also find a response that satisfies competency question Q3.

Given a weather variable, what are the allowed values?

Scenario 3: A user needs to know all the values supported by the ontology for the environment variable shade.

According to the literature review, the allowed values for the environment variable shade are shade level, number of trees, no shade, thin shade, medium shade, dense shade, full sun, and scattered shadows [26–32]. The following SPARQL query corresponds to the solution of Scenario 3:

```sparql
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rustont: <http://www semanticweb.org/asuscolombia/ontologies/2021/7/rustOnto#>
```

```sql
SELECT ?value ?wheather
WHERE {
    ?sample rustont:converts ?value.
    ?value rdf:type ?wheather.
    FILTER(?wheather = rustont:Shadow)
}
```

Table 10 shows the result of executing in *RustOnt* the query corresponding to Scenario 3.

In addition, for the supported values of the Shadow variable, the attributes of each of the values can also be obtained through a SPARQL query as presented in Figure 7. For example, the attributes for the Fine_Shadow value that have properties such as hasUnit, maxRange, minRange that indicate attributes such as the supported unit which is "Percentage", the minimum range "70" and the maximum range "99" supported for the Fine_Shadow value of the Shadow environment variable.

Figure 7 shows how the attributes of each of the values supported by the Shadow variable can be obtained through a SPARQL query. For instance, the attributes for the Fine_Shadow value having properties such as hasUnit (e.g., "Percentage"), maxRange (e.g., 99), and minRange (e.g., 70).

Q4
Q5

New scenarios can be constructed to query any of the weather variables (Temperature, Shadow, Precipitation, Wind, and Humidity). These scenarios can be evaluated using SPARQL queries that adequately satisfy the competency question Q4.

Given a value for an environment variable, what are the corresponding values it can take depending on the selected region?

Scenario 4: A user in the African country of Uganda using *RustOnt* needs to know what values are allowed for the weather variable temperature.

The values reported in the bibliographical review for the weather variable Temperature in Uganda are: daily mean, night mean, daily minimum, daily maximum, daily range, and number of hours when the temperature is below the dew point.

The following query in SPARQL corresponds to the solution for Scenario 4:

```sparql
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rustont: <http://www semanticweb org asuscolombia ontologies 2021/7/
rustOnt#>
```

```sql
SELECT DISTINCT ?sample ?environmental
```

WHERE {

rustont:Uganda rustont:has ?sample.

?converts rustont:converts ?sample.

?sample rdf:type ?enviromental

FILTER(?enviromental = rustont:Temperature)

}

Table 11 shows the result obtained after executing the query corresponding to Scenario 4 in the *RustOnt* ontology.

In addition, Figure 8 shows the SPARQL query with the attributes for the valid samples corresponding to Uganda. For instance, the example Dew_Point shows the hasUnit property with the value "Degrees Centigrade", hasTime with the value "Night", and hasConditions with value "Temperature < Dew Point".

As Scenario 4 was designed, it is possible to construct similar scenarios for other countries included in *RustOnt* by indicating the corresponding values for the weather variables (Temperature, Wind, Shade, Precipitation, and Humidity) on which SPARQL queries are desired. The results for similar scenarios show the details of the valid samples, as previously described for scenario 4. This allows satisfying the competence question Q5.

As demonstrated for each of the initial competency questions, which have been solved through DL modeling or SPARQL queries and their respective answers, it is possible to conclude that *RustOnt* satisfies the competency requirement, as it provides a solution to a set of questions for which it developed.

The results obtained demonstrate the effectiveness of each of the queries in satisfying the competency questions. Very fast response times ranging from 25 ms to 194 ms were obtained for the competency questions Q1, Q2, Q3, and Q4 and 264 ms for the competency question Q5, due to the number of instances supported by the ontology.

As the number of instances increases, these times will surely change, however, this would be beyond the scope of the studies reviewed to date to create the instances for *RustOnt*.

## 4.2. *Quality Requirement*

The quality assessment of an ontology can be based on several principles for ontology design [69–71]. These principles include specific criteria and guidelines for designing and evaluating ontologies. Thanks to these principles, it is possible to determine the quality of an ontology based on the degree to which it meets the design criteria established from its design [63]. The criteria considered for the quality assessment of *RustOnt* are elaborated upon below.
<figure><img src="image_9.png" /><figcaption>**Figure 5.** Execution of the DL mapping query using the Protégé editor and corresponding result, execution time was 25 ms.</figcaption></figure>

<figure><img src="image_10.png" /><figcaption>**Figure 6.** Weather conditions query using the Protégé editor and corresponding result, execution time was 40 ms.</figcaption></figure>

<table><caption>**Table 8.** Query result for scenario 1, using Protégé 5's Pellet reasoner, execution time was 33 ms.</caption><thead><tr><th>Object2</th></tr></thead><tbody><tr><td>Temperature</td></tr><tr><td>Shadow</td></tr><tr><td>Humidity</td></tr><tr><td>Precipitation</td></tr><tr><td>Wind</td></tr></tbody></table>
<table><caption>**Table 9.** Query result for scenario 2, using Protégé 5's Pellet reasoner, execution time was 38 ms.</caption><thead><tr><th>Object2</th></tr></thead><tbody><tr><td>Temperature</td></tr><tr><td>Shadow</td></tr><tr><td>Humidity</td></tr></tbody></table>

<table><caption>**Table 10.** Query result for Scenario 3 using Protégé. Weather indicates the name of the class and Value denotes the allowed values for the class, execution time was 74 ms.</caption><thead><tr><th>Weather</th><th>Value</th></tr></thead><tbody><tr><td>Shadow</td><td>Number trees</td></tr><tr><td>Shadow</td><td>Dense shadow</td></tr><tr><td>Shadow</td><td>Full sun</td></tr><tr><td>Shadow</td><td>Shadow level</td></tr><tr><td>Shadow</td><td>Sparse shadows</td></tr><tr><td>Shadow</td><td>No shadow</td></tr><tr><td>Shadow</td><td>Media shadow</td></tr><tr><td>Shadow</td><td>Fine shadow</td></tr></tbody></table>

<figure><img src="image_11.png" /><figcaption>**Figure 7.** Query in SPARQL detailing the attributes of the supported values for the Shadow variable (Protégé 5's Pellet reasoner, execution time was 194 ms).</figcaption></figure>

<table><caption>**Table 11.** Result of the query for Scenario 4. Each sample line shows the values accepted for the weather variable Temperature (Protégé 5's Pellet reasoner, execution time was 110 ms).</caption><thead><tr><th>Sample</th><th>Weather</th></tr></thead><tbody><tr><td>Minimum</td><td>Temperature</td></tr><tr><td>Mean</td><td>Temperature</td></tr><tr><td>Dew_point</td><td>Temperature</td></tr><tr><td>Range</td><td>Temperature</td></tr><tr><td>Maximum</td><td>Temperature</td></tr></tbody></table>

### 4.2.1. Clarity

According to [56,71], conceptual clarity can be defined as the capability of the ontology for the effective communication of the intended meaning of defined terms. For this purpose, formal axioms are defined that can be complete (necessary and sufficient conditions) or partial (necessary or sufficient conditions).
<figure><img src="image_12.png" /><figcaption>**Figure 8.** Query details the attributes of the valid samples for the query in Scenario 4 (Protégé 5's Pellet reasoner, execution time was 264 ms).</figcaption></figure>

To satisfy this quality criterion, the ontology was first modeled by defining the formal axioms that were then implemented. Hierarchies were identified, data and object properties were designed and formally declared using a descriptive logic notation. Then, the main concepts of the ontology were defined. Lexical is a type of transformation that can be applied to some variables used by computational models for rust management in each country. It is defined with the pattern "Entity has name and description". Lexical has the Precipitation, Wind, Temperature, and Shadow subclasses (Equation (8)).

$$ TBox = \{ Lexical \equiv \exists hasName.xsd : string \sqcap \exists hasDescription.xsd : string, \\ Precipitation \subseteq Lexical, Temperature \subseteq Lexical, Wind \subseteq Lexical, Shadow \subseteq Lexical \} \quad (8) $$

Sample describes the different measures or values used by each country for the variables of the computational models for the management of coffee rust Sample is also defined as "Entity has name and description". Sample has the Precipitation, Temperature, Wind, Humidity, and Shadow subclasses (Equation (9)).

$$ TBox = \{ Sample \equiv \exists hasName.xsd : string \sqcap \exists hasDescription.xsd : string, \\ Precipitation \subseteq Lexical, Temperature \subseteq Lexical, Wind \subseteq Lexical, Shadow \subseteq Lexical \} \quad (9) $$

Precipitation denotes the amount of rainfall that affects the coffee crop in a given period. It is defined as a subclass of Weather_conditions and has the name, description, synonyms, scale, maximum range, minimum range, time, and units properties (Equation (10)).

$$ TBox = \{ Precipitation \equiv \exists hasName.xsd : string \equiv \exists hasDescription.xsd : string \sqcap \exists \\ hasSynonyms.xsd : string \sqcap \exists hasScale.xsd : string \sqcap \exists \\ maxRange.xsd : float \sqcap \exists minRange.xsd : float \sqcap \exists \\ hasTime.xsd : string \sqcap \exists hasUnit.xsd : string, Precipitation \subseteq Weather_conditions \} \quad (10) $$

Temperature denotes the hot or cold conditions that affect the coffee crop in a given period. It is defined as a subclass of Weather_conditions and has the name, description, synonyms, scale, minimum range, maximum range, time, units, and expression properties as (Equation (11)).
<figure><img src="image_13.png" /><figcaption>Figure 9. Complete definition for the country class (Protégé editor).</figcaption></figure>

<figure><img src="image_14.png" /><figcaption>Figure 10. Use of Pellet reasoner to assess RustOnt's coherence (the Protégé editor).</figcaption></figure>

Figure 11 shows the first ontology defined for Mapping. It supports new types of transformation that can be additionally incorporated to the Weather�ing instances.

<figure><img src="image_15.png" /><figcaption>Figure 11. First ontology defined for the Mapping module (Protégé editor).</figcaption></figure>

The second ontology has been defined for Weather\_conditions (Figure 12). It supports adding new weather conditions corresponding to additional countries and adding new instances in mapping that can provide additional relationships.

Once the evaluation was completed, it was possible to verify that the competence
criteria and quality requirements were successfully. This was performed using tools such
as Protégé as well as DL queries through modeling scenarios with SPARQL queries and
running the Pallet to Protégé reasoner inconsistency check, which was successful for the
evaluated ontology. Therefore, it can be affirmed that the evaluated RustOnt ontology
complies with the competence and quality requirements established in this work.
<figure><img src="image_16.png" /><figcaption>**Figure 12.** Second ontology defined for the Weather_conditions module (Protégé editor).</figcaption></figure>

With the evaluation presented in this section, it has been possible to verify that the competence criteria and quality requirements were satisfactorily met by *RustOnt*. For this purpose, the tests described for each criterion have been completed using Protégé, DL queries, modeling scenarios with SPARQL queries, and inconsistency tests using the Pallet reasoner. From the results obtained, we can conclude that the *RustOnt* ontology meets the competence and quality requirements established for this work.

## 5. Conclusions and Future Work

Smart agriculture involves using information and communication technologies such as big data analytical techniques, data mining, cloud services, the Internet of Things, natural language processing (NLP), artificial intelligence (AI), and other strategies in agriculture and livestock farming. In this context, smart agriculture helps farmers optimize product quality, preserve natural resources and more effectively protect the environment.

Nevertheless, smart agriculture has created new challenges mainly related to using and exploiting the knowledge that these technologies have acquired and produced from crops and farmers. This knowledge needs to be collected, extracted, analyzed, and stored using mechanisms that allow farmers, experts, and machines to share common knowledge ground to address heterogeneous formats and data types.

Various methods have been developed for knowledge representation, including first-order logic, formal logic, semantic networks, frame-based systems, and ontologies. From these, ontologies are the most popular due to their ability to effectively analyze entities, usability, reusability, and maintainability.

In this paper, we proposed *RustOnt*, the first ontology with knowledge obtained from a literature review on the most critical weather variables in coffee cultivation and rust detection in Latin American and African countries. This ontology allows experts to build interoperable systems that exploit knowledge about the relationships between rust and critical weather variables to provide farmers with the information needed to address potential risks, reduce damage due to this disease and improve crop conditions, whilst keeping in mind that weather conditions that may favor its growth.

In addition, *RustOnt* allows experts to perform different transformations using the weather variables based on their specific values, units, and common expressions. The lexical transformation returns numerical values according to text values that farmers use to describe weather conditions (e.g., hot, cold, tempered, very cold, very hot, etc.) in different regions. The sample transformation provides the samples or valid values for each weather variable according to the selected region. These values and samples were obtained from related studies about computational models for coffee rust [26–28,31,59,60].

The evaluation of *RustOnt* was conducted on a question-based assessment focused on competency and quality requirements. The ontology successfully solved competency
queries defined in DL. More complex queries required the definition of scenarios im-
plemented using SPARQL queries. The quality assessment of *RustOnt* consisted of three
criteria: clarity, consistency, and modularity. We defined formal axioms on the main classes
to assess clarity, which allowed us to define the terms used and the hierarchy between
them. The consistency was related to the clarity of each concept defined in the *RustOnt*
ontology and its validation using the Pallet reasoner of the Protégé tool to infer knowledge
about the elements of the ontology (classes, object property, data property and individu-
als) without contradictions. Furthermore, modularity was achieved by splitting *RustOnt*
into two different modules (weather conditions and mapping), where each module is a
representation ontology that can be used as an independent ontology for other domains.

Finally, *RustOnt* can help the process of data collection, integration, and knowledge
exploitation in the field of coffee rust as an asset to create recommendation systems or
predictive models that help farmers and experts in decision-making processes avoid adverse
scenarios related to coffee rust.

The next step to improve *RustOnt* is to expand its information basis to include other
coffee-producing countries that have not been considered due to the lack of previous
studies. This objective can be achieved through initiatives such as the Regional Cooperative
Program for the Technological Development and Modernization of Coffee (PROMECAFE)
for Latin America and the Uganda Coffee Development Authority (UCDA).

We also want to integrate *RustOnt* as part of a case-based reasoning (CBR) system widely used in agriculture for crop management [3], traceability [73], yield estimation [74], and pest and disease protection [75–77]. *RustOnt* can improve the retrieval process of a CBR by making the input data less heterogeneous and thus more accurate, so that the search for the most similar case can be more precise according to the system requirements.

**Author Contributions:** Conceptualization, C.S., J.C.C. and D.C.C.; Methodology, D.G. and D.C.C.; Software, C.S. and C.F.; Validation, D.C.C., D.G. and C.F.; Investigation, C.S. and D.C.C.; Writing—original draft preparation, C.S., D.G. and D.C.C.; Writing—review and editing, C.S., C.F. and D.C.C.; Visualization, D.C.C.; Supervision, D.C.C. and J.C.C. All authors have read and agreed to the published version of the manuscript.

**Funding:** This research was funded by the project "System based on knowledge engineering for the agroecological management of coffee rust", grant 823—Formation of high-level human capital for the regions—Cauca.

**Institutional Review Board Statement:** Not applicable.

**Informed Consent Statement:** Not applicable.

**Data Availability Statement:** Not applicable.

**Acknowledgments:** The authors thank the Ministry of Science, Technology and Innovation (Minciencias)—Colombia under project “Sistema basado en ingeniería del conocimiento para el manejo agroecológico de la roya del café”, grant 823—Formation of high-level human capital for the regions—Cauca, Universidad del Cauca. This work was also supported by the Sistema General de Regalías (SGR) and University of Cauca through the Project “Incremento de la Oferta de Prototipos Tecnológicos en Estado Pre-Comercial Derivados de Resultados de I+D Para el Fortalecimiento del Sector Agropecuario en el Departamento del Cauca” (BPIN 2020000100098).

**Conflicts of Interest:** The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

**Abbreviations**

The following abbreviations are used in this manuscript:

AI Artificial Intelligence

CENICAFE National Coffee Research Center of Colombia

DSTs Decision Support Tools
<table><tr><td>EWSs</td><td>Early Warning Systems</td></tr><tr><td>FONTAGRO</td><td>Regional Agricultural Technology Fund</td></tr><tr><td>ICAFE</td><td>Costa Rica Coffee Institute</td></tr><tr><td>ICT</td><td>Information and Communication Technology</td></tr><tr><td>IoT</td><td>Internet of Things</td></tr><tr><td>OIRSA</td><td>International Regional Organization for Animal and Plant Health</td></tr><tr><td>NLP</td><td>Natural Language Processing</td></tr><tr><td>PA</td><td>Smart or Precision Agriculture</td></tr><tr><td>SPARQL</td><td>SPARQL Protocol and RDF Query Language</td></tr><tr><td>SRAT</td><td>Regional Early Warning System</td></tr></table>

## References

1. Sánchez, R.; Fernández, A.; Martín-Tornero, E.; Meléndez, F.; Lozano, J.; Martín-Vertedor, D. Application of Digital Olfaction for Table Olive Industry. *Sensors* **2022**, *22*, 5702. [CrossRef] [PubMed]

2. Rodríguez, J.P.; Corrales, D.C.; Griol, D.; Callejas, Z.; Corrales, J.C. A Non-Destructive Time Series Model for the Estimation of Cherry Coffee Production. *Comput. Mater. Contin.* **2022**, *70*, 4725–4743. [CrossRef]

3. Abraham, A.; Dash, S.; Rodrigues, J.J.; Acharya, B.; Pani, S.K. *AI, Edge and IoT-Based Smart Agriculture*; Elsevier Academic Press: Amsterdam, The Netherlands, 2021.

4. Tao, W.; Zhao, L.; Wang, G.; Liang, R. Review of the internet of things communication technologies in smart agriculture and challenges. *Comput. Electron. Agric.* **2021**, *189*, 106352. [CrossRef]

5. Washizu, A.; Nakano, S. Exploring the characteristics of smart agricultural development in Japan: Analysis using a smart agricultural kaizen level technology map. *Comput. Electron. Agric.* **2022**, *198*, 107001. [CrossRef]

6. Yang, J.; Lan, G.; Li, Y.; Gong, Y.; Zhang, Z.; Ercisli, S. Data quality assessment and analysis for pest identification in smart agriculture. *Comput. Electr. Eng.* **2022**, *103*, 108322. [CrossRef]

7. Li, W.; Zheng, T.; Yang, Z.; Li, M.; Sun, C.; Yang, X. Classification and detection of insects from field images using deep learning for smart pest management: A systematic review. *Ecol. Inform.* **2021**, *66*, 101460. [CrossRef]

8. Bedin, D.; Araújo, G.; Santos, L.; Diennevan, B.; Pena, R.; Prado, L.; Marques, A.; Sales, P. Detecting coffee leaf rust with UAV-based vegetation indices and decision tree machine learning models. *Comput. Electron. Agric.* **2021**, *190*, 106476. [CrossRef]

9. Motisi, N.; Bommel, P.; Leclerc, G.; Robin, M.H.; Aubertot, J.N.; Butron, A.A.; Merle, I.; Treminio, E.; Avelino, J. Improved forecasting of coffee leaf rust by qualitative modeling: Design and expert validation of the ExpeRoya model. *Agric. Syst.* **2022**, *197*, 103352. [CrossRef]

10. Salguero, A.G.; Espinilla, M.; Delatorre, P.; Medina, J. Using Ontologies for the Online Recognition of Activities of Daily Living. *Sensors* **2018**, *18*, 1202. [CrossRef]

11. Liu, J.; Li, Y.; Tian, X.; Sangaiah, A.K.; Wang, J. Towards Semantic Sensor Data: An Ontology Approach. *Sensors* **2019**, *19*, 1193. [CrossRef]

12. Fonou-Dombeu, J.; Naidoo, N.; Ramnanan, M.; Gowda, R.; Lawton, S. OntoCSA: A Climate-Smart Agriculture Ontology. *Int. J. Agric. Environ. Inf. Syst.* (IJAEIS) **2021**, *12*, 1–20. [CrossRef]

13. Kendall, E.F.; McGuinness, D.L. *Ontology Engineering*; Springer: Berlin/Heidelberg, Germany, 2019.

14. Chukkapalli, S.S.L.; Piplai, A.; Mittal, S.; Gupta, M.; Joshi, A. A Smart-Farming Ontology for Attribute Based Access Control. In Proceedings of the IEEE 6th International Conference on Big Data Security on Cloud (BigDataSecurity), IEEE International Conference on High Performance and Smart Computing, (HPSC) and IEEE International Conference on Intelligent Data and Security (IDS), Baltimore, MD, USA, 25–27 May 2020; pp. 29–34. [CrossRef]

15. Bazán Jiménez, G.Y.; Herrera Sánchez, G.S. Creation of an Ontological Model for the Control and Monitoring of Rice, Coffee and Cocoa Crops. Ph.D. Thesis, Universidad de Guayaquil, Guayaquil, Ecuador, 2019.

16. Ngo, Q.H.; Le-Khac, N.A.; Kechadi, T. Ontology Based Approach for Precision Agriculture. In *Multi-Disciplinary Trends in Artificial Intelligence, Proceedings of the 12th International Conference, MIWAI 2018, Hanoi, Vietnam, 18–20 November 2018*; Kaenampornpan, M., Malaka, R., Nguyen, D.D., Schwind, N., Eds.; Springer International Publishing: Cham, Switzerland, 2018; pp. 175–186. [CrossRef]

17. Di Noia, T.; Mongiello, M.; Nocera, F.; Di Sciascio, E. Ontology-based reflective IoT middleware-enabled agriculture Decision Support System. In Proceedings of the 9th International Semantic Web Applications and Tools for Life Sciences Conference (SWAT4LS 2016), Amsterdam, The Netherlands, 5–8 December 2016. [CrossRef]

18. Fujimoto, R.; Aoyama, M. A Lifecycle-Based Design Methodology of Lightweight Ontology and its Application to Cultivating High Quality Mandarin Orange. In Proceedings of the 21st Asia-Pacific Software Engineering Conference, Jeju, Republic of Korea, 1–4 December 2014; pp. 147–150. [CrossRef]

19. Sayogo, D.; Luciano, J.; Michaelis, J.; DePaula, N.; Luna-Reyes, L.; Tayi, G.; Begany, G.; Andersen, D. A preliminary ontology for tracking certification systems: A case study of fairtrade coffee certification. In Proceedings of the 14th Annual International Conference on Digital Government Research, Quebec City, QC, Canada, 17–20 June 2013; pp. 267–268. [CrossRef]

20. Alreshidi, E. SAAONT: Ontological knowledge-based development to support intelligent decision-making systems for Saudi Arabian agriculture. *Int. J. Adv. Appl. Sci.* **2020**, *7*, 49–59. [CrossRef]
21. Symeonaki, E.; Arvanitis, K.G.; Piromalis, D.; Tseles, D.; Balafoutis, A.T. Ontology-Based IoT Middleware Approach for Smart Livestock Farming toward Agriculture 4.0: A Case Study for Controlling Thermal Environment in a Pig Facility. *Agronomy* **2022**, *12*, 750. [CrossRef]

22. UNGRD. Early Warning Systems as an Element for Disaster Risk Management. 2018. Available online: http://portal.gestiondelriesgo.gov.co/Paginas/Noticias/2020/Sistemas-de-Alerta-Temprana-como-elementos-para-la-gestion-del-riesgo-de-desastres.aspx (accessed on 1 December 2022).

23. FONTAGRO. Coffee Rust Early Warning System. 2015. Available online: https://wwwfontagro.org/new/proyectos/sistema-de-alerta-temprana-roya-cafe (accessed on 1 December 2022).

24. Early Warning and Recommendation System—ICAFE. 2019. Available online: http://www.icafe.cr/cicafe/investigaciones/la-roya-del-cafe/sistema-de-alerta-y-recomendacion-temprana/ (accessed on 1 December 2022).

25. Kendal, S.; Creen, M. An Introduction to Knowledge Engineering. In *An Introduction to Knowledge Engineering*; Springer: Berlin/Heidelberg, Germany, 2007, pp. 1–25. [CrossRef]

26. Avelino, J.; Badaroux, J.; Boudrot, A.; Brenes Loaiza, M.A.; Granados, E.; Henrion, M.; Lopez, D.; Merle, I.; Pico, J.; Segura, B.; et al. Effects of the shadow on orange rust of coffee plants (Hemileia vastatrix). In *Proceedings of the Simposio Latinoamericano de Cacultura, Innovando en la Cacultura para Lograr Sostenibilidad y Resiliencia Frente al Cambio Climático, San Pedro Sula, Honduras, 23–26 August 2017*.

27. Boudrot, A.; Pico, J.T.; Merle, I.; Granados, E.; Vilchez, S.; Tixier, P.; de Melo Virginio Filho, M.; Casanoves, F.; Tapia, A.; Allinne, C.; et al. Shade effects on the dispersal of airborne hemileia vastatrix uredospores. *Phytopathology* **2016**, *106*, 572–580. [CrossRef]

28. Lasso, E.; Corrales, D.C.; Avelino, J.; de Melo Virginio Filho, E.; Corrales, J.C. Discovering weather periods and crop properties favorable for coffee rust incidence from feature selection approaches. *Comput. Electron. Agric.* **2020**, *176*, 105640. [CrossRef]

29. Corrales, D.C.; Ledezma, A.; Peña Q., A.J.; Hoyos, J.; Figueroa, A.; Corrales, J.C. A new dataset for coffee rust detection in Colombian crops base on classifiers. *Sist. Telemát. 2014*, *12*, 9. [CrossRef]

30. Lasso, E.; Thamada, T.T.; Meira, C.A.A.; Corrales, J.C. Graph patterns as representation of rules extracted from decision trees for coffee rust detection. In *Metadata and Semantics Research, Proceedings of the 9th Research Conference, MTSR 2015, Manchester, UK, 9–11 September 2015*; Communications in Computer and Information Science; Springer: Cham, Switzerland, 2015; Volume 544, pp. 405–414. [CrossRef]

31. Matovu, R.J.; Kangire, A.; Phiri, N.A.; Hakiza, G.J.; Kagezi, G.H.; Musoli, P.C. Ecological factors influencing incidence and severity of Coffee Leaf Rust and Coffee Berry Disease in major Arabica coffee growing districts of Uganda. *Uganda J. Agric. Sci.* **2013**, *14*, 87–100.

32. Liebig, T.; Ribeyre, F.; Läderach, P.; Poehling, H.M.; Van Asten, P.; Avelino, J. Interactive effects of altitude, microclimate and shading system on coffee leaf rust. *J. Plant Interact.* **2019**, *14*, 407–415. [CrossRef]

33. Lasso, E.; Valencia, S.; Corrales, J.C. Decision support system for coffee rust control based on expert knowledge and value-added services. In *Computational Science and Its Applications—ICCSA 2017, Proceedings of the 17th International Conference, Trieste, Italy, 3–6 July 2017*; Lecture Notes in Computer Science; Springer: Cham, Switzerland, 2017; Volume 10405, pp. 70–83. [CrossRef]

34. Merle, I.; Tixier, P.; Virginio Filho, E.d.M.; Cilas, C.; Avelino, J. Forecast models of coffee leaf rust symptoms and signs based on identified microclimatic combinations in coffee-based agroforestry systems in Costa Rica. *Crop Prot.* **2020**, *130*, 105046. [CrossRef]

35. Gamboa, H.; Urias, C. *Early Warning System for Coffee Rust and Other Coffee Pests in the OIRSA Region*; Technical Report; Organismo Internacional Regional de Sanidad Agropecuaria (OIRSA): San Salvador, El Salvador, 2014.

36. Hunde Galata, D. *Application of Data Mining Techniques for Coffee Yield Prediction: A Case Study on Selected Major Coffee Growing Areas in Ethiopia*; Technical Report; Wollega University: Nekemte, Ethiopia, 2020.

37. Buitrón, E.J.G.; Corrales, D.C.; Avelino, J.; Iglesias, J.A.; Corrales, J.C. Rule-based expert system for detection of coffee rust warnings in colombian crops. *J. Intell. Fuzzy Syst.* **2019**, *36*, 4765–4775. [CrossRef]

38. de Oliveira Aparecido, L.E.; de Souza Rolim, G.; da Silva Cabral De Moraes, J.R.; Costa, C.T.S.; de Souza, P.S. Machine learning algorithms for forecasting the incidence of Coffea arabica pests and diseases. *Int. J. Biometeorol.* **2020**, *64*, 671–688. [CrossRef] [PubMed]

39. Hinnah, F.D.; Sentelhas, P.C.; Meira, C.A.A.; Paiva, R.N. Weather-based coffee leaf rust apparent infection rate modeling. *Int. J. Biometeorol.* **2018**, *62*, 1847–1860. [CrossRef]

40. Hinnah, F.D.; Sentelhas, P.C.; Meira, C.A.A.; Thamada, T.T.; Paiva, R.N. Correlações entre taxa de crescimento da ferrugem do cafeeiro e variáveis meteorológicas. In *Agrometeorologia no Século 21: O Desafio do uso Sustentável dos Biomas Brasileiros Correlações*; Embrapa: Brasilia, Brazil, 2015; pp. 799–800.

41. Pérez-Ariza, C.; Nicholson, A.; Flores, M. Prediction of Coffee Rust Disease Using Bayesian Networks. In *Proceedings of the 6th European Workshop on Probabilistic Graphical Models, Granada, Spain, 19–21 September 2012*.

42. Cintra, M.E.; Meira, C.A.; Monard, M.C.; Camargo, H.A.; Rodrigues, L.H. The use of fuzzy decision trees for coffee rust warning in Brazilian crops. In *Proceedings of the 2011 11th International Conference on Intelligent Systems Design and Applications, Cordoba, Spain, 22–24 November 2011*; pp. 1347–1352. [CrossRef]

43. Luaces, O.; Rodrigues, L.H.A.; Alves Meira, C.A.; Bahamonde, A. Using nondeterministic learners to alert on coffee rust disease. *Expert Syst. Appl.* **2011**, *38*, 14276–14283. [CrossRef]
44. Luaces, O.; Rodrigues, L.H.A.; Alves Meira, C.A.; Quevedo, J.R.; Bahamonde, A. Viability of an alarm predictor for coffee rust disease using interval regression. In *Trends in Applied Intelligent Systems, Proceedings of the 23rd International Conference on Industrial Engineering and Other Applications of Applied Intelligent Systems, IEA/AIE 2010, Cordoba, Spain, 1-4 June 2010*; Lecture Notes in Computer Science; Springer Berlin/Heidelberg, Germany, 2010; Volume 6097, pp. 337-346. [CrossRef]

45. Samuel, B. Impact of Temperature and Rainfall Variability on Coffee. Ph.D. Thesis, University of Rwanda, Kigali, Rwanda, 2018.

46. Georgiou, S.; Avelino, J.; Imbach, P. *An Analysis of the Weather and Climate Conditions Related to the 2012 Epidemic of Coffee Rust in Guatemala*; Technical Report; CATIE: Cali, Colombia, 2014.

47. Brown, J.S.; Kenny, M.K.; Whan, J.H.; Merriman, P.R. The effect of temperature on the development of epidemics of coffee leaf rust in Papua New Guinea. *Crop Prot.* **1995**, *14*, 671-676. [CrossRef]

48. Bautista-Zambrana, M.R. Methodologies to Build Ontologies for Terminological Purposes. *Procedia-Soc. Behav. Sci.* **2015**, *173*, 264-269. [CrossRef]

49. Uschold, M.; King, M. Towards a methodology for building ontologies. In *Proceedings of the Workshop on Basic Ontological Issues in Knowledge Sharing*, held—IJCAI-95, Montreal, QC, Canada, 20–25 August 1995.

50. Gómez-Pérez, A.; Fernández-López, M.; Corcho, O. *Ontological Engineering with Examples from the Areas of Knowledge Management, eCommerce and the Semantic Web*; Advanced Information and Knowledge Processing; Springer: New York, NY, USA, 2007.

51. Staab, S.; Studer, R.; Schnurr, H.P.; Sure, Y. Knowledge processes and ontologies. *IEEE Intell. Syst. Their Appl.* **2001**, *16*, 26–34. [CrossRef]

52. Noy, N.F.; McGuinness, D.L. *Ontology Development 101: A Guide to Creating Your First Ontology*; Technical Report; University of Stanford: Stanford, CA, USA, 2001.

53. Aussenac-Gilles, N.; Despres, S.; Szulman, S. The TERMINAE method and platform for ontology engineering from texts. In *Ontology Learning and Population: Bridging the Gap between Text and Knowledge*; IOS Press: Amsterdam, The Netherlands, 2008; Volume 167, pp. 199–223.

54. Temmerman, R.; Kerremans, K. Termontography: Ontology building and the sociocognitive approach to terminology description. In *Proceedings of the Finds and Results from the Swedish Cyprus Expedition: A Gender Perspective at the Medelhavsmuseet*, Stockholm, Sweden, 21–25 September 2009; Matfyzpress: Prag, Czech Republic, 2017.

55. Štorga, M.; Marjanović, D.; Andreasen, M. Relationships between the concepts in the design ontology. In *Proceedings of the 16th International Conference on Engineering Design, Paris, France, 28–31 July 2007*.

56. Osman, I.; Ben Yahia, S.; Diallo, G. Ontology Integration: Approaches and Challenging Issues. *Inf. Fusion* **2021**, *71*, 38–63. [CrossRef]

57. Varzi, A.C. Spatial Reasoning and Ontology: Parts, Wholes, and Locations. In *Handbook of Spatial Logics*; Springer: Berlin/Heidelberg, Germany, 2007; pp. 945–1038. [CrossRef]

58. Mittal, K.; Jain, A.; Vaisla, K.S.; Castillo, O.; Kacprzyk, J. A comprehensive review on type 2 fuzzy logic applications: Past, present and future. *Eng. Appl. Artif. Intell.* **2020**, *95*, 103916. [CrossRef]

59. MeteoLobios. Classification of Precipitation by Intensity. 2013. Available online: http://www.meteolobios.es/lluvia.htm (accessed on 1 December 2022).

60. The Beaufort Wind Scale. 2022. Available online: https://www.rmets.org/metmatters/beaufort-wind-scale (accessed on 1 December 2022).

61. Protégé. 2022. Available online: https://protege.stanford.edu/products.php (accessed on 1 December 2022).

62. Rubin, D.L.; Knublauch, H.; Fergerson, R.W.; Dameron, O.; Musen, M.A. Protégé-OWL: Creating Ontology-Driven Reasoning Applications with the Web Ontology Language. *AMIA Annu. Symp. Proc.* **2005**, *2005*, 1179.

63. Bravo, M.; Reyes, L.F.H.; Reyes Ortiz, J.A. Methodology for ontology design and construction. *Contad. Adm.* **2019**, *64*, 1–24. [CrossRef]

64. Wiśniewski, D.; Potoniec, J.; Ławrynowicz, A.; Keet, C.M. Analysis of Ontology Competency Questions and their formalizations in SPARQL-OWL. *J. Web Semant.* **2019**, *59*, 100534. [CrossRef]

65. Vrandecic, Z. Ontology Evaluation. Ph.D. Thesis, Karlsruher Instituts für Technologie (KIT), Karlsruhe, Germany, 2010. [CrossRef]

66. Al-Debei, M.M.; Fitzgerald, G. OntoEng: A Design Method for Ontology Engineering in Information Systems. In *Proceedings of the 24th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications*, Orlando, FL, USA, 25–29 October 2009.

67. Wang, Y.; Wang, Y. Citrus ontology development based on the eight-point charter of agriculture. *Comput. Electron. Agric.* **2018**, *155*, 359–370. [CrossRef]

68. Wu, C.; Wu, P.; Wang, J.; Jiang, R.; Chen, M.; Wang, X. Ontological knowledge base for concrete bridge rehabilitation project management. *Autom. Constr.* **2021**, *121*, 103428. [CrossRef]

69. Degbelo, A. A Snapshot of Ontology Evaluation Criteria and Strategies. In *Proceedings of the Semantics 2017—13th International Conference on Semantic Systems, Amsterdam, The Netherlands, 11–14 September 2017*; pp. 1–8. [CrossRef]

70. Stvilia, B. A model for ontology quality evaluation. *First Monday* **2007**, *12*, 1–13. [CrossRef]

71. Peña, P.; Trillo-Lado, R.; Hoyo, R.; Rodríguez-Hernández, M.; Abadía, D. Ontology-quality Evaluation Methodology for Enhancing Semantic Searches and Recommendations: A Case Study. In *Proceedings of the 16th International Conference on Web Information Systems and Technologies (WEBIST 2020)*, Online, 3–5 November 2020; pp. 277–284. [CrossRef]
72. Raza, M.; Elmhadhbi, L.; Sakar, A.; Xu, D.; Karray, M.H. A Context-Specific Modularization for Ontology Change Management. *Procedia Comput. Sci.* **2022**, *207*, 2578–2587. [CrossRef]

73. Chen, R.Y. Intelligent Predictive Food Traceability Cyber Physical System in Agriculture Food Supply Chain. *J. Phys. Conf. Ser.* **2018**, *1026*, 012017. [CrossRef]

74. Kenny, E.M.; Ruelle, E.; Geoghegan, A.; Shalloo, L.; O'Leary, M.; O'Donovan, M.; Keane, M.T. Predicting Grass Growth for Sustainable Dairy Farming: A CBR System Using Bayesian Case-Exclusion and Post-Hoc, Personalized Explanation-by-Example (XAI). In *Case-Based Reasoning Research and Development, Proceedings of the 27th International Conference, ICCBR 2019*, Otzenhausen, Germany, 8–12 September 2019; Lecture Notes in Computer Science; Springer: Cham, Switzerland, 2019; Volume 11680, pp. 172–187. [CrossRef]

75. Minarni, I.; Warman, I.; Yuhendra. Implementation of case-based reasoning and nearest neighbor similarity for peanut disease diagnosis. *J. Phys. Conf. Ser.* **2019**, *1196*, 012053. [CrossRef]

76. Gu, L.; Xia, Y.; Yuan, X.; Wang, C.; Jiao, J. Research on the model for tobacco disease prevention and control based on case-based reasoning and knowledge graph. *Filomat* **2018**, *32*, 1947–1952. [CrossRef]

77. Padma, T.; Mir, S.A.; Shantharajah, S.P. *Intelligent Decision Support System for an Integrated Pest Management in Apple Orchard*; Studies in Computational Intelligence; Springer: Cham, Switzerland, 2017; Volume 705, pp. 225–245. [CrossRef]