1 Introduction

The continuous growth in the number and share of the ageing population will likely have deep effects, not only for individuals but also for governments, business and civil society, affecting, among others, health care systems, social care systems, labour markets and public finances (European Union 2019).

Despite an existing digital divide among older people, Information and Communications Technologies (ICT) and the Internet of Things (IoT) paradigm have the potential to play a key role in facilitating independent living, monitoring of health status, building and maintaining social networks, staying in contact with friends and family and engaging in work or voluntary activities. In other words, IoT can be a driver for users’ self-empowerment (Hur 2016) and behaviour change during physiological ageing thus reducing its burden on society.

Given that ageing is inherently a multi-factorial (Olson 1987; Rodríguez-Rodero et al. 2011) physiological process, this increases the complexity required for the design and implementation of a reliable and effective IoT solution. Indeed, the development of novel IoT systems, tools and devices, specifically targeted to older people, must be based on a holistic framework built on robust scientific knowledge in different health domains.

In fact, ageing is associated with modifications occurring in relevant domains affecting human lives (Cesari et al. 2018). In particular, processes and changes arising during ageing mainly affect physiological, nutritional, cognitive, mental and social dimensions (Welge et al. 2014). For this reason, there is a need for constructing multi-domain models to systematically describe the status and behaviour of an individual. Such models should arguably be used as the basis to build effective personalized systems for supporting the adoption of a healthy lifestyle.

The above-described issues lead to substantial complexities in terms of dealing with variables, their relationships, and which variables to be considered for the most effective technical implementations of an IoT system. In this context, the use of semantic approaches and in particular the development of a specific ontology devoted to healthy ageing is crucial.

To achieve the goal of developing holistic applications for healthy ageing in an IoT system, the use of ontologies enables innovative characteristics of systems such as design automation, self-configuration, self-management and personalization as well as unambiguous representation of age-relevant knowledge (Welge et al. 2014). It is important to note that the Integration and commissioning of existing systems are usually time-consuming and complicated. The lack of interoperability of available components for the "silver economy” market, like Ambient Assisted Living (AAL), has to be considered as an obstacle to the spreading of innovative services for older adults.

To address this issue, the integration can be reached using middleware platforms, which implement “semantic” interoperability based on the use of common ontologies, and offer interoperability at the application level. This approach is dynamic and adaptable and one of the reference architectures in the Active Ageing world is represented by universaal (uAAL)-IoT (universaal iot 2020). This architecture aims to facilitate general approaches that can address the interoperability comprehensively, to serve as a common framework to build interoperable smart “Active Ageing” solutions that can be deployed, extended and replicated at different deployment sites.

Recently, within the NESTORE project (NESTORE 2020a, b; Palumbo et al. 2020), aimed at the development of a virtual coach targeted towards healthy older people (aged + 65) to sustain their healthy life, a multidimensional model, based on a holistic approach was proposed (Mastropietro et al. 2018). This model included three core dimensions related to older adults’ wellbeing (Physical/Physiological, Nutritional, and Cognitive/Mental/Social). The NESTORE model was intended to provide a structured knowledge formalization to provide a simplified pool of information for (1) the characterization of the older adults, (2) the personalization of the coaching plans, and (3) the implementation of an effective IoT system.

To the best of our knowledge, a widespread ontology capable of including such different domains and ready to be integrated into existing Active Ageing solutions is still lacking. To fill the gap, this paper aims to design and develop a novel holistic NESTORE ontology, based on the original NESTORE multidomain healthy ageing conceptual model, to support structuring and standardizing heterogeneous scientific knowledge about ageing. This new ontology extends the available ontologies provided by uAAL-IoT, to warrant the important goal of interoperability with existing systems.

2 Related work

Ontologies are frameworks for representing shareable and reusable knowledge across domains. The use of ontologies eases the reusability of descriptive measures and the usability of the data itself when exchanging information, like well-defined data format, among different systems. Ontologies’ ability to describe relationships and their high interconnectedness makes them the bases for modelling linked and coherent data, giving developers a common and semantically valuable data format that enables interoperability.

In the literature, we can find the use of ontologies when dealing with the Active Ageing scenario in very specific mono-dimensional aspects (Kim et al. 2019; Helmy et al. 2015). Concerning physical activity, some ontologies are available in the literature (Kim et al. 2019; Silva et al. 2013; NCBO BioPortal 2020; Bamparopoulos et al. 2016) describing this domain with different levels of complexity. However, all these available ontologies are not designed to consider the specific needs of the older adult population and are therefore hardly adaptable to promote healthy ageing. Furthermore, they are not fully contextualized with the entire physiological domain, thus neglecting the complex network of relationships among the variables and sub-domains that play a fundamental role in the specific field. In the field of nutrition, the available ontologies follow a disease-based approach and cannot be used for further purposes apart from describing persons’ characteristics (Helmy et al. 2015; VItali et al. 2018; Castellano-Escuder et al. 2020; Snae and Bruckner 2008).

Some previous experiences and projects, which developed ontologies, had also targeted wider issues from the multidomain perspective such as obesity in young people (Sojic et al. 2016) but still lack interoperability between different systems.

From the technological point of view, different frameworks have been adopted to develop ontology languages. Ontolingua (Farquhar et al. 1997) is an interlanguage for ontology representation and sharing that adds frame-like representation and translation functionalities to Knowledge Interchange Format (KIF) (Hayes and Menzel 2001). The Resource Description Framework (RDF) is another commonly used framework for metadata description developed by WWW Consortium (W3C) that employs the triplet model < object, attribute, value > and that has been extended by the W3C Web Ontology Language (OWL) to enable semantic web (Horrocks et al. 2003). These tools become key enablers when embedded in the IoT scenario that presents some challenges that still stand in the way of the massive implementation of IoT systems. In particular, emerging networks of things are currently hard to deploy and operate because they usually require the intervention of highly-specialized experts to interpret the sensor data and implement actuation commands. This poses some core issues that can be addressed by using proper semantic tools (Hachem et al. 2011):

  • Scalability: the amount of types of information growing with the number of devices;

  • Heterogeneity: each device has its particular data format;

  • Topology: how devices are dynamically deployed;

  • Incomplete information: the need for augmenting knowledge with metadata;

  • Conflict resolution: multiple applications attempt to actuate the same device in opposing ways.

To address these issues and to enable the integration between heterogeneous IT systems we can found two alternative ways in literature: (1) using “conventional” syntactic interoperability standards (e.g. UPnP (UPnP Standards Architecture 2020) or IHE transactions (IHE International 2020)); (2) using middleware platforms, which implement “semantic” interoperability based on the use of common ontologies, and offers interoperability at a different layer (API instead of wire protocol).

The second approach is more dynamic and adaptable and, therefore, is the one chosen to cope with the goal of the proposed paper. In the Active Ageing world, the reference architecture is represented by uAAL-IoT (universAAL IoT 2020) that provides to the developers a set of tools and already available ontologies to be extended to reflect the requirements of our scenario.

3 Methods

The development of the NESTORE ontology was mainly based on two different phases. In the first phase, the knowledge from different domains was structured within a conceptual model based on the underlying reference literature and on the specific expertise of the domain experts. Afterward, the structured knowledge included in the model was formalized into an ontology compliant with the uAAL-IoT framework.

In the next paragraphs, each of the previous steps is described in detail.

3.1 Structuring the multi-domain knowledge related to healthy ageing: the NESTORE model

The NESTORE Healthy Ageing model aims at providing a structured knowledge built on the scientific background of domain experts (exercise physiologists, nutritionists, psychologists, geriatricians) and with a reference to the relevant related scientific literature using a cross-disciplinary approach. To collect the information in the 3 different domains, several single interviews were performed with the experts. During this process, the experts, based on their expertise and the reference literature guidelines, identified for each wellbeing domain different subdomains, each of which can be considered independently, and described field-specific aspects of human status during ageing. In each subdomain, the experts defined the relevant variables suitable to personalize coaching and to monitor the user status and behaviour. For each variable, the specific values for user classification (normal vs out of range, degree of weakness) and the related measurements methodologies were listed. Once the single domain was deeply analysed and described, a group workshop was carried out to define the variable relationships intra- and inter-domain thus completing the model design. The model was designed to characterize a person in terms of both his/her status and behaviour and it is targeted to healthy older adults, aged 65 to 75, mainly retired or recently retired, with an autonomous life and interested in maintaining or promoting her/his wellbeing and quality of life, without any severe impairment and/or pathology. Considering that ageing is a multifactorial process, the NESTORE model adopts a multi-domain approach, which includes three main different dimensions related to well-being: (1) Physiological Status and Physical Activity Behaviour, (2) Nutrition, and (3) the psychological domain including Cognitive and Mental Status and Social Behaviour.

For each domain, the model includes:

(a) The definition of the domain variables that is useful for the characterization and monitoring of the individual. This aspect is specifically thought for profiling activities and, consequently, for personalization purposes.

(b) The relationships among the domain variables and the variable ranges and/or trends corresponding to normal ageing status and behaviour in that domain. These aspects are specifically thought to support the development of the decision support system.

(c) The definition of some measurement scenarios and the devices required to measure and to store data related to every single variable.

The information included in the NESTORE model is essential to support the development of the NESTORE ontology.

To formalize the links between the variables, some simple relationships among variables were defined:

  • influences, which is used when a variable has a causal relationship with another variable;

  • correlates with, which is used when a variable has a certain degree of association with another variable;

  • is calculated from, which is used to define if a variable is measured from other variables;

  • is an indicator of, which is used if a variable can be used as a measure or an index of other variables.

It is worthy of mention that the model takes into account not just the relationships within every single domain but also the connections across the domains, thus including a more realistic complexity. Furthermore, gender differences were also considered if appropriate.

In Fig. 1 we show an example of the graphical representation of the complexity of the relationships among variables, in the physiological status and physical activity domain. The description of the complete model can be found in the NESTORE project deliverable 2.1 “Models for Healthy Older People” (Rizzo et al. 2020) and its annexes.

Fig. 1
figure 1

Relationships among the Anthropometric Characteristics sub-domain, the Nutrition, the Cognitive and Mental Status and the Social Behaviour domains

3.1.1 Physiological status and physical activity behaviour

The age-related physiological changes affect a broad range of tissues, organ systems, and functions, which, cumulatively, can affect activities of daily living and the preservation of physical independence in older adults. Moreover, out-of-range values in middle-aged women and men predict future risks of disability, chronic disease and death. The decline in maximal aerobic capacity (VO2 max) is one of the most common observations in older adults (Betik and Hepple 2008). On the other hand, a reduction of skeletal muscle mass (sarcopenia) and an impairment of muscle function are also widely recognised in old age (Cao and Morley 2016). Those changes are associated with reduced strength and physical performance, which have been linked to recurrent falls and are a major cause of morbidity and mortality of people over 65. Changing body composition is another hallmark of the physiological ageing process, which has profound effects on health and physical function among older adults being associated with increased metabolic and cardiovascular disease risks.

The NESTORE model reflects the physiological complexity of ageing by monitoring four major subdomains: (1) Anthropometric Characteristics, which are based on anthropometric variables describing body dimensions and their relationship; (2) Cardiovascular System, which collects information about the main physiological variables influencing the transport of nutrients and oxygen from the lungs to peripheral tissue and vice versa; (3) Respiratory System, that describes the main physiological variables related to structure and function of the organs designated to exchange blood gases between ambient air and blood cells; (4) Musculoskeletal System, that contains a detailed description of the main physiological variables related to the ability of the skeletal muscle to generate force and power.

Since regular exercise is essential for healthy ageing and older adults should do aerobic training, muscle-strengthening, stretching exercises and balance activities on a weekly basis for substantial health benefits, the NESTORE system also collects information about the ability of a person to perform aerobic exercises (Cardiorespiratory Exercise Capacity), the status of the musculoskeletal system (Strength-Balance-Flexibility Exercise Capacity) and the activity behaviour of a person during every-day life (Physical activity Behaviour). Finally, the main factors related to sleep (Sleep Quality) are included in this domain, according to changes in sleep habits that usually occur with ageing (Mander et al. 2017; Crivello et al. 2019).

3.1.2 Nutrition

Ageing is associated with physiological readjustments that can alter the nutritional status and may decrease appetite leading to poor nutritional status (Streicher et al. 2018; van der Pols-Vijlbrief et al. 2014; Besora-Moreno et al. 2020; Hickson, 2006). These changes induce a feedback loop in which the poor diet increases muscle and bone degeneration that, in turn, favours unhealthy habits that promote unbalanced nutrition. Moreover, malnutrition is one of the most relevant conditions that can negatively influence the health of older people (Leslie and Hankey 2015) and directly impacts brain physiology (Titova et al. 2013) and cognitive function (Dominguez and Barbagallo 2018), increasing the risk of becoming care-dependent (Evans 2005).

To take into account all of the elements that have an impact on the health of older adults, the following subdomains are proposed: (1) Anthropometric Characteristics, which is coincident to that belonging to the Physiological Status and Physical activity behaviour domain; (2) Blood Parameters, that is focused on biomarkers of diabetes and dyslipidaemia that are independent risk factors of the most prevalent diseases associated with ageing (Nepal et al. 2014); (3) Energy Expenditure, describing the variables mainly related to energy management; (4) Nutrition Habits, describing variables directly related to the study of a subject's eating habits.

3.1.3 Cognitive and mental status and social behaviour

Among the health and well-being domains, Cognitive and Mental Status and Social Behaviour refer to the psychological traits and states related to cognitive, mental, personality-related and social functioning in healthy older adults. Cognitive ability trajectories are thus characterized by a high degree of multi-directional complexity and heterogeneity across cognitive domains (Hedden and Gabrieli 2004; Salthouse 2010; Hartshorne and Germine 2015). Besides cognition, mental health and subjective well-being represent another important component of health, which in turn also relates to cognitive performance in later life (Gerstorf et al. 2007). Most prevalent in later life are depression and anxiety, but the majority of older adults reports high levels of subjective well-being and good mental health (Rocke and Brose 2013; Thomas et al. 2016). Furthermore, one important challenge for later life is social isolation and loneliness, which can have severe consequences on mental health, with social connectedness being an important protective resource for mental (as well as cognitive) health maintenance (Lovden et al. 2005).

The domain of cognitive, mental health and social well-being addressed in NESTORE is composed of four subdomains, the first two relating to stable person characteristics that capture dispositions and the latter two complementing these by more transient and variable characteristics capturing states and behaviour. These are: (1) Cognitive Status referring to various variables of intellect that characterize biologically- and experience-driven facets of cognition and intelligence; (2) Mental Status, including traits in the area of subjective well-being, self and personality and social integration/feelings of loneliness. The two domains of status or trait variables will allow describing a dispositional profile of a person’s general resources in the cognitive and mental domains. (3) Mental Behaviour and States, capturing the within-person processes mainly in emotional functioning that are observable in daily life based on self-reported experiences and as information extracted from text bodies and speech; (4) Social Behaviour which analyses the social context of the users, by quantifying frequency and condition of interaction between the user and his/her social environment.

3.2 Developing the healthy ageing ontology

The design of the NESTORE ontology is based on the uAAL-IoT framework, which provides modelling tools and a set of core ontologies (universAAL 2020). The uAAL-IoT framework is an open-source framework enabling cooperation between IoT devices by adopting a semantic approach. More specifically, those IoT-ready devices running the uAAL-IoT middleware can cooperate by exchanging specific kinds of messages. Such cooperation enables the design and the implementation of a distributed system, able to collect and elaborate the context-information retrieved. The most distinguishing feature of uAAL-IoT is the semantic approach used to enable devices to reason about the context and to react properly. The knowledge is represented as a group of ontologies based on the RDF format and translated as Java classes for the uAAL-IoT middleware. The process to model and generate new Ontologies for universAAL is based on the universAAL Studio which extends the Eclipse IDE with the Ontology Modelling Tool (OMT). OMT is intended for developers, it is based on the Papyrus and MOFScript tools. More specifically, OMT supports the following steps: (1) to create an ontology project with a walk-through wizard; (2) to design and model the ontology via Unified Modeling Language (UML); (3) to generate the java code modelling the ontology and packing the ontology as Maven artifacts.

The NESTORE ontology covers the knowledge domain concerning the definitions provided by the NESTORE Healthy Ageing Model:

  • Physiological status and physical activity behaviour

  • Nutrition

  • Cognitive and mental status and social behaviour

Within each sub-ontologies, different types of hierarchies, taxonomies and relationships concerning the aforementioned areas are defined. The ontology has been developed utilizing the uAAL definitions and using the uAAL eclipse ontology tool editor. The whole ontology is represented in UML, and afterwards translated to Java language, the programming language used by universAAL platform. In this way, it can be simply used in any system by importing the Java classes corresponding to the ontology classes.

In NESTORE, the modularization and the structure of the proposed ontology are specified by a graphical representation using the Papyrus tool from Eclipse (Gerard et al. 2007). Furthermore, the NESTORE uAAL ontology is stored in a semantics repository that hosts various representations to exploit their capabilities: W3C Web Ontology Language (OWL) format; UML; Java source files as required to be interoperable with the uAAL platform.

Many of the described NESTORE ontologies entail two main concepts: variables and variable measurements. The former identifies and characterizes the quantity that is being measured in the context of each sub-domain and how it relates to other variables (for instance variables can influence, depend on or be calculated from other variables), the latter represents actual variable measurements. As such, they are related to a certain instant in time (or time interval) and concern a given individual that is being examined or monitored. Variable measurements are also associated with a measuring instrument and can include several different instruments/devices available to measure the same variable.

The final information we modelled is the measurement grouping, i.e. the association between the variable measurement (e.g. “body height measurement”) and the actual variable concept (e.g. "body height").

To describe all the previous components, we use the “anthropometric characteristics” sub-ontology as an example, but the other sub-ontologies are similarly structured.

3.2.1 Variables

The more abstract concept of variable represents the entity that is being measured in contrast to a specific measured value of the entity. Figure 2 illustrates the relevant class layout in universAAL Studio concerning body height and body mass index measurements. For the other measurement values, similar modelling applies.

Fig. 2
figure 2

Class layout in universAAL Studio of body height and body mass index measurements

We define the class AnthropometricVariable with two subclasses, namely MeasuredAnthropometricVariable and CalculatedAnthropometricVariable. The former represents the variables that are measured with specific measuring devices. The latter represents the variables that are not physically measured, rather derived (or calculated) from other variables. The isCalculatedFrom property models such a dependency relation. In particular, a measured variable depends on one or more other variables. In the next, we report the relevant OWL generated by universAAL Studio:

figure a

Each of MeasuredAnthropometricVariable and CalculatedAnthropometricVariable also has specific enumeration subclasses with single values for all the variables. A specific measured value is then associated with its corresponding variable class via a property. For instance, property bodyHeightVariable of BodyHeightValue associates a measured value with its variable.

Class AnthropometricMeasurementDevice defines property measuresVariable which associates it with one or more MeasuredAnthropometricVariable variables. Property hasMeasurementDevice of class MeasuredAnthropometricVariable implements the inverse association.

The three additional properties isIndicatorOf, correlatesWith, and influences defined on AnthropometricVariable model relation of a variable with one or more other variables.

3.2.2 Variable measurements

We define the class of AnthropometricValue to model a specific measurement of some entity and identify a subclass RangeBasedAnthropometricValue where we can associate a normality range as well as a degree of abnormality indicator with the measurement.

We then define several subclasses of AnthropometricValue (BodyHeightValue and BodyWeightValue) and several subclasses of RangeBasedAnthropometricValue (BodyMassIndexValue, FatMassValue, FatFreeMassValue, HipCircumferenceValue, WaistCircumferenceValue, WaistToHeightRatioValue, and WaistToHipRatioValue) that represent specific measurement values.

Figure 3 shows a simplified view of the class layout in universAAL Studio for BodyWeightValue and BodyMassIndexValue and their superclasses (the other measurement classes are similar).

Fig. 3
figure 3

Class layout in universAAL Studio for weight and body mass Index and their superclasses

The OWL translation of the previous class layout includes the following triples (in Turtle format):

figure b

Each of the previous classes defines some datatype/object properties. For instance, class AnthropometricValue defines property datetime. This is intended to represent a timestamp when the measurement was taken. The corresponding OWL generated by universAAL Studio is as follows:

figure c

Property datetime is turned into an OWL datatype property, its domain is fixed to be the defining class (AnthropometricValue) and the defining class is required to be a subset of two restrictions: One is a cardinality restriction that requires that individuals of AnthropometricValue have exactly one datetime property defined and the other requires that individuals of AnthropometricValue have only datetime values with type xsd:dateTime (this is the type of the property).

BodyHeightValue and BodyWeightValue have three properties each: the actual value of the measurement (as a float), the measurement precision (as a float) and the measurement unit (as a Unit object). The Unit object is defined in another universAAL ontology.

Subclasses of RangeBasedAnthropometricValue have a measurement value (as a float) and some have a measurement unit (as a Unit object). Class RangeBaseAnthropometricValue also defines two properties: normalityRange and degreeOfAbnormality. Property normalityRange is an optional object property that requires values in the NormalityRange class. An optional property translates into a max cardinality restriction instead of a cardinality restriction as for the other properties defined above:

figure d

Class NormalityRange contains a rangeStart and rangeEnd float (datatype) properties that represent the normal range for the measurement. The property degreeOfAbnormality is also an optional property that has values from enumeration DegreeOfAbnormality.

An enumeration-valued property is treated as an object property in the sense that the generated OWL includes a max cardinality restriction (as for normalityRange) as well as an allValuesFrom restriction, as for all the other properties. The important point though is that we can specify some values for the enumeration type (in our case we indicate values as weak, moderate, and severe) and the generated OWL ontology includes the following triples.

figure e

which specify that some individuals are instances of class DegreeOfAbnormality. Note that universAAL Studio does not provide a way to express the fact that those individuals are distinct and that they are all the individuals of class DegreeOfAbnormality whereas OWL has that capability.

3.2.3 Measuring Instruments

Some of the measurement values are assessed with devices or measuring instruments. We model measuring instruments with class AnthropometricMeasurementDevice. Figure 4 illustrates relevant parts of the class layout in universAAL Studio for body height and body weight measures. The other measurement values are modelled similarly.

Fig. 4
figure 4

Class layout in universAAL Studio for body height and body weight measures considering the measurement device

Specific subclasses represent measuring instruments associated with a specific measured value. Such subclasses are defined as enumerations to specify some individuals of the class. For instance, for BodyHeightMeasurementDevice we have defined individuals measuring_tape, heightRod, and sensitized_wall_mirror. Thus we obtain the following OWL:

figure f

Note from Fig. 4 that property bodyHeightMeasurementDevice of BodyHeightMeasurementDevice associates the measured value with its measurement device. A similar property exists for all other measured values. Besides, not all of the values are measured with devices. Some values are calculated and need no association with a measurement device.

3.2.4 Measurement Grouping

The final piece of the ontology modelling concerns the association of a set of measured values with a user entity. This is achieved via class AnthropometricCharacteristics as illustrated in Fig. 5.

Fig. 5
figure 5

Class layout of the association of measured values with a user entity

A property exists in AnthropometricCharacteristics for each measurement value type and allows to group together zero or more measured values for each type of measurement.

Figure 5 only shows classes BodyHeightValue, BodyWeightValue, and BodyMassIndexValue but it should be understood that similar relations/properties exist in the ontology for all other measurement value classes. Note that for each characteristic instance there can be zero, one or more body height measurement values. This is reflected in the generated OWL ontology by the lack of a cardinality restriction on property bodyHeight.

Another important class of the NESTORE ontology is the ManagedIndividual, that allows the actual interoperability with the uAAL platform from a programming point of view. For ease of reading, we use in Fig. 6 a simplified view of Nutritional Habits subdomain to show the Java class hierarchy used by the NESTORE platform for handling ontological resources in the uAAL framework. The class ManagedIndividual is the root of all ontologies registered with the uAAL middleware, i.e., the root of the whole manageable class hierarchy in uAAL. All classes from the ontology are implemented in Java by creating a subclass of ManagedIndividual. One class is mainly used by other components deriving from ManagedIndividual (which is a subclass of the more generic Resource in the uAAL framework) which defines URIs for itself and its properties and offers getter and setter methods for its properties.

Fig. 6
figure 6

Nutrition Habits sub-ontology and the ManagedIndividual class

3.3 Overcoming uAAL-IoT specific issues

A problem we came across when developing the NESTORE ontology within the uAAL-IoT framework is the way associations are modelled by uAAL Studio. Suppose we want to model the measurement instrument for class BodyHeightValue to represent the device used to measure the height of a person and suppose we have a class BodyHeightMeasurementInstrument that represents the set of devices used to measure body height. If we use uAAL Studio to model an association named measurementInstrument from BodyHeightValue to BodyHeightMeasurementInstrument, the algorithm used by universAAL Studio to generate the OWL ontology will generate the statement:

figure g

Now, suppose we also have to model body weight and define an association measurementInstrument from BodyWeightValue to BodyWeightMeasurementInstrument, the resulting OWL ontology will also contain the statement:

figure h

We are modelling a measurementInstrument property in two different classes. This is unfortunate since the ontology generated by uAAL Studio may lead to unexpected inferences. For instance, if a user of the ontology wants to state that:

figure i

a reasoning engine will be able to deduce:

figure j

To overcome this issue, we have two options. The first one is to name the two associations differently (e.g., bodyHeightMeasurementInstrument and bodyWeightMeasurementInstrument) and lose the information that the two properties represent the same concept. The benefits of this approach must be balanced with the fact that uAAL Studio does not allow to state that a property is a sub-property of another. Another option is to define a superclass of BodyHeightValue and BodyWeightValue (i.e. AnthropometricValue), a superclass of BodyHeightMeasurementInstrument and BodyWeightMeasurementInstrument (i.e. AnthropometricMeasurementInstrument) and define property measurementInstrument from the former to the latter. With this solution, however, we lose model details.

In our modelling, we used the first approach when we judged it was important to represent more details about the domain. We used the second approach when the range of the property being modelled was the same, so we did not need to distinguish between them.

However, from this technical perspective, further work is needed to overcome the limitations of the uAAL Studio plugin. For example, a major open issue is that the only way to represent facts about individuals via the uAAL Studio plugin is to create an Enumeration and populate it with enumeration literals. The OWL ontology generated from the Java classes will represent the Enumeration as a class and state that the enumeration literals are members of that class (via the rdf:type property). It is not possible to generate other types of facts about individuals (i.e. stating that individual A has a certain property with value B except for class membership. This limitation prevented us from expressing facts concerning dependence relationships among specific variables. For instance, we could not say that:

figure k

Nevertheless, we modelled a relation named "influences" from a Variable (e.g. AnthropometricVariable) to itself with [0…*] cardinality. In this way, we can express the fact that such dependency may exist, but we do not say which anthropometric variables influence which other variables. In addition, via uAAL Studio it is not possible to state that classes are disjoint or that the elements of an Enumeration are all distinct or that they are all the elements of a class. This prevented us from expressing facts that can be expressed via the OWl language.

4 Results

The NESTORE ontology covers all the needed concepts to represent 3 significant domains of aged- individuals. In total, it contains 12 sub-ontologies with more than 60 classes and sub-classes referenced among them by using more than 100 relations and around 20 enumerations.

In the following, we detail for each of the main domains, the specific sub-ontologies we developed:

  • Physiological Status and Physical Activity Behaviour

  • Anthropometric characteristics. Three main concepts are represented in this sub-ontology. AnthropometricVariable includes all the types of variables that are measured and calculated, such as the BodyHeightVariable or the FatFreeMassVariable. AnthropometricValue includes the concepts to add the measured values, and a subclass that permits to define the normality ranges or degrees of abnormality. AnthropometricMeasurementDevice is used to specify the device or instrument used to measure a specific AnthropometricVariable.

  • Cardiovascular system. There are three main sub-classes representing measurements, values, and the recommended devices to get the information. The CardiovascularVariable includes seven different variables to model the important measurements related to heart rate and blood pressure, while the CardiovascularValue represents the base class of all measured values, and includes an enumeration to express the DegreeOfAbnormality if the value is not in the normality represented by the class NormalityRange. These two classes are related to the class CardiovascularMeasurementDevice, used to represent the devices or measurements of the MeasuredCardiovascularVariables.

  • Cardiorespiratory exercise capacity. A set of measurements and variables are related to the root concept of this sub-ontology. Two sub-classes are representing the variables and the devices commonly used to gather information about the variables. The CardioRespiratoryExerciseCapacityVariable is the superclass that defines the different cardiorespiratory variables (e.g. HeartRateReserveVariable) and the relations among them (influences and isEstimationOf). Other classes, such as the CardioRespiratoryExerciseCapacityValue, and the CardioRespiratoryExerciseCapacityMeasurementDevice, complete this sub-ontology indicating the relation of the variables with the corresponding values and recommended devices to capture the different variables.

  • Respiratory system. As some of the others sub-ontologies, the RespiratorySystem root concept is related to three superclasses that characterize the variables, values and devices used for representing this system. The RespiratorySystemVariable contains the OxygenSaturationVariable, the RestingBreathFrequencyVariable, and the ExerciseBreathFrequencyVariable, all of them related to the class RespiratorySystemValue, which includes the NormalityRange class related to a DegreeOfAbnormality. Finally, the RespiratorySystemMeasurementDevice is also modelled, used to assign devices and instruments to measure the different RespiratorySystemVariables.

  • Musculoskeletal system. This sub-ontology also contains the different variables, values, and devices used to characterize this specific domain. In this case, the variables are three: the MuscleMassVariable, the MuscleCrossSectionalAreaVariable, and the RangeOfMovementVariable. All of them are related to the MusculoskeleralSystemValue, to include the actual ranges and values, and the MusculoskeletalSystemMeasurementDevice, to specify the recommended instrument or device used to obtain this kind of information.

  • Strength, balance, flexibility and exercise capacity. The variables that conform to this sub-ontology characterize abilities like balance, clinical anaerobic fitness, flexibility or movement speed. In total, six variables are established and related to the corresponding classes to represent the actual values and the recommended devices.

  • Physical activity behaviour. In this case, five main classes form the sub-ontology. Two of them, are used to represent the sessions and the measurements derive from their execution, namely ExerciseSession and ExerciceExecution. Similar to the previously mentioned sub-ontologies, it contains classes to represent the variables, values and recommended devices. The PhysicalActivityBehaviourVariable, which defines relations through the influences association to subclasses like MeasuredPhysicalActivityBehaviourVariable, used to include variables susceptible of being measured with instruments or devices, or the subclass UserReportedPhysicalActivityBehaviourVariable which, on the contrary, is based on data reported by the user. Other types of variables are the ones under the subclass CalculatedPhysicalActivityBehaviourVariable, used to add variables resulting from an inference or calculation. As the other sub-ontologies, Physical activity behaviour contains classes to include the actual values and devices.

  • Sleep. Eight variables designed in form of sub-classes belong to the class SleepQualityVariable, and represent situations like the time in bed and the awakenings, among others. As with some other sub-ontologies, this one has two other classes used to represent the actual values of each variable and the devices used to measure them.

  • Nutrition

  1. (a)

    Energy expenditure. The TotalEnergyExpenditure, representing the energy consumed by the subject in 24 h, includes variables like BasalMetabolicRate, and ActivityEnergyExpenditure that are used to indicate the energy expended by vital body functions together with the energy expended doing physical activity. Another important class is the FoodRecord, used to include the list of ingredients and quantities consumed by the user during the day.

  2. (b)

    Blood parameters. The BloodTotalCholesterolLevel, represents the fasting blood concentration of total cholesterol and has the corresponding properties to add the actual values and the units. The BloodGlucoseLevel, models the fasting blood concentration of glucose. Finally, the class Pathology is the one used to know if the person might suffer from any pathology derived from the blood parameters values introduced in the other classes.

  3. (c)

    Nutrition habits. The class Meal represents the consumed food during a day and is modelled through properties like the numberOfMeals, the TypeOfMeal, and enumerators like the FoodGroup, and the Nutrient. Derived from this class, are the classes QuantitativeNutritionalLevel and QualitativeNutritionalLevel, used to evaluate if the quantities, diversity and equilibrium of the consumed food are adequate. Also, the Diet is represented in this sub-ontology, to be able to specify if the person follows a specialDiet, a countrySpecificDiet, or if he/she has restrictions on food groups that imply a refusion of any food group.

  • Cognitive/Mental/Social

  1. (a)

    Cognitive Status. In this sub-ontology various variables, all related to the superclass CognitiveStatus, are used. The VerbalMemory variable refers to the memory of words and other abstractions involving language that are recalled immediately after learning as well as after some longer-term retention interval. The WorkingMemory variable describes a component of short-term memory that encompasses both the short-term storage of information as well as the processing storage of this processed information for later recall. The AttentionSwitching variable is related to an executive function that involves the ability to unconsciously shift attention between one task and another and as such measures a component of fluid intelligence. The ProcessingSpeed variable refers to the cognitive ability that could be defined by describing the time it takes a person to process information, i.e., to do a mental task. The VerbalFluency variable describes the ability to produce as many words as possible from a given semantic category (e.g., animals) or according to a phonemic category (e.g., words with S) and represents both fluid and crystallized intelligence components. The EverydayPeformance variable refers to the ability to perform tasks with high ecological validity to everyday life functioning and practical knowledge (e.g., understanding the bus schedule or instruction to operate the coffee machine).

  2. (b)

    Mental Status. In this sub-ontology three variables, all related to the superclass MentalStatus, are used. The Personality variable is a key dimension to describe the stable characteristics of a person along 5 dimensions, the so-called Big Five (openness, conscientiousness, extraversion, agreeableness, neuroticism). The SNI variable is related to self-reported Social Network Size, Satisfaction with social relations, and Social Support/Social Control. The Subjective Well-Being variable is a multidimensional construct. In a common theoretical model, SWB consists of a cognitive component, the evaluation of how satisfied individuals are with their lives in general and with particular aspects of it (life satisfaction and satisfaction with single domains such as health, social relations, finances, etc.), and an emotional component (positive and negative affective experiences).

  3. (c)

    Mental Behavior and States. In this sub-ontology four variables, all related to the superclass MentalBehaviorStates, are used. Tha AcuteStress variable refers to the detection of stress from natural language and/or written free form texts, alternatively text transcribed speech. The DimensionalEmotion variable refers to self-reported daily/momentary dimensional affect. The DiscreteEmotion variable is related to self-reported discrete emotions that are considered to be biologically determined emotional responses whose expression and recognition are fundamentally the same for all individuals, such as anger, disgust, etc. The SentimentValence variable sentiment detection—valence only using natural language and/or written free form texts or transcribed speech.

  4. (d)

    Social behaviour. Various variables related to the superclass SocialBehaviourVariable is used in this sub-ontology. The SocialInteractionsSelfReportVariable, is used to describe the social interactions reported by the person, whereas the SocialInteractionsDetectionVariable, InteractionsDurationVariable, and InteractionsLocationVariable, are the ones coming from NESTORE intelligent algorithms to detect social interactions (Baronti, Barsocchi, Chessa, Mavilia, & Palumbo, Indoor bluetooth low energy dataset for localization, tracking, occupancy, and social interaction, 2018; Baronti, et al., Remote detection of social interactions in indoor environments through bluetooth low energy beacons, 2020). All the variables are related to the corresponding class to specify the values and the devices used to measure them.

In summary, NESTORE increases the uAAL-IoT ontologies collection by 40% and expands the uAAL-IoT domain usage for Physiological Status and Physical Activity Behaviour (8 ontologies), Nutrition (3 ontologies) and Cognitive and Mental Status and Social Behaviour (4 ontologies). A summary of the sub-domain ontologies developed in NESTORE and the variables included in each of them is shown in Table 1.

For further details, the whole ontology is available online as source code and documentation (NESTORE 2020a, b).

5 Discussion and conclusion

The main goal of this work was the development of a comprehensive ontology, based on the uAAL-IoT platform that can describe the complexity of the multifactorial ageing processes occurring in adulthood and old age. Such an ontology represents the first attempt to provide a uAAL knowledge formalization with a specific focus on healthy ageing.

Concerning the ontological frameworks available in the literature about the person’s well-being, we offer, as a major innovation, a novel ontology that considers the peculiar aspects of older adults’ lives. Indeed, the NESTORE ontology is based on both the holistic, multidimensional approach followed for the description of ageing and the peculiarity to be specifically tailored to older adults aged 65–75. Therefore, it takes into account both the user’s status and behaviour and considers physical activity, nutrition, cognitive, mental and social aspects as specific ontology domains.

Also looking at the specific NESTORE health domains, our ontology provides some original features if compared to the already existing semantic descriptions. Specifically, in the field of physical activity, previously developed ontologies are not targeted to the older adult population and are not contextualized in the whole physiological domain thus neglecting important relationships among variables. The NESTORE sub-ontology overcomes these weaknesses by approaching the problem with a holistic structure that includes relationships among variables in and across different domains.

As to the nutrition domain, the NESTORE nutrition sub-ontology is original, since it follows a citizen-based approach, describing the user status from different perspectives, such as the diet of the user. Besides, it was designed having in mind the possibility to use it in rule-based systems to infer new information about the user, e.g. the possibility to develop a certain disease. This feature adds to the NESTORE ontology additional capabilities making it useful and powerful to be integrated into recommender systems able to send nudges and guidance to users for preventing diseases.

From a technological point of view, the use of uAAL-IoT as a reference platform enables the interoperability with a plethora of open solutions in the field of Ambient Assisted Living without limiting the scope of the system. To guarantee interoperability and integration of the NESTORE knowledge base and data model to the uAAL-IoT platform, the presented specific ontology was translated into uAAL-compliant Java classes. Besides the achieved interoperability, this enriches the set of ontologies already available to the AAL community hosted by the uAAL-IoT semantic repository.

The main limitation of our work is that a systematic validation of the ontology is currently missing and this can be considered as future work related to the piloting phase of the project in which the ontology has been developed. In this work, we focused the attention on the detailed description of the chosen domains, the rationale behind this choice and the development and interoperability aspects of the NESTORE specific ontology. Also from the technical perspective, further adjustments are needed to overcome the limitations of the uAAL Studio plugin as done with the use of Enumeration classes to represent facts about individuals (as seen in the Methods Section). In particular, uAAL Studio prevents the possibility to state that classes are disjointed or the elements of an Enumeration are distinct or that they are all the elements of the class, as it is possible to do with the OWL language.

Further steps towards interoperability with existing ontological frameworks is the creation of an additional software layer to the NESTORE backend infrastructure that, leveraging the capabilities offered by the developed ontology, allows the transmission of information among different platforms not only related to the health and Ambient Assisted Living domains. This piece of software, a “bridge” between the NESTORE world and the outside, could help the development of a platform across different existing frameworks. The actual implementation of the so-called service layer bridge is one of our future works.

Moreover, the thorough use of this ontology might support the development of a decision support system, to promote healthy ageing, with the capacity to perform dynamic multi-scale modelling of user-specific data based on the semantic annotations of users’ profiles (Subias-Beltran et al. 2019). As an example, in the case of the NESTORE project, whose main objective is to provide personalised coaching plans, specifically tailored to older adults based on users’ profiles to trigger adaptive recommendations, a personalisation layer, based on the NESTORE ontology, is an important step to obtain useful and contextualised recommendations.

In conclusion, the NESTORE ontology here developed fills the gap in the ontology on healthy ageing providing innovation in terms of semantic content, since it is based on a holistic multidimensional knowledge formalization that takes into account the different domains involved in ageing: (1) Physiological Status and Physical Activity Behaviour; (2) Nutrition; and (3) Cognitive and Mental Status and Social Behaviour and technological approach.

Moreover, the implementation of the NESTORE ontology using the uAAL-IoT framework represents an innovation, with respect to previous healthy aging ontology, in terms of interoperability for IoT applications.

Table 1 The ontologies developed in NESTORE with a list of all the variables included in each sub-domain