is responsible for reusing the knowledge of the rest
of ontologies constituting IntelliDomo.
IntelliDomo allows the users to establish
configurations able to guide the system behaviour
and that are adapted to its needs and preferences. In
order to do so, it uses an ontology that allows storing
the configuration into profiles and to make
inferences and reasoning able to incorporate new
knowledge to the system. The ontology
Preferences.owl is used with this end. Here, each user
will be able to store his/her personal information for a
certain situation: security, temperature, comfort... A
series of variables defining the user's preferences can
be established for every situation. For instance, as
for temperature, the user will be able to specify that
‘hot’ ranges between 25 ºC and 36 ºC, consequently,
these values will be used in the corresponding
production rules.
Besides, the ontology Preferences.owl controls
the so-called ‘system variables’. These are control
variables which could be used in SWRL rules to
work with them and draw inferences. These
variables work as global variables that will be shared
by each user and known by the inference system in
order to use them as a reference for certain
decisions. These variables are identified with the
symbol ‘#’ prior to the name.
2.2 DomoRules Tool
SWRL is based on OWL ontology language, more
specifically on the OWL-DL branch. It is a language
able to build up rules to perform reasoning about the
instances of an OWL ontology (OWL Individuals)
and infer new knowledge about them.
DomoRules is a tool developed in Java that
facilitates the creation of SWRL rules throughout
API SWRLFactory. It provides a graphic interface
appropriate to assist in the construction of these
rules. It allows obtaining from OntoDomo all the
necessary elements to build a SWRL rule (classes,
instances, properties), to use SWRL variables and
system variables that refer to the values defined by
the user and finally to add SWRL language built-ins
to the rules.
With DomoRules we seek to build SWRL rules
easily without knowing the syntax of this language.
All the elements constituting OntoDomo.owl
ontology are introduced to the user in the interface,
so that, by simply choosing a class or an instance, all
the properties it has will be listed and the user will
be able to pick the one he/she needs and establish its
values in order to build the rules.
DomoRules is born aiming to offer the user a
simple SWRL rules creating application. The task of
designing an intuitive interface to abstract the
SWRL language user is not easy because SWRL is a
powerful language with a very rich vocabulary that
provides high interaction with all its elements.
Accordingly, by using DomoRules the user will be
able to produce rules that shape the system
behaviour that could be used by IntelliDomo.
Figure 2: DomoRules creation rules interface.
2.3 IntelliDomo Module
IntelliDomo is the main control module of the
system using the represented elements and the
different modules which constitute the system. The
information about configuration and location of the
system can be observed graphically on a plan and,
when the state of a device changes, a message alerts
appearing upon the device icon. At the same time
these events happen, it stores a set of log files where
each of the actions carried out by the system and all
the inferences it makes are detailed. It uses the
DBConnection module to get connected to the
different databases that constitute the application,
which can be either DomoBD or the private
databases IntelliDomo uses to store its own data.
3 CONCLUSIONS AND FUTURE
LINES
Ontologies provide an appropriate kind of
representation for identifying types and
characteristics of domotic devices. Furthermore,
production rules expressed in SWRL language allow
establishing relationships among these domotic
devices to shape the integral behaviour of a domotic
ICAART 2010 - 2nd International Conference on Agents and Artificial Intelligence
472