will be visible on the GUI. This is a simple example, in other cases the user might need to define the environment,
deploy sensors, manage sensed data, and configure the environment, and so on. Specific queries exist for each
user-requested task.
2. Scope of the Project
This project focuses on the interaction between users and the platform. This is done using a query language that
offers users the ability to compose and execute queries that translate their needs/objectives. An Event Query
Language, denoted EQL-CE, was already defined in a previous work. It offers a generic, extensible and re-usable
language that considers various elements of the connected environment:
1. Environment components (e.g., infrastructures, location maps, individual locations, spatial ties, devices
deployed in the environment, their hardware, software, and services).
2. Sensor Network components (e.g., static/mobile sensors, their properties, locations, coverage areas,
observable properties, produced observations, scalar/multimedia data produced by the sensor network).
3. Event components (e.g., event patterns, definitions, constraints).
4. Application domain components (e.g., additional descriptions, entities/relations, configurations related to a
specific application domain).
EQL-CE is organized into two layers (cf. Figure 2). In the logical layer queries are written in Extended Backus-Naur
Form (EBNF) syntax. EBNF is a meta-language that allows the definition of queries using an extensible, generic, and
easy to parse syntax. Various query types are proposed:
1. Component Definition Queries: That define the structure of various connected environment components
(e.g., CREATE, ALTER, RENAME, DROP)
2. Component Manipulation Queries: That handle instances of each component and manage the data (e.g.,
SELECT, INSERT, UPDATE, DELETE).
3. Component Access Control Queries: That handle data access control, security, and privacy related issues
(e.g., Grant or Revoke access to data).
Once a query is composed in the logical layer, it is then parsed to a specific language and sent to the Physical layer
where it is executed.
Figure 2: EQL-CE Overview
Last but not least, after saving the generated data in knowledge database, it will be analyzed by machine/deep
learning in order to get a predictable estimation of the future statistics and results. However, nowadays, smart mobile
devices and the internet of things IoT are extremely popular. For example, a normal person can use a smart
application on his smartphone to gather data about energy consumption at his house. This collected data can be later
used to provide useful knowledge to this user and help him to predict the amount of consumed energy in the future.
Having this in mind, machine and deep learning (ML/DL) have been enjoying an unprecedented surge in applications
that solve problems and enable automation in diverse domains. Primarily, this is due to the explosion in the
availability of data, signicant improvements in ML/DL techniques, and advancement in computing capabilities. To
this end, in this project we aim also to propose a user-friendly language that help and guide the non-expert users to
specify there needs/requirements, so, they can take profit of statistics prediction techniques using machine/deep
learning.
2