1 Introduction

A cyber-physical system (CPS) is defined as a meaningful combination of physical and/or cyber entities that are necessary to achieve the ultimate goal of the systems [1]. For example, the physical entities (sensors) collect the data, the cyber entities process the data to generate the information (instructions), and finally actuators as physical entity respond to the instruction. Needless to say, wire and/or wireless communications are necessarily occurred between the entities. In order to help you understand the scope of the CPSs, we perform the analysis on the CPSs with respect to space, granularity of service, and degree of interaction as depicted in Fig. 1. In Fig. 1, the composite services are defined as a collection of atomic services while the atomic service performs a single operation. The services are executed across the physical and cyber spaces or on the physical space. In this axe, we exclude the services that are performed only in the cyber space because it may be classified web services. In the degree of interaction, standalone means that the service is performed by one-step execution and cooperative is accompanied with interactions between/among physical and cyber entities.

Fig. 1.
figure 1

Analysis on CPSs

As mentioned state, most CPSs are composed of a number of heterogeneous sub-systems or entities that are able to interact with each other to meet the goal of the systems. Furthermore, the subsystems or entities are should be automatically composed to cope with the dynamically changed requirements and/or environments. At this time, the key to success of automatic service composition for the CPSs is how to overcome heterogeneity inherent in the subsystems or entities. The heterogeneity of the subsystems or the entities is caused by in a variety of development environments such as communication protocol, software, and/or platform [2].

Some researchers have been interested in the heterogeneity issue arising from the automatic service composition within the CPSs [2, 3]. Research is divided into two types depending on whether the ontologies are adopted or not. Because ontology is a key element for enabling interoperability of the heterogeneous subsystems or entities [4], it is impossible to avoid human intervention in the service composition if the ontologies are not applied. In this light, research without the ontology cannot conduct the dynamic composition among the services in CPS. Even though the ontology is adopted for the service composition, it is often applied only for the cyber services [5]. So, the ontology for the service composition must include not only the cyber services but also the physical objects. Furthermore, some research has not attempted to compose both the cyber services and the physical objects. As a result, we cannot expect the dynamic and automatic service composition that include with full scale of the cyber services and the physical objects.

To overcome the limitations, this paper presents an OWL-based upper ontology, called OWL-CPS (Ontology Web Language for Cyber-Physical Service) which provides semantic specifications for automatic and dynamic service composition of CPSs. OWL-CPS is composed of an upper ontology for physical objects (named OWL-P), an upper ontology for cyber services (OWL-C), and their relationships. At this time, OWL-C comprises OWL-S web services and computational services that are related to a set of physical objects. OWL-P provides a high-level abstract specification of the physical objects through the three essential parts: the profile, the model, and the grounding. Finally, OWL-CPS ontology provides a stable abstract model to automatically discover and invoke the cyber services and the physical objects for dynamic composing them to achieve the goals.

In fact, one of the main contributions of OWL-CPS ontology tries to integration of the physical objects and the cyber services for composing the services dynamically and automatically. Moreover, other benefits of OWL-CPS ontology are the automatic execution of defined CPS services as well as the support to their discovery.

The paper is structured as follows. The next section discusses related works. Section 3 briefly introduces the high-level description of our upper ontology, named OWL-CPS. In addition, we describe the details about the OWL-CPS ontology in Sect. 3. Section 4 illustrates an application scenario to show the effectiveness of OWL-CPS ontology. Finally, Sect. 5 puts forth the conclusions and suggests further research in connection with OWL-CPS ontology.

2 Literature Review

The key feature to be resolved for the services composition in the CPSs is heterogeneity that may exist among the physical objects and the cyber services. However, there was little research to solve the heterogeneity issue arising from the automatic service composition within the CPSs [2, 3]. To clarify the limitations of the research, we analyze and compare the research with respect to composition methods, coverage, and whether semantics are considered on the composition processes or not. The comparison results are summarized in Table 1. As depicted in Table 1, we adopt ontology as a key criterion for classification because ontology is an enabler to achieve interoperability of the heterogeneous subsystems or entities. In addition, the ontology can significantly influence in determining whether the services can be automatically and dynamically composed by the heterogeneous subsystems or entities. Table 1 show that the dynamic composition is not possible because the research does not apply the ontology.

Table 1. Analysis and comparison of service composition for CPSs

Although some researchers adopt the ontology for the service composition in the CPSs, there is no research that covers whole spectrums of the CPS with semantic annotation on the physical objects and the cyber services.

Some researchers did not take ontology into consideration to compose the physical objects and the cyber services [6, 7]. They performed research after predefining all possible combinations of the physical things and the cyber services. If some problems are occurred in predefined elements, then the services will be suspended. Furthermore, La (2010) [6] did not consider the semantic for the physical devices.

Wang et al. (2014) [8] proposed the workflow model to perform the context-sensitive autonomous composition. However, the reusability of the physical things is very low because the workflow model is designed to be tightly coupled of the physical things and the cyber services. Yen et al. (2016) [11] developed a solution that can service composition dynamically and easily. However, there is insufficient consideration of the cyber services as well as the semantic for the physical things. Rajhans et al. (2014) [7] proposed the architectural framework for heterogeneous model-based development of CPS to integrate the multi-model CPSs.

Unfortunately, there is no research that fully satisfies both dynamic composition and full spectrum of the physical things and the cyber services. In this paper, we propose OWL-CPS to overcome limitations of previous research.

3 An Upper Ontology for Cyber-Physical Services

As mentioned state, OWL-CPS composed of OWL-C for the services and OWL-P for the physical objects. OWL-CPS is designed by analogy OWL-S for web services. Furthermore, OWL-CPS has unique features to reflect the structure and the characteristics of the cyber services and the physical objects. The overall structure of OWL-CPS is depicted in Fig. 2.

Fig. 2.
figure 2

Analysis on CPSs

OWL-C is an upper ontology for the services including the cyber services and the computational services. The cyber services correspond to Web services of OWL-S and interacts with another cyber services via SOAP or REST protocol. Furthermore, it is triggered by the computational services. The computational services are types of software components that can process the sensor data from the physical objects and generate an output with processing results [14]. In other words, it means only the physical objects can trigger the computational services. Similar to OWL-S, OWP-C provides a complete description necessary to discover, invoke, and compose the services.

OWL-P is an upper ontology for the physical things such as sensors, actuators, and/or devices. Although OWL-P follows the structure of OWL-S, OWL-P differs from OWL-S in that it borrows some concepts from other ontologies such Semantic Sensor Network (SSN) ontology [15], Semantic Actuator Network (SAN) ontology [16], and WordNet [17] to exactly describe the physical objects. Furthermore, it sends sensor data to the computational services and may react to processing results by the computational services.

OWL-P Ontology

As mentioned state, OWL-P is an upper ontology for the physical things on the CPSs. OWL-P declares specifications and functions of sensors, actuators, and/or devices that have the ability to change the states of the physical world.

OWL-P is based on three essential types of knowledge about the physical things (depicted in Fig. 2), in accordance with the following questions:

  • What is the physical object? The class “ObjectProfile” declares characteristics, deployed environments, and specifications of the physical objects.

  • How does the physical object work? The class “ObjectModel” describes how the physical object is activated in service process for CPSs.

  • How does one interact with it? The class “ObjectGrounding” provides the functional interfaces with “ObjectModel.”

Aside from this, it has an URI as an identifier. The URI for the physical things is used when it is composed with the services.

  • ObjectProfile

    The class “ObjectProfile” has three subclasses: ObjectDescription, ObjectImplementation, ObjectSpecifications, and ObjectOperation. Detailed descriptions for the subclasses are summarized in Table 2.

    Table 2. Subclasses of the ObjectProfile
  • ObjectModel

    The class ObjectModel gives a description about how the physical objects perform sensing activities and/or actuating activities. It has two way relations with the class “ObjectProfile” (Fig. 3).

    Fig. 3.
    figure 3

    Physical object representation in OWL-C

4 OWL-C Ontology

As mentioned earlier, OWL-C is an upper ontology for the services including the cyber services and the computational services. The cyber services are correspond to the Web services. The service composition of the Web services follows the instructions of OWL-S. At this time, the cyber services adopt SOAP or REST as communication protocols. The computational services are similar to the software components that can process the sensor data from the physical objects and generate an output with processing results. The overall structure of OWL-C ontology is depicted in Fig. 4.

Fig. 4.
figure 4

Service Represnetation of OWL-C ontology

Similar to OWL-P ontology, it has “ServiceURI” as a unique identifier. “ServiceURI” is referred for service discovery, selection, and composition via Web protocol. Since the cyber services are composed by OWL-S ontology, we intend to describe computational service intensively. The class ComputationalService as three subclasses: ComServiceProfile, ComServiceModel, and ComServiceGrounding.

  • CompServiceProfile

    The class ComServiceProfile is used to declare the computational service. As shown in Fig. 4, there are two kinds of datatype properties and a subclass. Detailed description of the properties and the subclass are as follow.

    • hasCompServiceName: is the name connected with the class ComServiceProfile.

    • hasDescription: is the text description of the class ComServiceProfile.

    • CompServiceType: defines a type of the service to enrich the semantics for the services.

  • CompServiceModel

    As state earlier, the class ComServiceModel describes ‘‘How does ComputationalService work’’. According to the characterization of a ComServiceModel, the class specifies the functional description of the computational service in terms of input, results, request, and acting. Four kinds of functional descriptions share a common superclass, named the class parameter. The class parameter related to CompServiceModel with a property “hasParameter.” The property hasParameter allows additional parameters to enhance service discovery capabilities. Furthermore, to achieve the ultimate goal of the CPSs, it interacts with class “ObjectModel” via data interchange (Fig. 4).

5 Illustrative Example

Kim lives smart house that deploys a lot of sensor-embedded smart devices. These devices are controlled and composed by a smart agent to meet the requirements of its master, named Kim. The Kim’s agent can identify the sensors and actuators that are defined by OWL-CPS ontology. Furthermore, it is able to access the physical things via Web protocol such as SOAP or REST if it composes a series of physical this and the cyber services to meet the needs of its master. For example, if Kim (physical thing) leaves home after working, his agent (cyber service) accesses and runs the air conditioner (physical thing) to the Kim’s favorite temperature. At this time, the smart agent is able to identify and compose the physical things and the cyber services dynamically. Furthermore, Kim’s agent can provide similar service to its master when its master go on a business trip and stay at the hotel room. It tries to infer the relation between the hotel room and Kim’s home. Based on the inference results, it controls the air conditioner to the Kim’s favorite temperature. The reason why these services are possible is because the physical things and the cyber services to be composed are implemented in OWL-CPS. The temperature sensor ontology for the service is depicted in Fig. 5.

Fig. 5.
figure 5

Example of temperature sensor representation using OWL-P

6 Conclusion and Further Research

this paper presents an OWL-based upper ontology, called OWL-CPS (Ontology Web Language for Cyber-Physical Service) which provides semantic specifications for automatic and dynamic service composition of CPSs. OWL-CPS is composed of an upper ontology for physical objects (named OWL-P), an upper ontology for cyber services (OWL-C), and their relationships. OWL-CPS ontology can achieve the dynamic service composition because the physical things and the cyber services via semantic discovery and access via Web protocol. In particular, OWL-CPS extends the model of OWL-S to the physical things.

Contributions of this study are summarized as follows. First, we tried to dynamic and automatic composition of the physical things and the cyber services. This study has demonstrated the possibility of overcoming the limitations of existing research. Second, we proposed the model of the OWL-P for the physical things and OWL-C for the cyber services. These ontologies are held the unique classes and the properties that are required to be composed the services. Finally, we have demonstrated the feasibility of the dynamic composition between because the physical things and the cyber services through this paper.

This research can be extended to several directions. We need to refine the OWL-CPS ontology through various applications. In addition, we can develop application programs that can apply OWL-CPS ontology.