Integrating Multiple Contexts and Ontologies in a Pervasive Computing Framework 1
Abstract
There is a commonly accepted need for contexts and ontologies to describe the vast amounts of data that are available to pervasive computing applications. Existing contexts and ontologies are either much generalised, very application specific, or inflexible. An integrated approach is required in which new concepts can be added and related to existing ones transparently. This paper describes a novel approach to the design of a set of contexts and ontologies for context-aware pervasive computing systems. It describes a Query Service, that lies between applications and contextual information, which complemented by the contexts and ontologies, offers a more powerful query answering service to application developers than is currently available. 1
Integrating Multiple Contexts and Ontologies in a Pervasive Computing Framework 1
Pervasive Computing Framework 1
Adrian K. Clear and Stephen Knox and Juan Ye and Lorcan Coyle and Simon Dobson and Paddy Nixon 2
Abstract. There is a commonly accepted need for contexts and
ontologies to describe the vast amounts of data that are available to
pervasive computing applications. Existing contexts and ontologies
are either much generalised, very application specific, or inflexible.
An integrated approach is required in which new concepts can be
added and related to existing ones transparently. This paper describes
a novel approach to the design of a set of contexts and ontologies
for context-aware pervasive computing systems. It describes a Query
Service, that lies between applications and contextual information,
which complemented by the contexts and ontologies, offers a more
powerful query answering service to application developers than is
currently available.
1 Introduction
Pervasive systems are interactive systems, whose behaviour must
adapt to the user’s changing tasks and environment using different
interface modalities and devices [8]. In order to be able to adapt to
its environment, the pervasive system’s applications and the environ-
mental sensors must have a common understanding of the contextual
information. For this purpose, contexts and ontologies are vital. We
view an ontology as an explicit modelling of the fundamental con-
cepts of a domain that may be shared and reused. A context is an
explicit model of the secondary concepts in a domain. It is more spe-
cialised than an ontology but can still be shared and reused.
To date, most ontologies for pervasive systems have been devel-
oped in a top-down manner in which the main focus is on application
semantics. This leads to ad-hoc models which are neither extensi-
ble nor support interoperability [12]. On the contrary, they should
be flexible in their design to support a wider range of applications
and environments. Moreover, the current approach to modelling con-
textual data is to give it a single representation in contexts and on-
tologies. However, it is evident that sensors acquiring conceptually
equivalent data provide different representations of such because of
their nature; issues such as accuracy and heterogeneity necessitates
that the data provided by these sensors are represented differently.
At a common level of abstraction these representations are concep-
tually equivalent. The need to incorporate such relationships into the
design of contexts and ontologies should be recognised and is thus
the primary focus of this paper. Dealing with this issue at design time
can be instrumental in the run-time inference of unknown facts from
known contextual data.
1 This work is partially sponsored by Science Foundation Ireland under grant
numbers 05/RFP/CMS0062 and 04/RP1/I544. Adrian Clear is funded by a
joint IBM/IRCSET EMBARK scholarship.
2 The authors are with the Systems Research Group, School of Computer
Science and Informatics, UCD Dublin IE (email adrian.clear@ucd.ie)
Contextual data can be viewed as being part of a spectrum where
data modelled by ontologies lie at one extreme, data modelled by
contexts lie somewhere in the middle, and data without an explicit
model lie at the other extreme. In an effort to clearly illustrate this
spectrum, we propose the concept of a semantic sphere of pervasive
system data (see figure 1). In the semantic sphere we define a set of
fundamental ontologies for pervasive systems. We call this set the
core ontology. The core ontology describes the principle concepts in
a pervasive computing environment – who, where and when. More
precisely, these are: the entities that are in the environment (people,
sensors, etc.), the locations of interest, and the times of interest, re-
spectively. All remaining data are viewed as being somewhat less
general and are modelled using application contexts (for example,
weather and music), or not modelled explicitly. Within the semantic
sphere, a class definition in a context or ontology can be viewed as
a hook. By creating an instance of one of these classes, contextual
information is effectively hooked onto the context or ontology. Our
contexts and ontologies are designed in such a way that semantically
equivalent contextual data can be found regardless of their syntax,
and coarser levels of abstraction can be inferred from finer ones.
Consequently, the scope of an information search is broadened us-
ing simple relations. In this paper we also present the Query Service
(QS) that has been developed so that high-level application queries
can be handled transparently, and results of the appropriate level of
abstraction and representation are returned to the application.
Our design approach delivers contexts and ontologies that are
well-defined and flexible. Sensor developers can hook contextual
data onto, or extend, an existing context or ontology. They can be eas-
ily adapted to different applications and environments. Once hooked,
the contextual data is put into a distributed store, and applications can
access it independently of the sensors. The novelty of this approach
is the organisation of the ontologies. This, along with a powerful QS,
will be very useful for the building and supporting of a large number
of context-aware applications.
Our work is built within a framework called Construct, a fully-
distributed and decentralised context aggregation infrastructure for
pervasive computing environments [15]. Construct consists of a num-
ber of nodes that aggregate contextual data. Each node has its own
data-store, and sensors register themselves with a node and inject
data into it. Construct nodes gossip [6] amongst themselves to main-
tain a global model of the system as a whole. All information is
represented using RDF as the underlying data model. Applications
therefore see a soup of contextual data derived from sensors and can
access it through the QS. High-level queries are passed to the QS
using RDQL (RDF Data Query Language) [14]. The low level infer-
ring is handled transparently and application-interpretable results are
returned. A model of this process can be seen in figure 1.
The rest of this paper is organised as follows: Section 2 briefly
illustrates the related work in the area along with the semantic web
technologies that our approach depends on; in Section 3 we introduce
the ontologies that are defined for the pervasive computing domain
and describe some specific application contexts; Section 4 describes
how the data represented in these ontologies and contexts are con-
verted into information suitable for consumption by pervasive ap-
plications. This process is demonstrated with an example location-
based application in Section 5. Finally, in Section 6 we conclude the
paper and give some directions for future work.
2 Related Work
This paper addresses the issues of context modelling and context ac-
cessibility in context-aware pervasive computing systems. The area
has attracted attention recently and some seminal approaches that fo-
cus on the same issues have emerged: Firstly, the work carried out
by Heer et al on the liquid extension to the Context Fabric [10, 11]
consists of a query service which supports distributed, continuous
query processing for context data. They introduce the notion of an
infospace which is a logical storage unit that may be centralised or
decentralised. Once context is sensed, it is added to the appropriate
infospace. Context is stored in infospaces using tuples consisting of
types and values. The value can be a basic value or another infos-
pace allowing queries to be structured as a concatenation of different
types. Thus, to resolve a query involves the traversal of a string of
tuples. There are drawbacks to this, however. The user is required
to know the structure of the infospaces and the types of their tuples
in order to make a query. Also, there is no mention of a common
semantics for types that tuples may contain making interoperability
difficult.
Another related concept is that of the Enactor extension to the
Context Toolkit (CTK) [13, 9]. The CTK introduces Widget com-
ponents which are structures that encapsulate a particular type of
context acquiring sensor, for example, a location sensor. Each lo-
cation sensor will have the same interface, be they an internal RF
location system or GPS. This, however, allows only one level of ab-
straction per interface. The Enactor, which encapsulates some ap-
plication logic, obviates the application developer from having to
subscribe to each widget manually. It consists of a number of Ref-
erences which “support the declarative specification of interest in a
set of CTK components through a general query package”. Refer-
ences process queries to discoverers and automatically subscribe to
any components that match. Like our approach, the low level queries
are handled transparently.
Khedr et al [12] introduces context-level agreements into a mul-
tiagent pervasive computing environment. They allow user agents to
specify context that is relevant to them so that the context manage-
ment agent can subscribe to the appropriate context providing agents
in order to have the appropriate context delivered.
All three systems support a high-level query language that decom-
poses requests into satisfiable responses and then returns a response
to an application’s request without the application needing to know
the details of how the infrastructure is satisfying the response. How-
ever, there is no effort to structure the semantics of the context data
to provide a more powerful query service.
Similar to the work from Chen et al on SOUPA (Standard Ontol-
ogy for Ubiquitous and Pervasive Applications) [4], we use the Web
Ontology Language (OWL) [3] to model our ontologies. The distinc-
tion that we make between the application contexts and the ontolo-
gies is closely based on the divide that exists in SOUPA between
SOUPA Core and SOUPA Extension. Although the models that they
define are quite extensive, we take the approach of organising our
ontologies more effectively while keeping them simple. We also use
Jena [1] which is a semantic web framework for java.
3 Contexts and Ontologies for Pervasive
Computing
Numerous ad hoc ontologies have been created for pervasive com-
puting systems to date. They have been designed with the primary
goal of providing a semantics for contextual data so that a common
understanding can be given to data from heterogeneous sensors along
with entities in the pervasive environment. The goal of this work is
to not only develop such a semantics for contextual data, but also to
develop our ontologies in a way in which they can be efficiently rea-
soned about. The hypothesis is that different applications may require
the same contextual data, but in different representations or levels of
abstraction. By adding a structure to our ontologies, using relations
between their contents, this reasoning over data can be done at a
lower level and will thus be transparent to the application developer.
The three core ontologies of where, when and who are described
in this section along with their general properties and relationships.
These ontologies form a base model that is general enough to be
used in a range of pervasive computing applications. An overview
of the application contexts along with a description of the relations
used in the contexts and ontologies to achieve equality and levels of
abstraction are also given.
3.1 The Where Ontology
The where ontology describes the concept of location in a pervasive
computing environment. A location may be defined as a point (Co-
ordinate) or as a region (Space). Figure 2 shows the hierarchy of
location types that are possible. Locations may be either physical,
e.g. a set of GPS coordinates; or symbolic, e.g. “RivadelGarda”.
Locations may be related to each other in ways that declare equiva-
lence, e.g. RivadelGarda=GPS (45.88,10.82) and contain-
ment, e.g. RoomA007 isContainedIn CS-Building.
Section 5 gives an example of how these mappings are used to
transform location data from multiple contexts into a single result at
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime


