Semantic Registration and Discovery System of Subsystems and Services within an Interoperable Coordination Platform in Smart Cities
Abstract
:1. Introduction
- Core functions: they are referred to generic platform functionalities which are offered by the Runtime Environment of the ICP. Core functions are provided by the following software components: applications servers, service broker, service repository, service bus, data broker and management, policy management, security management, workflow engine, security management and message broker and database.
- Extension functions: they are referred to ICP specific functionalities that can be used by other services and applications. Extension functions are offered by info broker, control broker, subsystem monitoring, subsystems adaptors, ontology connector, programming API and ICP ontology.
- City configurations functions: these are city specific generic functionalities available for other ICP services and applications. They are provided by event detection, location detection, data analytics, situation awareness, and reasoning.
2. Related Work
3. Proposed System for Registration and Discovery of Subsystems and Services within ICP
3.1. Innovations
3.2. Seamless Interconnection and Semantic Interoperability
3.3. Ontology Specifications
- OWL-S. This ontology is used to describe semantic web services. It enables users and software agents to automatically discover, invoke and compose web resources while offering services.
- CityGML. This ontology models 3D cities taking into account multiple features, such as city geometry, topology, semantic features, and appearance characteristics. The ultimate aim of the development of CityGML is providing a common understanding for the basic entities, attributes, and relations of a 3D city model.
- NRL. It describes different types of security information including mechanisms, protocols, objectives, algorithms and credentials in various levels of detail and specificity. NRL is comprehensive, well-organized and expressive enough to describe security policies.
3.3.1. Subsystem-Related Ontology Part
- SubsystemContext: the conditions in which the subsystem is provided. It is linked with Subsystem by an object property named hasSSContext.
- SubsystemProfile: descriptive information about the subsystem such as functionality, cost, provider, owner or usage policies. The Subsystem is interrelated with this class by using a hasSSProfile relationship. It is worth mentioning that the concepts of SS_Geolocation and SS_Policies are extracted from CityGML and NRL, respectively.
- SS_HealthState: information about the current health state of the subsystem. This class is connected with Subsystem via a hasSSHealthState relationship. Four different states (as potential individuals of SS_HealthState) are defined to describe the real status of a subsystem: Installed (it implies the subsystem is installed and ready to start once it receives an authorized command), Active (it states the subsystem is effectively running), Suspended (if subsystems are not required to run continuously, it is possible to make requests to pause them at any time during the active state) and Stopped (all the operations are stopped).
- IDSubsystem: a unique identification number to distinguish the subsystem. A pair of inversive (owl:InversiveOf) relationships (namely, hasSSID and isSSIDOf) dynamically links Subsystem with IDSubsystem.
3.3.2. Service-Related Ontology Part
- S_Cost. It is interrelating with Service via a hasSCost relationship; this class indicates the fee to be charged to users for using the service.
- S_Context. Service is connected with this class by a hasSContext object property. It expresses the environmental conditions involved to provide the service. More details can be visualized in Figure 7. For instance, if the service is Static, its functionality is always provided in the same location. Otherwise, if it is Dynamic, such as in the case of services provided by wearable devices where the location can change, it also contains information about the ContextCriticality declaring whether the context is critical for the service operation or not. The S_Location of the service depicts whether it is provided at an indoor or an outdoor location (split into IndoorLocation and OutdoorLocation classes respectively). The S_Geocoordinates of the service and Smartspace are able to provide a unique identifier of the service context.
- S_Process. The element Service is connected with this class that provides a complete description for the logic of Service, via a hasSProcess relationship. More details can be visualized in Figure 8. The S_Process class is refined into atomic and aggregated/complex processes. An atomic process (SimpleProcess) directly takes the information generated by the environment and executes the appropriated treatment to provide the functionality. On the contrary, the aggregated process (CompositeProcess) provides the new functionality by composing several atomic processes. Besides, the term Operation makes additional descriptions for service operations. More specifically, it provides a description of the methods the service provides (OperationDescription), an ID for each operation (OperationID), and information about used parameters including input and output parameters (ParameterInput and ParameterOutput, respectively) as well as the parameter preconditions (ParameterPrecondition).
- ServiceType. This concept aims to specify the concrete type of service. This classification considers service from its source, either provided by subsystems or by the ACCUS ICP. The connection between Service and ServiceType is established by an object property named hasSServiceType.
- S_HealthState. Similar as SS_HealthState, the class of S_HealthState, linking with Service by a hasSHealthsate relationship, describes the current state of Service.
- S_Profile. Service is interrelated with the S_Profile class via hasSProfile and isProfileOf relationships. Different features of the service are described and attributed in S_Profile. As shown in Figure 9, S_Profile states the ServiceID (a unique identifier for distinguishing the service), the ServiceKind (a more detailed specification for the type of service which differentiates it from the ontology's point of view, being either ACCUS-compliant or non-compliant, having the service using another ontology or not), the ServiceFunctionality (description of what the service is capable of doing), the SecurityProfile (description of the security features under which the service will be provided; this concept can be further extended by NRL), and Grounding (particular protocols used between the service and service consumers). Regarding the Grounding concept, it contains a more specific description (GroundingDescription) of the protocol, the URI (GroundingURI) and the protocol (GroundingProtocol) of the endpoint where the application is running and also the input (GroundingInputMessage) and output (GroundingOutputMessage) messages exchanged between the service and service consumers (see Figure 9).
3.4. Architecture of the Proposed System and Component Specifications
3.5. Procedure Specifications: The Specific Workflow of Registering and Discovering Services and Subsystems
3.5.1. Subsystems Registration
3.5.2. Services Registration
3.5.3. Subsystem and Service Discovery
4. Example and Validation of Subsystem and Service Registration and Discovery
4.1. Description of a Use Case Example
4.2. Example of Subsystem and Service Registration and Discovery
PREFIX ns: <http://www.semanticweb.org/ACCUS/1.1#> SELECT ?subsystemID ?subsystemFunctionality ?subsystemHealthState ?subsystemGeolocation ?subsystemProvider ?subsystemOwner ?subsystemCost ?subsystemPolicies WHERE {ns:@id@ ns:isSSIDOf ?subsystem. ?subsystem ns:hasSSID ?subsystemID. ?subsystem ns:hasSSHealthState ?subsystemHealthState. ?subsystem ns:hasSSContext ?subsystemContext. ?subsystemContext ns:hasSSGeoLocation ?subsystemGeolocation. ?subsystem ns:hasSSProfile ?subsystemProfile. ?subsystemProfile ns:hasSSFunctions ?subsystemFunctionality. ?subsystemProfile ns:hasSSCost ?subsystemCost. ?subsystemProfile ns:hasSSPolicies ?subsystemPolicies. ?subsystemProfile ns:hasSSOwner ?subsystemOwner. ?subsystemProfile ns:hasSSProvider ?subsystemProvider.}
<?xml version="1.0"?> <sparql xmlns="http://www.w3.org/2005/sparql-results#"> <head> <variable name="subsystemID"/> <variable name="subsystemFunctionality"/> <variable name="subsystemHealthState"/> <variable name="subsystemGeolocation"/> <variable name="subsystemProvider"/> <variable name="subsystemOwner"/> <variable name="subsystemCost"/> <variable name="subsystemPolicies"/> </head> <results> <result> <binding name="subsystemID"> <uri>http://www.semanticweb.org/ACCUS/1.1#3309</uri> </binding> <binding name="subsystemFunctionality"> <uri> http://www.semanticweb.org/ACCUS/1.1#Traffic Control Subsystem </uri> </binding> <binding name="subsystemHealthState"> <uri>http://www.semanticweb.org/ACCUS/1.1#Active</uri> </binding> <binding name="subsystemGeolocation"> <uri> http://www.semanticweb.org/ACCUS/1.1#Latitude: 54.3521 Longitude: 18.64637 </uri> </binding> <binding name="subsystemProvider"> <uri>http://www.semanticweb.org/ACCUS/1.1#ACCUS</uri> </binding> <binding name="subsystemOwner"> <uri>http://www.semanticweb.org/ACCUS/1.1#Company1</uri> </binding> <binding name="subsystemCost"> <uri>http://www.semanticweb.org/ACCUS/1.1#Free</uri> </binding> <binding name="subsystemPolicies"> <uri>http://www.semanticweb.org/ACCUS/1.1#Policy1, Policy2</uri> </binding> </result> </results> </sparql>
PREFIX ns: <http://www.semanticweb.org/ACCUS/1.1#> SELECT ?serviceID ?serviceFunctionality ?serviceType ?serviceHealthState ?serviceKind ?serviceCost ?securityProfile WHERE {?Resource ns:hasSServiceType ?serviceType. ?Resource ns:hasSCost ?serviceCost. ?Resource ns:hasSHealthstate ?serviceHealthState. ?Resource ns:hasSProfile ?serviceProfile. ?serviceProfile ns:hasSID ?serviceID. ?serviceProfile ns:hasServiceFunctionality ?serviceFunctionality. ?serviceProfile ns:hasSKind ?serviceKind. ?serviceProfile ns:hasSecurityProfile ?securityProfile.}and the information returned will be the following:
<?xml version="1.0"?> <sparql xmlns="http://www.w3.org/2005/sparql-results#"> <head> <variable name="serviceID"/> <variable name="serviceFunctionality"/> <variable name="serviceType"/> <variable name="serviceHealthState"/> <variable name="serviceKind"/> <variable name="serviceCost"/> <variable name="securityProfile"/> </head> <results> <result> <binding name="serviceID"> <uri>http://www.semanticweb.org/ACCUS/1.1#4713</uri> </binding> <binding name="serviceFunctionality"> <uri>http://www.semanticweb.org/ACCUS/1.1#Subsystem and Service Repository: an ontology translator for ACCUS ICP data treatment, whenever the nSSOO ontology is required, that will be storing semantic information related with subsystems and services connected to the ICP. </uri> </binding> <binding name="serviceType"> <uri>http://www.semanticweb.org/ACCUS/1.1#ACCUS ICP service</uri> </binding> <binding name="serviceHealthState"> <uri>http://www.semanticweb.org/ACCUS/1.1#Active</uri> </binding> <binding name="serviceKind"> <uri>http://www.semanticweb.org/ACCUS/1.1#ACCUS compliant</uri> </binding> <binding name="serviceCost"> <uri>http://www.semanticweb.org/ACCUS/1.1#Free</uri> </binding> <binding name="securityProfile"> <uri>http://www.semanticweb.org/ACCUS/1.1#ACCUS security profile</uri> </binding> </result> <result> <binding name="serviceID"> <uri>http://www.semanticweb.org/ACCUS/1.1#8647</uri> </binding> <binding name="serviceFunctionality"> <uri>http://www.semanticweb.org/ACCUS/1.1#Traffic lights control </uri> </binding> <binding name="serviceType"> <uri>http://www.semanticweb.org/ACCUS/1.1#Subsystem service</uri> </binding> <binding name="serviceHealthState"> <uri>http://www.semanticweb.org/ACCUS/1.1#Active</uri> </binding> <binding name="serviceKind"> <uri>http://www.semanticweb.org/ACCUS/1.1#Not ACCUS compliant</uri> </binding> <binding name="serviceCost"> <uri>http://www.semanticweb.org/ACCUS/1.1#Free</uri> </binding> <binding name="securityProfile"> <uri>http://www.semanticweb.org/ACCUS/1.1#securityProfile1</uri> </binding> </result> </result>......</result> </result>......</result> </results> </sparql>
4.3. Validation
4.3.1. Response Time
4.3.2. Registration Rate
5. Conclusions and Future Work
- The proposed subsystem and service discovery and registry scheme should be tested in more scenarios in a real city. In ACCUS project, the city that has been chosen to deploy the pilot is Gdansk, in Poland.
- The relationships among different services are a crucial factor for application developers when they design brand new applications. Future work should focus on examining the similarity degree of different services. For instance, services able to provide similar functionalities can be alternatives if the ideal service to be used is not available. A potential solution could be including information about relationships of different services in relevant service profiles.
- The nSSOO ontology should evolve to richly describe more features of subsystems and services. For example, it is possible to extend nSSOO with some new classes using FOAF [38] to include additional aspects of information about people, such as roles like provider or owner. Another potential extension of the ontology could be including concepts about event-driven services.
- Future emphasis can also be put on including decision-making related algorithms in the nSSOO ontology. e.g., MADISE [39] ontology can be reused and integrated with the nSSOO ontology.
Acknowledgments
Author Contributions
Conflicts of Interest
References
- Nellore, K.; Hancke, G. A Survey on Urban Traffic Management System Using Wireless Sensor Networks. Sensors 2016, 16, 157. [Google Scholar] [CrossRef] [PubMed]
- Moreno, A.; Perallos, A.; López-de-Ipiña, D.; Onieva, E.; Salaberria, I.; Masegosa, A. A Novel Software Architecture for the Provision of Context-Aware Semantic Transport Information. Sensors 2015, 15, 12299–12322. [Google Scholar] [CrossRef] [PubMed]
- Ghayvat, H.; Mukhopadhyay, S.; Gui, X.; Suryadevara, N. WSN- and IOT-Based Smart Homes and Their Extension to Smart Buildings. Sensors 2015, 15, 10350–10379. [Google Scholar] [CrossRef] [PubMed]
- Rodríguez-Molina, J.; Martínez, J.-F.; Castillejo, P.; de Diego, R. SMArc: A Proposal for a Smart, Semantic Middleware Architecture Focused on Smart City Energy Management. Int. J. Distrib. Sens. Netw. 2013, 2013, 1–17. [Google Scholar] [CrossRef]
- Zhou, L.; Rodrigues, J.J.P.C. Service-oriented middleware for smart grid: Principle, infrastructure, and application. IEEE Commun. Mag. 2013, 51, 84–89. [Google Scholar] [CrossRef]
- Hernandez, L.; Baladrón, C.; Aguiar, J.M.; Calavia, L.; Carro, B.; Sanchez-Esguevillas, A.; Cook, D.J.; Chinarro, D.; Gómez, J. A Study of the Relationship between Weather Variables and Electric Power Demand inside a Smart Grid/Smart World Framework. Sensors 2012, 12, 11571–11591. [Google Scholar] [CrossRef]
- Sung, W.-T.; Lin, J.-S. Design and Implementation of a Smart LED Lighting System Using a Self Adaptive Weighted Data Fusion Algorithm. Sensors 2013, 13, 16915–16939. [Google Scholar] [CrossRef]
- Warriach, E.U.; Kaldeli, E.; Lazovik, A.; Aiello, M. An Interplatform Service-Oriented Middleware for the Smart Home. Int. J. Smart Home 2013, 7, 115–142. [Google Scholar]
- RECI. Red Española de Ciudades Inteligentes. Available online: http://www.redciudadesinteligentes.es (accessed on 28 March 2016).
- The ACCUS (Adaptive Cooperative Control in Urban (sub)Systems) Project. Available online: http://projectaccus.eu/ (accessed on 31 March 2016).
- Zang, M.A. Ontological Approaches for Semantic Interoperability. In Proceedings of the 5th Annual ONR Workshop on Collaborative Decision-Support Systems, San Luis Obispo, CA, USA, 10–11 September 2003.
- Services Oriented Architecture for All. Available online: http://www.soa4all.ue (accessed on 10 April 2016).
- Tagging Tool Based on a Semantic Discovery Framework. Available online: www.tatoo-fp7.eu (accessed on 11 March 2016).
- Cloud4SOA. Available online: http://www.cloud4soa.com (accessed on 10 March 2016).
- Butler, B. PaaS Primer: What Is Platform as Services and Why Does It Matter? Network World: Framingham, MA, USA, 2013. [Google Scholar]
- Semantichealthnet. Available online: http://www.semantichealthnet.eu (accessed on 27 March 2016).
- Mobilized Lifestyle with Wearables (LifeWear). Available online: https://itea3.org/project/lifeware.html (accesed 21 June 2016).
- Ryu, M.; Kim, J.; Yun, J. Integrated semantics services platform for the internet of things: A case study of a smart office. Sensors 2015, 15, 2137–2160. [Google Scholar] [CrossRef] [PubMed]
- Hussain, A.; Wenbi, R.; da Silva, A.L.; Nadher, M.; Mudhish, M. Health and emergency-care platform for the elderly and disabled people in the Smart City. J. Syst. Softw. 2015, 110, 253–263. [Google Scholar] [CrossRef]
- Benhaourech, A.; Aaroud, A.; Roose, P.; Zine-Dine, K. Study and comparison of smart city dedicated platforms: Case of the Kalimucho platform. In Proceedings of the 2014 5th Workshop on Codes, Cryptography and Communication Systems (WCCCS), El Jadida, Morocco, 27–28 November 2014; pp. 161–166.
- Rodriguez-Molina, J.; Martinez, J.F.; Castillejo, P.; López, L. Combining Wireless Sensors networks ans semantic middleware for an internet of things-based sportman/woman monitoring application. Sensors 2013, 13, 1787–1835. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Bispo, K.A.; Rosa, N.S.; Cunha, P.R. SITRUS: Semantic Infraestructure for Wireless Sensor Networks. Sensors 2015, 15, 27436–27469. [Google Scholar] [CrossRef] [PubMed]
- Camarinha-Matos, L.M.; Afsarmanesh, H.; Galeano, N.; Molina, A. Collaborative networked organizations—Concepts and practice in manufacturing entreprises. Comput. Ind. Eng. 2009, 57, 46–60. [Google Scholar] [CrossRef]
- Li, C.-S.; Liao, W. Software Defined Networks. IEEE Commun. Mag. 2013, 51, 113–114. [Google Scholar] [CrossRef]
- Kosmides, P.; Adamopoulo, E.; Demestichas, K.; Theologou, M.; Anagnostou, M.; Rouskas, A. Socially Aware Heterogeneous Wirelees Networks. Sensors 2015, 15, 13705–13724. [Google Scholar] [CrossRef] [PubMed]
- WildFly. Available online: http://www.wildfly.org (accessed on 25 May 2016).
- WSO2: Open platform for your connected Bussiness. Available online: http://wso2.com (accessed on 25 May 2016).
- Abel, D.J.; Ooi, B.C.; Tan, K.L.; Tan, S.H. Towards integrated geographical information processing. J. Geogr. Inf. Sci. 1998, 12, 353–371. [Google Scholar] [CrossRef]
- Turnitsa, C.D. Extending the levels of conceptual interoperability model. In Proceedings of the IEEE Summer Computer Simulation Conference, Philadelphia, PA, USA, 24–28 July 2005.
- Martin, D.; Burstein, M.; Hobbs, J.; Lassila, O.; McDermott, D.; McIlraith, S.; Narayanan, S.; Paolucci, M.; Parsia, B.; Payne, T.; et al. OWL-S: Semantic Markup for Web Services. W3C Member Submission 22 November 2004. Available online: http://www.w3.org/Submission/OWL-S (acceessed on 15 April 2015).
- CityGML. Available online: http://www.opengeospatial.org/standards/citygml (accessed on 25 May 2016).
- Kim, A.; Luo, J.; Kang, M. Security Ontology for Annotating Resources. In Proceedings of the 5th International Conference on Ontology, Databases and Applications on Semantics (ODBASE; 05), Agia Napa, Cyprus, 31 October–4 November 2005; pp. 1483–1499.
- Avizienis, A.; Laprie, J.; Randell, B.; Landwehr, C. Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secur. Comput. 2004, 1, 11–33. [Google Scholar] [CrossRef]
- Stoimenov, L.; Stanimirovic, A.; Dordevic-Kajan, S. Semantic interoperability using multiples ontologies. In Proceedings of the AGILE 2005 8th AGILE Conference on GIScience, Estoril, Portugal, 26–28 May 2005; pp. 261–270.
- Jbossdeveloper. Available online: http://www.jboss.org/products/fuse/overview (accessed on 25 May 2016).
- Mulesoft. Available online: http://www.mulesoft.com/platform/soa/mule-esb-open-source-esb (accessed on 25 May 2016).
- Prud’hommeaux, E.; Seaborne, A. SPARQL Query Lenguaje for RDF, W3C Recommendation 15 January 2008. Available online: http://www.w3.org/TR/rdf-sparql-query (acceessed on 25 March 2016).
- Brickley, D.; Miller, L. FOAF Vocabulary Specification 0.99. Namespace Document 14 January 2014—Paddington Edition. Available online: http://xmlns.com/foaf/spec (accessed on 25 March 2016).
- Kornyshova, E.; Denecker, R. Decision making method family madise: Validations within the Requirements Engineering Domain. In Proceedings of the 6th International Conference on Research Challenges in Information Science RCIS, Valencia, Spain, 1–10 May 2012; pp. 1–10.
Semantic Annotations | Subsystem Data |
---|---|
SS_Geolocation | Latitude: 54.3521 Longitude: 18.64637 |
SS_HealthState | Active |
SubsystemFunctionality | Traffic Control Subsystem |
SS_Provider | ACCUS |
SS_Owner | Company1 |
SS_Cost | Free |
SS_Policies | Policy1, Policy2 |
Semantic Annotations | Service Data | Semantic Annotations | Service Data |
---|---|---|---|
ServiceType | Subsystem service | OperationDescription | changeState: provides the change and duration of the new state |
S_HealthState | Active | ParameterPrecondition | initialState |
S_Cost | Free | ParameterInput | dataTimeInterval |
ServiceKind | ACCUS compliant | ParameterOutput | lightValue |
ServiceFunctionality | Traffic lights control | Static | Static |
SecurityProfile | securityProfile1 | Dynamic | Non dynamic |
GroundingDescription | change state | IndoorLocation | Non indoor |
GroundingInputMessage | none | OutdoorLocation | Outdoor |
GroundingOutputMessage | changes done | ContextCriticality | Critical |
GroundingURI | ACCUS/trafficLightsControl | Smartspace | SS2 |
GroundingProtocol | REST | S_Latitude | 54.3521 |
SimpleProcess | Simple | S_Longitude | 18.64637 |
Operation | T1 (ms) | T2 (ms) | T3 (ms) | Average Time Elapsed (ms) |
---|---|---|---|---|
registerSubsystem | 130 | 29 | 56 | 71.67 |
registerService | 142 | 142 | 92 | 125.33 |
listAll | 469 | 530 | 532 | 510.33 |
listAllSubsystems | 450 | 447 | 463 | 453.33 |
listAllServices | 476 | 490 | 460 | 475.33 |
getSubsystemInfo | 464 | 498 | 476 | 479.33 |
getServiceInfo | 815 | 578 | 564 | 652.33 |
Operation | T1 (ms) | T2 (ms) | T3 (ms) | Average Time Elapsed (ms) |
---|---|---|---|---|
registerSubsystem | 84 | 30 | 31 | 48.33 |
registerService | 47 | 53 | 46 | 48.67 |
listAll | 284 | 105 | 138 | 175.67 |
listAllSubsystems | 67 | 100 | 74 | 80.33 |
listAllServices | 20 | 17 | 18 | 18.33 |
getSubsystemInfo | 8 | 5 | 5 | 6 |
getServiceInfo | 99 | 42 | 27 | 56 |
Operation | T1 (ms) | T2 (ms) | T3 (ms) | Average Time Elapsed (ms) |
---|---|---|---|---|
registerSubsystem | 67 | 66 | 28 | 53.67 |
registerService | 76 | 75 | 41 | 64 |
listAll | 603 | 246 | 158 | 335.67 |
listAllSubsystems | 84 | 70 | 76 | 76.67 |
listAllServices | 73 | 63 | 62 | 66 |
getSubsystemInfo | 6 | 3 | 5 | 4.67 |
getServiceInfo | 183 | 44 | 26 | 84.33 |
Operation | T1 (ms) | T2 (ms) | T3 (ms) | Average Time Elapsed (ms) |
---|---|---|---|---|
registerSubsystem | 78 | 27 | 35 | 46.67 |
registerService | 145 | 42 | 42 | 76.33 |
listAll | 398 | 368 | 771 | 512.33 |
listAllSubsystems | 195 | 500 | 367 | 354 |
listAllServices | 138 | 107 | 111 | 118.67 |
getSubsystemInfo | 6 | 4 | 5 | 5 |
getServiceInfo | 108 | 18 | 16 | 47.33 |
© 2016 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Rubio, G.; Martínez, J.F.; Gómez, D.; Li, X. Semantic Registration and Discovery System of Subsystems and Services within an Interoperable Coordination Platform in Smart Cities. Sensors 2016, 16, 955. https://doi.org/10.3390/s16070955
Rubio G, Martínez JF, Gómez D, Li X. Semantic Registration and Discovery System of Subsystems and Services within an Interoperable Coordination Platform in Smart Cities. Sensors. 2016; 16(7):955. https://doi.org/10.3390/s16070955
Chicago/Turabian StyleRubio, Gregorio, José Fernán Martínez, David Gómez, and Xin Li. 2016. "Semantic Registration and Discovery System of Subsystems and Services within an Interoperable Coordination Platform in Smart Cities" Sensors 16, no. 7: 955. https://doi.org/10.3390/s16070955
APA StyleRubio, G., Martínez, J. F., Gómez, D., & Li, X. (2016). Semantic Registration and Discovery System of Subsystems and Services within an Interoperable Coordination Platform in Smart Cities. Sensors, 16(7), 955. https://doi.org/10.3390/s16070955