=Paper= {{Paper |id=Vol-71/paper-4 |storemode=property |title=An Ontology for Context-Aware Pervasive Computing Environments |pdfUrl=https://ceur-ws.org/Vol-71/Chen.pdf |volume=Vol-71 }} ==An Ontology for Context-Aware Pervasive Computing Environments== https://ceur-ws.org/Vol-71/Chen.pdf
            An Ontology for Context-Aware Pervasive Computing Environments∗

                                   Harry Chen, Tim Finin, and Anupam Joshi
                             Department of Computer Science and Electrical Engineering
                                     University of Maryland Baltimore County
                                        {hchen4, finin, joshi}@cs.umbc.edu


                           Abstract                               an open and dynamic distributed systems, (ii) ontologies with
                                                                  well defined declarative semantics provide a means for intel-
        Ontologies are a key component for building open          ligent agents to reason about contextual information, and (iii)
        and dynamic distributed pervasive computing sys-          explicitly represented ontologies allow devices and agents not
        tems in which agents and devices share contextual         expressly designed to work together to interoperate, achiev-
        information. We describe our use of the Web On-           ing “serendipitous interoperability” [Heflin, 2003].
        tology Language OWL and other tools for building             In the past, a number of distributed systems have been de-
        the foundation ontology for the Context Broker Ar-        veloped to support pervasive computing including the Intel-
        chitecture (CoBrA), a new context-aware pervasive         ligent Room [Coen, 1998], Cooltown [Kindberg and Barton,
        computing framework. The current version of the           2001], and Context Toolkit [Salber et al., 1999]. These sys-
        CoBrA ontology models the basic concepts of peo-          tems have made progress in various aspects of pervasive com-
        ple, agents, places, and presentation events in an        puting but are weak in supporting knowledge sharing and
        intelligent meeting room environment. It provides         context reasoning. A significant source of this weakness is
        a vocabulary of terms for classes and properties          their lack a common ontology with explicit semantic repre-
        suitable for building practical systems that model        sentation [Chen et al., 2001; Chen, 2003]. CoBrA provides
        context in pervasive computing environments. We           better support for knowledge sharing and context reasoning
        also describe our ongoing research in developing an       using a common ontology defined using Semantic Web lan-
        OWL inference engine using Flora-2 and in extend-         guages. In this paper, we describe the use of the Web Ontol-
        ing the present CoBrA ontology to use the DAML            ogy Language OWL [van Harmelen et al., 2002] and tools for
        spatial and temporal ontologies.                          building an ontology foundation in CoBrA.
                                                                     In the next section, we overview CoBrA and its design ra-
                                                                  tionale. In Section 5, we describe the role of the Semantic
1       Introduction                                              Web and the OWL language in our architecture. Section 4
Computing is moving toward pervasive, ubiquitous environ-         describes two components that we believe to be necessary for
ments in which devices, software agents, and services are all     building an ontology foundation in pervasive context-aware
expected to seamlessly integrate and cooperate in support of      systems (e.g., in CoBrA). After our discussion, in Section 5,
human objectives – anticipating needs, negotiating for ser-       we present our initial work in building an ontology called Co-
vice, acting on our behalf, and delivering services in an any-    BrA Ontology for modeling context knowledge and enabling
where, any-time fashion [Weiser, 1991; Finin et al., 2001].       knowledge sharing – this is the first component of the on-
An important next step for pervasive computing is the inte-       tology foundation in CoBrA. In Section 6, we describe our
gration of intelligent agents that employing knowledge and        on-going research work which attempts to complete the sec-
reasoning to understand the local context and share this infor-   ond component of the CoBrA ontology foundation, an ontol-
mation in support of intelligent applications and interfaces.     ogy inference engine for OWL. A brief discussion of related
We are developing a new pervasive context-aware computing         work and our future work are given in Section 7 and Section
infrastructure called Context Broker Architecture (CoBrA)         8, respectively. In Section 9, we summarize this document.
[Chen, 2003], to support ubiquitous agents, services and de-
vices to behave intelligently in according to their situational   2   Context Broker Architecture
contexts.
                                                                  CoBrA is an agent based architecture for supporting context-
   Ontologies are key requirements for building context-
                                                                  aware computing in intelligent spaces. Intelligent spaces are
aware pervasive computing systems for the following rea-
                                                                  physical spaces (e.g., living rooms, vehicles, corporate offices
sons: (i) a common ontology enables knowledge sharing in
                                                                  and meeting rooms) populated with intelligent systems that
    ∗
    This work was partially supported by DARPA contract F30602-   provide pervasive computing services to users [Kagal et al.,
97-1-0215, NSF award 9875433, NSF award 0209001, and Hewlett      2001]. By context, we mean an understanding of a location,
Packard.                                                          its environmental attributes (e.g., noise level, light intensity,
temperature and motion) and the people, devices, objects and        mobile devices to agents running on resource-rich servers; the
software agents it contains.                                        complications inherent in establishing, monitoring and en-
                                                                    forcing security, trust, and privacy polices will be simplified
                                                                    in the presence of a centralized manager. Although the ex-
                                                                    istence of context broker could bring about the above advan-
                                                                    tages, its centralized design could create a “bottle neck” in a
                                                                    distributed system, hindering the overall system performance.
                                                                    In our preliminary research work, we have not addressed this
                                                                    problem. However, according to Kumar and Cohen [Kumar et
                                                                    al., 2000], this “bottle neck” issue could be resolved through
                                                                    fault-tolerance by introducing a persistent broker team.

                                                                    3   Rationales for Exploring Semantic Web
                                                                    The responsibility of a context broker is to acquire, maintain
                                                                    and share a coherent and consistent model of the local con-
                                                                    text. Our approach to doing this is a knowledge-based one
                                                                    built on a declarative ontology of basic concepts for objects
Figure 1: An intelligent context broker acquires context in-        and relations in a pervasive environment. The ontology is fur-
formation from devices, agents and sensors in its environment       ther defined by axioms that provide additional constraints and
and fuses it into a coherent model, which is then shared with       meaning as well as rules and heuristics that can derive addi-
the devices and their agents.                                       tional useful information. Somewhat surprisingly, we found
                                                                    that the languages developed for the Semantic Web are also
                                                                    well suited for our purpose. Key design requirements are
   Central to our architecture is the presence of an intelligent    common to the web and pervasive computing. Both are very
context broker (or broker for short) that maintains and man-        open system with a high degree of dynamism in which in-
ages a shared model of contexts on the behalf of a commu-           dependent and autonomous agents publish content and also
nity of agents (i.e., applications running on the mobile devices    search for information of interest.
that a user carries or wears, services that are provided by de-        Semantic Web is a vision of the next generation World
vices in a room, and web services that provide web presences        Wide Web [Berners-Lee et al., 2001]. Research efforts in
for people, places and things in the physical world [Kind-          the Semantic Web are driven by the need for a new knowl-
berg and Barton, 2001]). In our system, a broker assumes            edge representation framework to cope with the explosion of
the responsibility to (i) acquire contexts from heterogeneous       unstructured digital information on the existing Web. The
information sources and maintain the consistency of the over-       present Semantic Web research focuses on the development
all context knowledge through reasoning, (ii) help distributed      of ontology languages and tools for constructing digital infor-
agents to share context knowledge through the use of ontolo-        mation that can be ”understood” by computers [Berners-Lee
gies, agent communication languages and protocols, and (iii)        et al., 2001].
protect the privacy of users by establishing and enforcing user        In the past few years, ontology language developments in
defined policies while sharing sensitive personal information       the Semantic Web have converged to a new W3C standard
with agents in the community. Figure 1 shows a high-level           called OWL. The OWL language shares the same root as its
design of the broker and its relationship with agents in an in-     predecessor DAML+OIL[Connolly et al., 2001] (e.g., using
telligent space.                                                    RDF as the modeling language to define ontological vocabu-
   In a large-scale intelligent space (e.g., a campus or a build-   laries and using XML as the surface syntax for representing
ing), multiple brokers can form a broker federation. Individ-       information [van Harmelen et al., 2002]).
ual broker in a federation is responsible for managing parts of        We have chosen the OWL language to model context on-
the intelligent space (e.g., a room in a particular building). In   tologies for two reasons. First, it is much more expres-
a federation, brokers are related to each other in some organi-     sive than RDF or RDF-S allowing us to build more knowl-
zational structure (e.g., peer-to-peer or hierarchical), and they   edge into the ontology. Second, we chose to use OWL over
can periodically exchange and synchronize context knowl-            DAML+OIL because OWL has been designed as a standard
edge.                                                               and has the backing of a well known and regarded standards
   Our centralized broker design addresses two important is-        organization.
sues that are key to realizing the potential of ubiquitous com-        Additionally, from a system design point of view, using
puting: supporting resource-limited mobile computing de-            OWL to define context ontologies underpins two important
vices [Dertouzos, 2001; Coen, 1998; Chen and Kotz, 2000]            functions of a context broker. First, it provides a means for
and addressing the concerns for user privacy and security           the broker to share context knowledge with agents in an as-
[Ackerman et al., 2001; Bellotti and Sellen, 1993]. With the        sociated intelligent space. Second, it provides an ontology
introduction of a context broker that operates on a stationary      model which can help the broker to reason about contexts and
computer, the burdens of acquiring and reasoning over con-          detect knowledge inconsistency.
text information will be shifted away from resource-limited            Knowledge sharing in pervasive context-aware systems re-
quires all agents to share a common ontology1 . Using the             of properties and relationships that are associated with these
OWL language, ontology concepts are defined independent               basic concepts.
from any agent implementations, and their semantics are cap-             Figure 2 shows a complete list of the names of the
tured using standard knowledge representation vocabularies.           classes and properties in the CoBrA ontology. Version
Taking this approach, independently developed agents can              v0.2 includes 41 classes (i.e., RDF resources that are
share context knowledge with the broker without pre-defined           type of owl:class) and 36 properties (i.e., RDF re-
agreements on how they should interoperate.                           sources that are type of either owl:ObjectProperty or
   Context reasoning is a key function of the broker. Con-            owl:DatatypeProperty).
text reasoning involves deducing context knowledge from ac-              Our ontology is categorized into four distinctive but related
quired situational information and detecting inconsistency in         themes: (i) concepts that define physical places and their as-
the knowledge base. To reason about contexts, the broker              sociated special relationships (e.g., containment relationship,
can exploit ontology reasoning using logic inference engines          social and organizational properties)3 , (ii) concepts that de-
(e.g., the DAMLJessKB [Kopena and Regli, ], TRIPLE [Sin-              fine agents (i.e., both human agents and software agents) and
tek and Decker, 2002], FaCT [Horrocks et al., 1999], RACER            their associated attributes, (iii) concepts that describe the lo-
[Volker Haarslev, 2001] and Bubo [Volz et al., 2003]).                cation contexts of an agent on a university campus, and (iv)
                                                                      concepts that describe the activity contexts of an agent, in-
4     CoBrA Semantic Web Ontology Foundation                          cluding the roles of speakers and audiences and their associ-
An ontology-driven design methodology is one way to build             ated desires and intentions in a presentation event. In the rest
a distributed intelligent system (e.g., CoBrA) that can reason        of this section, we will discuss each of these four themes.
about contexts and can help agents to share knowledge. Us-
ing an explicit representation of the ontology, context knowl-
                                                                      5.1   Concepts Related To Places
edge can be reasoned over to derive additional information            The notion of a place in CoBrA is restricted to a set of phys-
[Chen and Tolia, 2001], and this knowledge can also be eas-           ical locations that are typically found on a university cam-
ily share by distributed agents using standard communica-             pus. These locations include campus, building, room, hall-
tion languages and protocols (e.g., FIPA-ACL, KQML, and               way, stairway, restroom, and parking lot. These physical lo-
SOAP/XML-RPC). This approach requires a suitable onto-                cations are all assumed have well defined spatial boundaries
logical foundation on which CoBrA specific components can             (e.g., all locations can be uniquely identified by geographical
be built. We believe the followings are two necessary compo-          coordinates – longitude and latitude). In addition, all loca-
nents in this foundation:                                             tions on a university campus have identifiable string names
                                                                      that are assigned to them by some official bodies (e.g., by the
    1. Context Ontology: The ontology provides a set of terms
                                                                      university administration).
       for describing context knowledge (i.e., explicit state-
       ments that describe contexts in the environment). The             When modeling physical locations, we define a class called
       ontology should be developed in a language with ap-            Place which generalizes all type of locations on a campus.
       propriate expressive power and a well defined seman-           This abstract class defines a set of properties that are common
       tics. This ontology allows distributed agents to share a       to all concrete physical location classes, which consists of
       common understanding of the information that they ex-          longitude, latitude and hasPrettyName.
       change and to reason about additional information that            Place classes (including subclasses) have associated
       is beyond what is already known.                               containment relationships.        These relationships are de-
                                                                      fined by two related object properties4 called spatially-
    2. Ontology Inference Engine: an ontology inference en-           Subsumes and isSpatiallySubsumedBy. The former
       gine is a logic system that reasons over the semantic          describes the subject of this property spatially subsumes the
       model of an ontology. To reason about our context on-          object of this property (e.g., a building spatially subsumes a
       tologies in OWL, for example, an ontology inference en-        room in the building), and the latter describes the subject of
       gine should provide a set of rules for interpreting the se-    this property is spatially subsumed by the object of this prop-
       mantic model of OWL [Patel-Schneider et al., 2003] and         erty (e.g., a room in the building is spatially subsumed by the
       detecting inconsistency in the knowledge base.                 building). In the context of the OWL language, these two
                                                                      properties are defined as an inverse property of each other.
5     A Walkthrough of the CoBrA Ontology                                Note that in the current version of the ontology, the domain
This section describes key ontology concepts in the current           and the range of both spatiallySubsumes and is-
version of the CoBrA ontology (v0.2)2 . This ontology defines         SpatiallySubsumedBy properties are of the class type
a set of vocabularies for describing people, agents, places           Place. In other word, these two properties cannot be used
and presentation events for supporting an intelligent meeting         to make statements about the containment of a person or an
room system on a university campus. It also defines a set             agent in a physical place. However, in Section 5.2, we will de-
                                                                      scribe alternative constructs for expressing this type of state-
    1
      This sharing might, in practice, be achieved with the help of   ments.
ontology translation agents.
    2                                                                    3
      A complete version of the ontology is available at http://           In v0.2, only containment relationship is defined, additional
daml.umbc.edu/ontologies/cobra/0.2/cobra-ont                          properties will be included in the next version of the ontology.
                                                                         4
in the OWL/XML syntax.                                                     This refers to the owl:ObjectProperty property
               Figure 2: A complete list of the names of the classes and properties in the CoBrA ontology (v0.2).


   In addition to containment relationships, physical places        class do not contain any other physical places. The range
may be also associated with events and activities (e.g., a          of the property isSpatiallySubsumedBy is restricted to
meeting may be taken place in a room, or an annual fes-             the class CompoundPlace, which is a subclass of Place.
tive may be taken place on a university campus). To make            The CompoundPlace class represents all physical places
statements about a place that is associated with some event,        that may contain other physical places. Figure 3 shows par-
we introduce an object property called hasEvent, which              tial representation of these classes in OWL/XML syntax.
has domain Place and range Event. Instances of Event                   Some subclasses of the AtomicPlace class include
can be associated with time intervals. We define Event-             Room, Hallway, Stairway, Restroom, LadiesRoom,
HappeningNow, a subclass of Event, to represent a set of            MensRoom and ParkingLot.
all events that are currently happening (details of this class is
                                                                    CompoundPlace
discussed in Section 5.4). To make statements about a place
that is associated with some event that is currently happen-        While the AtomicPlace class is introduced to represent
ing now, we define an object property called hasEvent-              a set of places that contains zero number of Place in-
HappeningNow.                                                       stances, the CompoundPlace class is defined to repre-
                                                                    sent a set of places that contains at least one or more num-
AtomicPlace                                                         bers of Place instances. This class is also a subclass of
Some of the concrete physical locations that we have men-           Place. Being a subclass of the Place class, Compound-
tioned (i.e., campus, building, room, hallway, stairway, etc.)      Place inherits all properties from its parent class. In or-
usually do not contain (spatially subsume) other physical lo-       der to express all instances of the CompoundPlace class
cations. For example, hallways, stairways and rooms in a            should only be spatially subsumed by instances of other
building are not usually considered to be a type of physical        CompoundPlace, the range of this class’s property is-
place that contains other places.                                   SpatiallySubsumedBy is restricted to have class type
   For this reason, we introduce an abstract class called           CompoundPlace. This restriction excludes all instances of
AtomicPlace to represent the set of physical places                 the CompoundPlace class to be spatially subsumed by in-
that do not contain other physical places. This class in-           stances of the AtomicPlace.
herits all properties from its superclass Place. How-
ever, it restricts the range of the properties spatially-           5.2   Concepts Related To Agents
Subsumes and isSpatiallySubsumedBy. In the                          The notion of an agent in CoBrA represents both humans
AtomicPlace class, the cardinality of the property                  agents and software agents. Human agents are simply users
spatiallySubsumes is 0, indicating all instances of this            in an intelligent space. Software agents, on the other hand,
                                                                         roles. In v0.2 of the ontology, pre-defined subclasses of Role
                                                                         are SpeakerRole and AudienceRole.
                                                                            To associate roles with an agent, the object properties
                                                                         fillsRole and isFilledBy are defined. These two
                                                                         properties are inverse property of each other – fillsRole
                                                                         has domain Agent and range Role, and isFilledBy has
                                                                         domain Role and range Agent.




Figure 3: A partial definition of the AtomicPlace and
CompoundPlace classes in OWL/XML syntax


are autonomous computing entities that provide services to
users (either directly or indirectly) in an associated space.
   All agents have associated properties that describe their
contact information, which includes uniquely identifiable
names, URLs to their home pages, and email addresses. In
addition, agents are assumed to have certain roles in different
events and activities (e.g., a person can have the speaker role          Figure 4: This is a partial definition of the concepts related
in a presentation event, and device agents in the close vicinity         to roles, intentions and desires in an intelligent meeting room
may take on the presentation assistant role during the pre-              system.
sentation session). Different roles may give rise to different
desires and intentions of an agent.
   In the CoBrA ontology, the notions of desire and intention            Intentional Actions
are both associated with actions5 . Specifically, the notion of          All actions in CoBrA are defined as instances of the class
desire is defined as an agent’s desire for some action to be             IntentionalAction. Informally, intentional actions are
achieved by some other agents (e.g., a person with the speaker           actions that an agent performs intentionally and with certain
role may desire some service agents to dim the lights when               goals in mind. In our design, we assume domain applications
his presentation starts), and the notion of intention is defined         will extend this class to define specialized subclasses and in-
as an agent’s commitment to perform some particular action               stances. To support the construction of intelligent meeting
(e.g., a person with the audience role may intend to download            room system, we have pre-defined a set of concrete instances
a copy of the slides after attending a presentation event).              of IntentionalAction that are common in presentation
   To model ontologies for agents, we introduce a general                events (see Figure 4).
class called Agent, which is a set of all human agents and                  All instances of the IntentionalAction class (or
computational agents. We define the class Person to repre-               its subclasses) can be associated with either an instance of
sent human agents and the class SoftwareAgent to rep-                    the Role class or the Agent class through object prop-
resent computational agents (both of which are subclasses of             erties intendsToPerform or desiresSomeoneTo-
the Agent class and disjoints with each other). All agents in            Achieve. The domain of these two properties are union
our ontology are associated with properties that describe their          of the class Role and Agent (see Figure 4).
contact information. To generalize properties that serve as
descriptions of contact information, we define an object prop-           5.3   Concepts Related to Agent’s Location Context
erty called hasContactInformation. From this prop-                       By location context, we mean a collection of dynamic knowl-
erty, we further define sub-properties of contact information,           edge that describes the location of an agent, which is a col-
which consist of hasFullName, hasEmail, hasHome-                         lection of RDF statements that describes the location prop-
Page and hasAgentAddress.                                                erty of an agent. The location property of an agent is cap-
                                                                         tured through the object property locatedIn. It has range
Role                                                                     Place and domain owl:Thing, indicating anything (in-
In our ontology, the class Role represents a set of all roles            cluding agents) may be located in some physical place.
that are presently associated with an agent. In other words, it             Physical locations, as discussed in the previous section,
is an abstract class that generalizes all possible types of agent        are categorized into two distinctive classes: AtomicPlace
                                                                         (e.g., hallways and rooms) and CompoundPlace (e.g.,
   5
     the semantic of an action is not formal defined in the current      campus and building). Following the semantics of these two
version of the ontology. In v0.2, all instances of actions are assumed   classes, we can make the following reasoning: no agent can
to be atomic action.                                                     locate in two different atomic places at the same time, but an
agent can be in two different compound places at the same               class which models an event with the time predicate “now”.
time just in case one spatially subsumes the other. This                   For a given presentation that is currently happening, we
reasoning is important for detecting inconsistent knowledge             can specialize the type of rooms at which the event takes
about the current location of an agent.                                 place. For example, a room that has an on-going presenta-
   To capture the notion an agent can be located in an atomic           tion event is defined as RoomHasPresentationEvent-
and a compound place, from the locatedIn property                       HappeningNow, which is a subclass of Room and restricts
we define two sub-properties called locatedInAtomic-                    the range of its hasEventHappeningNow property to
Place and locatedInCompoundPlace. The former                            the class PresentationSchedule. To describe people
restricts its range to the AtomicPlace class, and the lat-              have speaker and audience roles in an on-going event, we
ter restricts its range to the CompoundPlace class. From                define the SpeakerOfPresentationHappeningNow
these two properties, we define additional properties that              class and the AudienceOfPresentationHappening-
further restricts the type of physical place an agent can be            Now class.
located in. For example, locatedInRoom, located-
InRestroom and locatedInParkingLot are sub-                             6       An OWL Inference Engine in Flora-2
properties of locatedInAtomicPlace; locatedIn-
Campus and locatedInBuiding are sub-properties of                       In the last section, we have described the CoBrA ontology,
locatedInCompoundPlace.                                                 which forms the first component in the ontology foundation
   For agents that are located in different places, we can cat-         in our system. In order for a context broker to reason about
egorize them in according to their location properties. For             contexts, an inference engine for reasoning over OWL on-
example, we define PersonInBuilding to represent a set                  tologies is required.
of all people who are located in a building, and Software-                 At the present, inference engines that can reason over the
AgentInBuilding to represent a set of software agents                   complete semantic model of the OWL language is still under
who are located in a building, respectively. The comple-                development (in Section 5 we have mentioned a few of these
ment of these classes are PersonNotInBuilding and                       emerging inference engines). As a part of our research, we are
SoftwareAgentNotInBuilding.                                             developing an OWL inference engine called F-OWL using
                                                                        the Flora-2 system in XSB. Flora-2 is a system that translates
5.4    Concepts Related to Agent’s Activity Context                     a unified language of F-logic, HiLog, and Transaction Logic
                                                                        into the XSB deductive engine [Yang and Kifer, 2002]. Flora-
The activity context of an agent, similar to the location con-          2 has a language syntax that is similar to TRIPLE [Sintek
text, is a collection of dynamic knowledge about certain as-            and Decker, 2002] and also allows ontology semantics to be
pects of an agent’s situational condition. While location con-          defined using rules.
text describes the location in which the agent is situated, ac-            F-OWL is a rule-driven logic inference engine. Its imple-
tivity context describes activities in which the agent partici-         mentation consists of four distinctive but related sets of rules:
pates. In our ontology, the notion of an activity is restricted to      (i) rules that define the semantic model of the RDFS ontol-
represent a set of all typical group activity events in a meeting       ogy language, (ii) rules that define the semantic model of the
room (meeting, presentation and discussion)6 .                          OWL ontology language, (iii) rules that draw inferences over
   Activity events are assumed have schedules. For presenta-            the semantic model of RDFS, and (iv) rules that draw infer-
tion events, we define PresentationSchedule class to                    ences over the semantic model of OWL. Inputs to F-OWL are
represent their schedules. Presentation schedules are defined           collections of the N-Triple representation of some domain on-
to have startTime, endTime and location properties,                     tologies (e.g., context knowledge that are described using the
and each of which respectively represents the start time of a           CoBrA Ontology), and outputs from F-OWL are ontologi-
presentation, the end time of a presentation and the location of        cal knowledge that can be proved by the logic inferences that
a presentation event. Each presentation event has one or more           are defined in (iii) and (iv). To access the output ontological
invited speaker and expected audience. These two concepts               knowledge, Flora-2 queries can be used.
are defined using the invitedSpeaker and expected-                         F-OWL is still in its early stage of the development. The
Audience properties. In addition to start time, end time and            latest version (v0.3)7 of F-OWL support a full RDF-S infer-
location, the schedule of a presentation usually includes a ti-         ences and partial OWL inferences (limited to the OWL-Lite
tle and an abstract of the presentations. To model these, we            sub-language constructs and some OWL Full constructs). We
introduce presentationTitle and presentation-                           expect to complete a full inference of the OWL language in
Abstract properties.                                                    F-OWL by late June 2003.
   The activity context of an agent is usually associated with
activity events that are currently happening. For example, the
activity context of a speaker includes the presentation event
                                                                        7       Related Work
at which he/she is giving the presentation. To model this,              Our work is closely related to other pervasive and context-
we introduce the PresentationEventHappeningNow                          aware computing research such as Intelligent Room [Coen,
class. This class is a subclass of the EventHappeningNow                1998], Context Toolkit [Salber et al., 1999] and Cooltown
                                                                        [Kindberg and Barton, 2001], One.World [Grimm et al.,
   6
     In v0.2 of the ontology, we have only included concepts related    2000] and Centaurus [Kagal et al., 2001]. In comparison to
to presentation events. In the future version, we will extend the on-
                                                                            7
tology to includes other activity events                                        http://umbc.edu/˜hchen4/fowl
the previous systems, our novel design of the context bro-          is attending a meeting at a given time interval9 . In an
ker attempts to address challenging issues such as developing       intelligent meeting room, RFID sensors periodically reports
explicit ontology representations of contexts, supporting con-      the presence of a person and describe this information
text reasoning and maintenance through logic inferences and         using the at-time predicate – e.g., at 12:57 PM, they
providing user privacy protection using policies (also see dis-     report      at-time(locatedIn(harry,room201),
cussions in Section 5).                                             clock time("12:57PM")) and at 1:33 PM, they
   In the previous systems, user location contexts are widely       report      at-time(locatedIn(harry,room201),
used for guiding the the decision making process of context-        clock time("1:33PM")).            From this knowledge,
aware applications [Salber et al., 1999; Coen, 1998; Kagal et       using the interval algebra, the context broker can con-
al., 2001]. However, none of them have taken advantage of           clude       during(locatedIn(harry, room201),
the semantics of spatial relations in reasoning about contexts      time interval("1:00PM-1:30PM")).
(i.e., information that describes the whole physical space that
surrounds a particular location and its relationship to other       9 Conclusion
locations).
                                                                    Ontologies are key requirements for building context-aware
                                                                    pervasive computing systems. In this paper, we have de-
8     Future Work                                                   scribed the use of the OWL language and other tools for
Modeling space and time are important in CoBrA. We cur-             building an ontology foundation in CoBrA, a new pervasive
rently have a simple model of space and spatial relationships       context-aware architecture. With an explicit representation of
(see Section 5.1) and an implicit representation of time and        context ontologies, CoBrA will allow independently devel-
temporal relationships (see Section 5.4). In the next version       oped devices and agents to interoperate and to help them to
of the CoBrA ontology, we plan on using, if possible, or at         share and reason about contexts. As a part of our long term re-
least mapping to, if feasible, one of the consensus ontologies      search plan, we are prototyping an intelligent context broker.
for space and time.                                                 Our goal is to create and deploy a pervasive context-aware
                                                                    meeting room in the newly constructed Information Technol-
8.1    Adopting Spatial Ontology                                    ogy and Engineering Building on the UMBC main campus10 .

At present, there are two distinctive versions of spatial ontolo-   References
gies namely the spatial ontology in SUO [Niles and Pease,
2001] and the upper Cyc ontology [Cyc, 1997]. Recent dis-           [Ackerman et al., 2001] Mark Ackerman, Trevor Darrell,
cussions on the daml-spatial mailing list have initiated the          and Daniel J. Weitzner. Privacy in context. Special Issue
work to develop a Semantic Web version of the spatial on-             on Context-Aware Computing. Human-Computer Interac-
tology based these ontologies8 . The new spatial ontology             tion, 16(2-4), 2001.
will cover representations for dimension, shape, length, area,      [Bellotti and Sellen, 1993] Victoria Bellotti and Abigail
volume, latitude, longitude, elevation, political subdivisions,       Sellen. Design for privacy in ubiquitous computing en-
and topological relations (e.g., Relation Connection Calculus         vironments. In Proceedings of the Third European Con-
[Randell et al., 1992]). As a short term objective, we plan to        ference on Computer Supported Cooperative Work (EC-
investigate the applications of Relation Connection Calculus          SCW’93), pages 77–92. Kluwer, 1993.
in context reasoning (e.g., detecting inconsistency knowledge
about a person locating in two places that are disconnected         [Berners-Lee et al., 2001] Tim Berners-Lee, James Hendler,
from each other).                                                     and Ora Lassila. The semantic web. Scientific American,
                                                                      may 2001.
8.2    Adopting Temporal Ontology                                   [Chen and Kotz, 2000] Guanling Chen and David Kotz. A
In addition to the spatial ontology, the DAML community is            survey of context-aware mobile computing research. Tech-
also developing temporal ontology for expressing temporal             nical Report TR2000-381, Dartmouth College, Computer
aspects of the contents of web resources and for expressing           Science, Hanover, NH, nov 2000.
time-related properties of web services [Hobbs, 2002]. In           [Chen and Tolia, 2001] Harry Chen and Sovrin Tolia. Steps
this ontology, interval algebra is used to define temporal rela-      towards creating a context-aware agent system. Technical
tionship axioms (after, before, inside, time-between, proper-         report, Hewlett Packard Labs, 2001.
interval, etc.) and representations for clock and calendar units    [Chen et al., 2001] Harry Chen, Sovrin Tolia, Craig Sayers,
(i.e., year, month, day of week, etc.).                               Tim Finin, and Anupam Joshi. Creating context-aware
   In a short term, we plan to investigate the use of inter-          software agents. In Proceedings of the First GSFC/JPL
val algebra for reasoning over the temporal relationships             Workshop on Radical Agent Concepts, 2001.
between different context events. For example, the re-
lation between the at-time(e,t) predicate and the                       9
                                                                          In this example, lower case e represents an event instance, lower
during(e,T) predicate can be used determine if a person             case t represents a time instance and upper case T represents a time
                                                                    interval.
  8                                                                    10
    http://www.daml.org/listarchive/                                      ITE building construction live feed: http://www.cs.
daml-spatial/                                                       umbc.edu/ITE/ITE.html
[Chen, 2003] Harry Chen. An intelligent broker archi-             [Niles and Pease, 2001] Ian Niles and Adam Pease. Towards
   tecture for context-aware systems.          PhD. disserta-        a standard upper ontology. In Proceedings of the 2nd Inter-
   tion proposal. See http://users.ebiquity.org/                     national Conference on Formal Ontology in Information
   ˜hchen4/phd/hcthsisp.pdf, 2003.                                   Systems (FOIS-2001), 2001.
[Coen, 1998] Michael H. Coen. Design principles for intel-        [Patel-Schneider et al., 2003] Peter F. Patel-Schneider,
   ligent environments. In AAAI/IAAI, pages 547–554, 1998.           Patrick Hayes, and Ian Horrocks. Owl web ontology
[Connolly et al., 2001] Dan Connolly, Frank van Harmelen,            language semantics and abstract syntax. 2003.
   Ian Horrocks, Deb McGuinness, Peter F. Patel-Schneider,        [Randell et al., 1992] David A. Randell, Zhan Cui, and An-
   and Lynn Andrea Stein. DAML+OIL (March 2001) Refer-               thony G. Cohn. A spatial logic based on regions and con-
   ence Description, 2001.                                           nection. In 3rd International Conference on Knowledge
[Cyc, 1997] Cyccorp Inc. The Upper Cyc Ontology, 1997.               Representation and Reasoning, 1992.
   http://www.cyc.com/cyc-2-1/cover.htm.                          [Salber et al., 1999] Daniel Salber, Anind K. Dey, and Gre-
[Dertouzos, 2001] Michael Dertouzos. The Unfinished Rev-             gory D. Abowd. The context toolkit: Aiding the develop-
   olution. HarperCollins Publishers, 2001.                          ment of context-enabled applications. In CHI, pages 434–
[Finin et al., 2001] Tim Finin, Anupam Joshi, Lalana Kagal,          441, 1999.
   Olga Ratsimore, Vlad Korolev, and Harry Chen. nforma-          [Sintek and Decker, 2002] Michael Sintek and Stefan
   tion agents for mobile and embedded devices. In Fifth             Decker. Triple—a query, inference, and transformation
   International Workshop Cooperative Information Agents,            language for the semantic web.          In Proceedings of
   2001.                                                             International Semantic Web Conference (ISWC-02), 2002.
[Grimm et al., 2000] Robert Grimm, Tom Anderson, Brian            [Smith et al., 2003] Michael K. Smith, Chris Welty, and
   Bershad, and David Wetherall. A system architecture for           Deborah McGuinness. Owl web ontology language guide.
   pervasive computing. In Proceedings of the 9th ACM                http://www.w3.org/TR/owl-guide/, 2003.
   SIGOPS European Workshop, pages 177–182, 2000.                 [van Harmelen et al., 2002] Frank         van       Harmelen,
[Heflin, 2003] Jeff Heflin. Web ontology language (owl) use          Jim Hendler, Ian Horrocks, Deborah L. McGuin-
   cases and requirements, 2003.                                     ness, Peter F. Patel-Schneider, and Lynn Andrea
[Hobbs, 2002] Jerry R. Hobbs. A daml ontology of time.               Stein.        Owl web ontology language reference.
   http://www.cs.rochester.edu/˜ferguson/                            http://www.w3.org/TR/owl-ref/), 2002.
   daml/daml-time-20020830.txt, 2002.                             [Volker Haarslev, 2001] Ralf Mller Volker Haarslev. De-
[Horrocks et al., 1999] I. Horrocks, U. Sattler, and S. Tobies.      scription of the racer system and its applications. In Pro-
   Practical reasoning for expressive description logics. In         ceedubgs International Workshop on Description Logics
   H. Ganzinger, D. McAllester, and A. Voronkov, editors,            (DL-2001), 2001.
   Proceedings of the 6th International Conference on Logic       [Volz et al., 2003] Raphael Volz, Stefan Decker, and Daniel
   for Programming and Automated Reasoning (LPAR’99),                Oberle. Bubo - implementing owl in rule-based systems.
   number 1705 in Lecture Notes in Artificial Intelligence,          2003.
   pages 161–180. Springer-Verlag, 1999.                          [Weiser, 1991] Marc Weiser. The computer for the 21st cen-
[Kagal et al., 2001] Lalana Kagal, Vlad Korolev, Harry               tury. Scientific American, 265(30):94–104, 1991.
   Chen, Anupam Joshi, and Timothy Finin. Centaurus :             [Yang and Kifer, 2002] Guizhen Yang and Michael Kifer.
   A framework for intelligent services in a mobile environ-         Flora-2: User’s Manual. Department of Computer Sci-
   ment. In Proceedings of the International Workshop on             ence, Stony Brook University, Stony Brook, 2002.
   Smart Appliances and Wearable Computing (IWSAWC),
   2001.
[Kindberg and Barton, 2001] Tim Kindberg and John Bar-
   ton. A Web-based nomadic computing system. Computer
   Networks (Amsterdam, Netherlands: 1999), 35(4):443–
   456, 2001.
[Kopena and Regli, ] Joe Kopena and William C.
   Regli.       Damljesskb: A tool for reasoning with
   semantic web.               edge.mcs.drexel.edu/
   assemblies/software/damljesskb/
   articles/DAMLJessKB-%2002.pdf.
[Kumar et al., 2000] Sanjeev Kumar, Philip R. Cohen, and
   Hector J. Levesque. The adaptive agent architecture:
   Achieving fault-tolerance using persistent broker teams.
   In Proceedings of the Fourth International Conference on
   Multi-Agent Systems, pages 159–166, 2000.