Smart API

A key for enabling smarter, automated combinations of city services


Chapter 1. Service mashups drive the value in Smart Cities

Internet of Things, Connected Objects, Smart Cities. There are many often overlapping and even more often overused terms that describe the digitalization of city infrastructures. Simply the sheer number of terms illustrates the breadth of the topic and the various differing viewpoints towards the same goal. For some, Smart Cities may represent the goal to be reached, Internet of Things one technology to reach it, and Connected Objects a realization of that particular technology. Others may use the same terms with a significantly different meaning.

What is however clear is what the variety in terms highlights: in many real-life implementations just one technology, one process, or one skillset is seldom the thing that creates the eventual solution that consumers or citizens use and value. More often than not it is actually the combination that is the driver for value. Combining things is what is sometimes called creating "mashups".

Take the example of traffic and the current hot topic, mobility as a service. This traffic service mashup combines private cars, taxis, public buses, trams etc into one service. In mashups like mobility services the end result is important, not the means to achieve it. The user wants from point A to point B in a given time and is ready to use any combination of vehicles to get there. The digital service will then orchestrate and arrange them.

Similarly, efficiency can be achieved by sharing and combining resources innovatively in a range of public and private services. If a person from one service takes food or medicine to a location, that same person could carry packages and recyclable material on the way back. Such help and assistance has always been a part of human interaction and assistance in smaller communities. Now modern technology makes managing the same feasible and efficient in high volume in city environments, too.

While the examples above concern physical goods and services, the same approach applies also to knowledge, expertise, data and other intangibles. Traditionally many knowledge services have been sold on a per assignment basis. For example an analyst could receive a large dataset of some data - say, traffic statistics or election results - and after some period of time delivers a report with findings. With advances in artificial intelligence and the continuous flow of constantly updating data from various sensors, a large portion of such services is becoming real-time and online. Analysis specialists set up their servers that can produce the results immediately to ad hoc requests and produce alerts based on continuously fed data.

Smart API is a technology created to make such sharing feasible and efficient and thus offer the "glue" for service combinations. Its purpose is to open the silos of data and skills that different parties have and to enable the efficient creation of mashups of services.

Smart API is valuable in two ways

  1. It helps in creating new value through innovation environments where data and expertise from public and private organizations is mixed and matched in previously unavailable ways.
  2. It makes it possible to source expertise, data and connections to physical devices much more flexibly, if effect limiting the lock-in to certain providers, increasing competition between them, and consequently lowering costs.

Chapter 2. What is the Smart API?

The roots of the Smart API are in intelligent sensoring and control systems. The core of the technology was created as a cooperation of European companies, universities and research organizations with the help of EU's ITEA funding. The primary aim of this initiative was to solve the problems of energy network balancing caused by the fluctuations of energy supply and demand due to renewable energy production and electric vehicles.

Energy is a prime example of critical city infrastructure where coordination and cooperation is needed. Energy consumers and producers must be engaged in a constant, often real-time dialogue that coordinates the use of the electric grid and energy so that issues with energy supply can be avoided. This requires not only direct connections to the physical world, in the form of power measurements and control of actuators, but also intangible services such as forecasts of energy market, weather, traffic, and user behavior. Due to its critical nature, the coordination of energy also acts as an excellent test bed for other application areas where such coordination is needed.

Smart API comprises three things

  1. A public standard specification of intelligent data exchange between organizations.
  2. An open source software library that helps using the specification in various IT systems
  3. A set of online services that enable efficient coordination between parties that exchange data.

In technical terms, the purpose of Smart API is to enable ad hoc trusted data exchange between two previously unknown parties. It does this by employing technologies that automatically create trust relationships between systems, secures the transmissions, and translates data into an underderstandable, uniform format.

In practical implementations, such exchange has previously been expensive and technically difficult to achieve. There are several reasons why the adoption of proper data exchange has been too expensive in high volume. This is due to five key implementation problems:

  • Finding each party that acts as the gatekeeper to some resource (the "finding problem")
  • Receiving the security clearance for accessing the resource (the "access problem")
  • Learning the details of the mostly proprietary interfaces of the systems (the "compatibility problem")
  • Implementing the technical compatibility to each remote system (the "implementation problem")
  • Managing the monetary compensation for the access and ensuring compliance to commitments (the "compensation problem")

The features of Smart API have been put into place to solve these problems.

Chapter 3. Smart API functionality

Smart API standardizes data in an intelligent way. It has been primarily designed for Internet of Things applications and models data in the form of objects, fitting perfectly into the Connected Object philosophy of the field. In terms of a trust model, the Smart API falls into the same category as block chain technology and actually leverages some key concepts from block chain in the design.

The data in Smart API is expressed in semantic, linked data format - RDF to be more precise. While no data format can be guaranteed to be "it", the ultimate all-capable data set that encompasses answers to all demands days to come, semantics is currently regarded as the most advanced, the most comprehensive way to describe data.

The Smart API standard is defined in the form of ontologies, in essence data definitions that say how those connected objects should be described. IT systems that conform to these ontologies can understand data that has been created by someone else. The data forms so called graphs, ways to connect data points to each other in a meaningful way, thus creating knowledge of relationships. This lays the groundwork for automated data processing and artificial intelligence applications.

Semantic data is similar to any other data transferred between IT systems but has a key distinction in defining what is called a context, a more precise definition of what the data actually means. To understand why context is so important, let's look at two important requirements for distributed data exchange

  1. in a distributed environment there are likely to be many different suppliers using different technologies and each having their own ways of representing and transmitting data
  2. to be cost effective, control needs automation, which in turn required various kinds of computing algorithms. The algorithms must be able to receive data in a common style and in a common context to make their calculations correct.

In a way context gives automation systems the answer to "what are you talking about" i.e. in what context are you representing the data. This makes it possible to understand the data in a uniform fashion, which is exactly what is needed for compatibility.

To make it as easy as possible to implement the Smart API, the features of processing linked data are implemented in a software development kit. This kit is open source and contains all the code necessary for an IT system to become compatible with Smart API. The kit is available for all major programming environments, including Java, .net, Python, and C++.

While the ontologies and the software development kit solves the third one of the five key problems outlined above, the "compatibility problem", Smart API Services are there to solve the four other issues.

Chapter 4. Smart API Services

There are four core services in Smart API

  • Smart API Find
  • Smart API Talk
  • Smart API Secure
  • Smart API Transact

Each Smart API node registers itself to Smart API Find directory which maintains a map of management relationships. You can consider Smart API Find as kind of a "phone book" of Smart API parties. It knows who is who and how to contact that party. As the name implies, its purpose is to solve the "finding" problem.

Once a party to connect to is found, a secure connection must be established. Smart API Secure helps in this. It contains methods for authentication, authorization policies, cryptographic key management, etc. With the help of Smart API Secure, two systems can negotiate access rights and automatically open access to trusted parties. This service is therefore useful in solving the "access problem".

Once access is granted, the communicating parties must understand each other during the data exchange. Smart API Talk is for this purpose. It hosts all the data definitions, or ontologies, offers tools for defining and expanding them, converts data, and has tools for automatic software code generation. In essence, it helps in actually implementing common data exchange, i.e. solves the "implementation problem".

Finally, once the data exchange completes, it can be recorded in the ledger of Smart API Transact service. Smart API Transact can be used to securely prove that parties have sent and received data or performed some other action as agreed on. Sophisticated cryptography is used to create a proof of each action, resulting in a database that can be used as a basis of payments, thus solving the "compensation problem".

Colophon

<bookinfo>Asema Electronics Ltd<copyright><year>2011-2017</year></copyright><legalnotice>

No part of this publication may be reproduced, published, stored in an electronic database, or transmitted, in any form or by any means, electronic, mechanical, recording, or otherwise, for any purpose, without the prior written permission from Asema Electronics Ltd.

Asema E is a registered trademark of Asema Electronics Ltd.

</legalnotice>
</bookinfo>