<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Towards an ambient data mediation system</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Kim</forename><forename type="middle">Tâm</forename><surname>Huynh</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">PRiSM Laboratory University of Versailles Saint-Quentin-en</orgName>
								<address>
									<settlement>Yvelines Versailles</settlement>
									<country key="FR">France</country>
								</address>
							</affiliation>
						</author>
						<author role="corresp">
							<persName><forename type="first">Béatrice</forename><surname>Finance</surname></persName>
							<email>beatrice@prism.uvsq.fr</email>
							<affiliation key="aff1">
								<orgName type="institution">PRiSM Laboratory University of Versailles Saint-Quentin-en</orgName>
								<address>
									<settlement>Yvelines Versailles</settlement>
									<country key="FR">France</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Mokrane</forename><surname>Bouzeghoub</surname></persName>
							<affiliation key="aff2">
								<orgName type="institution">PRiSM Laboratory University of Versailles Saint-Quentin-en</orgName>
								<address>
									<settlement>Yvelines Versailles</settlement>
									<country key="FR">France</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Towards an ambient data mediation system</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">FA07481A746D9B97E1AA5DAE53EA6EF9</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-23T19:54+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In this paper, we address the problem of integrating many heterogeneous and autonomous tiny data sources, available in an ambient environment (AmI). Our goal is to facilitate the development of context-aware and personalized embedded applications on mobile devices. The originality of the approach is the new ambient mediation architecture which provides declarative and dynamic services, based on rules/triggers. These services provide facilities to develop and deploy ambient applications over devices such as smartphones. This paper reports also on our rst experimental prototype, combining Arduino+Android.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">INTRODUCTION</head><p>Over the last 20 years there have been some signicant progresses on the miniaturization of hardware components and wireless networks. The number and capabilities of mobile devices, wireless sensors and sensor networks open new research elds and applications. Terms such as the Web of sensors , the Internet of Things and Ambient Intelligence (AmI) emphasize the trend towards a tighter connection between the cyberspace and the physical world.</p><p>Today, we are witnessing an unprecedent explosion of mobile data volumes (i.e. ambient data). According to a study from ABI Research <ref type="bibr">[1]</ref>, in 2014 the volume of mobile data sent and received every month by users around the world will exceed by a signicant amount the total data trac for all of 2008. In 2011, 1.08 billion of mobile phone users have a Smartphone and in the near future they will be surrounded by many sensors/actuators.</p><p>In his survey, Sadri <ref type="bibr" target="#b16">[18]</ref> denes AmI as the vision of a future in which the environments support the people inhabiting them. For example, instead of using mice, screens and keyboards, we may communicate directly with our clothes, household devices,... The identied key features of AmI are: embedment, intelligence, context-awareness, personalization, adaptation and anticipation. It is also mentioned that AmI can provide sophisticated support for everyday living, but the information capabilities it may use for this purpose can also potentially provide an invisible and comprehensive surveillance networks walls literally can have ears . It inevitably opens up issues of privacy risk, acceptance and security.</p><p>In many ambient environments, data arrives as streams or as alerts/notications and is only relevant for a period of time; its interpretation depends on the user's context and preferences. For instance, an information about a free parking place can be relevant for a user if this information is recent and if the parking place is nearby the user's location.</p><p>Another example is the heat setting to the right temperature in the room where a given person is in and accordingly to his/her own comfort preferences.</p><p>In the database community, a lot of work has been devoted to eciently monitor huge amount of data streams coming from sensors that continuously push their data to a xed centralized system, without being concerned in privacy, mobility, context-awareness and reactivity. But as soon as a sensor is linked to my personal life (e.g, my home location, my traveling itinerary, etc), the applications using the captured data may become intrusive in my private life. Moreover, in the opposite, as soon as I leave the smart environment, I may lose the ambient capabilities that may support my everyday life (e.g. tension and heart beat measurement, mandatory presence in a certain place). Consequently, the ambient environment and applications are considered as undesirable constraints in some cases and helpful tools in others. Since my ambient environment is changing over the time and over the space (e.g. at home, at work, at the hospital), the query processing should adapt itself to these two dimensions. As Feng said <ref type="bibr" target="#b8">[10]</ref> AmI imposes strong user-centric context-awareness requirement on data management, but also strong system requirements in terms of hardware constraints (i.e. energy consumption, wireless communication).</p><p>As seen before, smartphones and the underlying applications are, under some restrictions, good support for everyday life. However, their repetitive development from scratch is time and money consuming, it makes the software evolution quite dicult, in particular because components updates are frequent. We claim that an embedded data management system for AmI may signicantly contribute to ease the development and maintenance of such applications.</p><p>The contribution of this paper is to propose an ambient mediation system (called CAIMAN for C ontext-aware dAta I ntegration and M anagement in Ambient eN vironments) which :</p><p>• facilitates personalized and contextual integration and monitoring of heterogeneous data streams through continuous query execution;</p><p>• enables applications to dynamically sense and control, according to some preferences, the ambient environment of the user, which is changing over time and space;</p><p>• enables the user to keep some control over his personal data as the monitoring is done exclusively on his personal device.</p><p>In the remaining of this paper, Section 2 denes the requirements and the constraints imposed on the design of an ambient mediation system, and presents the architecture of CÄIMAN. In Section 3, the ambient mediation approach is described and illustrated through a scenario. In Section 4, we detail the main components of our system and report on our experimental prototype combining Arduino+Android.</p><p>Section 5 concludes with some open issues.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">MOTIVATIONS</head><p>To develop ambient applications, there is a need of an ambient data mediation system (ADMS) which allows interoperability between a set of dynamic and loosely-coupled ambient data sources. An ambient data source is a (xed or mobile) communicating object which generates or consumes continuous (or discontinuous) ows of data. Among such objects, we can distinguish a wide spectrum of sensors and mobile phones as well as any other data services which can push specic data to the applications. In addition to these data sources, there exist other ambient objects called actuators, that do not exchange data, but simply perform some actions on other objects. Notice that a single physical object can play both the role of a data source and actuator. All ambient physical objects are abstracted by software services which encapsulate them and make visible their capabilities, especially their data exchange protocol.</p><p>The design choices of our system have been motivated by the requirements of AmI applications in general, and mobile/ubiquitous users/equipments in particular; the key issue being the continuity of ambient services whatever the dynamic changes are. In this section we review them and compare our design choices with existing related work. The proposed CAIMAN architecture is built on the basis of these choices.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">The requirements</head><p>An ambient information system (AmIS) is a set of data ows provided by a collection of ambient objects to achieve the needs of AmI applications (e.g. intelligent home, intelligent city, health care, mobile social network, etc). Some AmIS objects can play the role of a mediator which is able to integrate and interpret data of many ambient data sources, as well as to perform actions over their environment. Most of the AmIS data may persist only a few seconds or minutes in the system, unless the application or the user decides otherwise for various reasons. The main specic requirements imposed to the design of an ADMS are the following :</p><p>• Data sources are heterogenous. They may be xed or mobile and arbitrarily connect and disconnect from the mediator, during variable intervals of time. Data sources have dierent capacities in terms of storage and computation.</p><p>• The mediator can dynamically connect to the sources when and as long as they are active (i.e. visible over the wireless network and ready to provide data).</p><p>• The mediator should provide, for each application, the capability to dene its data requirements in terms of event types, so oering a concept of a virtual schema similarly to conventional mediators, and a mechanism which handles continuous queries.</p><p>• The mediator should be able to aggregate data ows originated from the same source and integrate data ows originated from dierent sources on the basis of specic rules provided by the applications. As in conventional mediators, data heterogeneity should be transparent to the user, adaptors are aware of data transformation.</p><p>• The mediator should adapt itself to the user's context by continuously searching for the appropriate data sources. It should also satisfy user's preferences in terms of data delivery, relevance to domain of interest, privacy, etc.</p><p>• The mediator should be aware of energy consumption and manage consequently the connections to the sources and the usage of its resources.</p><p>These requirements clearly distinguish an ambient mediator from a conventional one <ref type="bibr" target="#b19">[21]</ref> where the mediation schema and the sources are known in advance. Here the environment is dynamic as data sources enter and leave continuously the eld of detection. The personalized and contextual integration and monitoring of heterogeneous data streams rely on continuous query evaluation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Related work</head><p>In this section, we list the CAÏMAN main objectives and compare them with existing related works.</p><p>The rst goal of CAÏMAN is to provide a high-level declarative approach which permits user applications to interoperate over distributed ambient objects. The expected data streams are relatively small in their length/size. Many formalisms for event streams processing and querying have been proposed, see <ref type="bibr" target="#b7">[9]</ref> for a good survey. In Data Stream Management Systems (DSMS) <ref type="bibr" target="#b2">[4]</ref>, many CQL-like query languages which extend SQL have been dened. They are based on the concept of window used to manage and lter data streams in a declarative way <ref type="bibr" target="#b3">[5,</ref><ref type="bibr" target="#b12">14,</ref><ref type="bibr" target="#b6">8,</ref><ref type="bibr" target="#b11">13]</ref>. In Complex Event Processing (CEP), some formalisms based on composition operators (i.e. sequence, conjunction, disjunction,etc), or time-based automata are used. The goal of CEP is to detect event patterns (i.e. situation) with temporal constraints in data streams. Today, the two approaches are seen as complementary <ref type="bibr" target="#b7">[9,</ref><ref type="bibr" target="#b14">16]</ref>. Both approaches focus on events detections but none on the events reactivity which is an important feature of AmI applications, e.g. the ability to identify the context during which active behavior is relevant and the situations in which it is required. Both approaches assume that the data (i.e. events) are continuously pushed to a centralized system known in advance. These assumptions do not t with our constraints, as the push mode consume a lot of energy.</p><p>In Sensor Databases such as TinyDB <ref type="bibr" target="#b13">[15]</ref>, data is acquired in a pull mode to avoid battery consumption. The query (i.e. Tiny SQL) is sent through the network and evaluated in a distributed mode. Sensors are active only when they are queried. The advantages of this approach is its adaptability to the features of hardware devices and to their constraints. The sensor network can contain a large number of sensors. However, the sensors are homogeneous, they all have a TinyOS and there is no mechanism of source discovery because the sensors are all known in advance.</p><p>The second goal of CAÏMAN is to make the ADMS aware of the user's context and user's preferences. Again, a lot In existing context-aware frameworks <ref type="bibr" target="#b4">[6]</ref>, the context manager is generally represented by a centralized server which is in charge of collecting context information, interpreting and providing them to the client applications. However in pervasive environments, there are frequent disconnections and low connectivity, making this architecture not robust enough and adequate for this type of application. In the literature, only few systems <ref type="bibr" target="#b5">[7,</ref><ref type="bibr" target="#b9">11]</ref> have proposed a local context server to overcome this problem. However, in <ref type="bibr" target="#b9">[11]</ref>, the context sources are known in advance and correspond to built-in sensors. Conversely in <ref type="bibr" target="#b5">[7]</ref>, the authors have developed a sentient object model for ad-hoc mobile environments where the context is only used to adapt the application behavior. It doesn't allow to enhance application data with contextual information. For instance, many applications need to add the location to the data produced.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.3">The CAÏMAN architecture</head><p>The overview of the CAÏMAN architecture is depicted in the Figure <ref type="figure" target="#fig_1">1</ref>. The resource discovery component facilitates objects discovery and handles dynamic connections and disconnections to these objects. AmIS objects should be able to rely on their own battery, so short-range wireless communication such as Bluetooth are assumed in CAÏMAN as these personal area networks are known to have a low consumption of energy. Once, a data source is discovered the data collectors are responsible for acquiring the data. Data sources do not push their data continuously, but rather sporadically in response to the mediator request. This requests is done only if the data source can serve the needs of the applications which have been deployed on top of the mediator.</p><p>The originality of our ADMS is to oer an hybrid approach combining both the push and the pull modes.</p><p>In our environment, we assume that sensors/actuators remain passive most of the time with a default behavior unless someone requests a service (i.e. light o, that can be turned on). All sensors/actuators implement some generic functions (e.g. services) and some that are optional. Sen- As the mediator should t into lite clients such as smarphones and function in a complete autonomy, no system functionality is delegated to a central server. We don't rely on a global data source registry that might not be available at all time. Meta-data exchange between AmIS objects should be done instead at runtime and the context and prole managers should be local. CAÏMAN provides a declarative language which allows to describe most of the system and application semantics which is based on the ECA (Event-Condition-Action) paradigm used in active databases <ref type="bibr" target="#b15">[17]</ref>. Thus, the rule processor is a core component of our system. It will be detailed in the next section. Notice that in this paper our goal is not to propose yet another query language nor a complex context-aware model, but rather to select a subset of existing formalisms, keep them simple and tractable as much as possible to t into lite clients.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">THE AMBIENT MEDIATION APPROACH</head><p>In this section, we detail our mediation approach. First, we describe the dierent types of ambient sources on which the CAÏMAN is built on, then the virtual mediation schema is presented. To understand the approach, we illustrate it with a scenario. In this scenario, Paul is a student and lives at the university residence. He wants to benet of an intelligent home behavior, by automatically controlling the air conditioning of the room where he is located according to his preferences. He also needs to organize his evenings and wants to be notied about interesting cultural events located not far from his current location. In order to do so, Paul will have to deploy two AmI applications which have been specied in a declarative manner by some designers.</p><p>During the deployment, the declarative description will be used to instantiate the virtual schema of the mediator, i.e. the application meta-data as described in the Figure <ref type="figure" target="#fig_1">1</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">The Ambient Sources</head><p>Three types of data sources <ref type="bibr" target="#b10">[12]</ref> are considered: (1) physical sources (e.g. GPS built-in sensors, smartphone, external temperature sensor such Arduino), (2) virtual sources (e.g. user, agenda alerts, SMS, emails, contacts) and (3) logical sources which combine physical and virtual sources with information from databases. These sources can be either xed (e.g. already embedded in a mobile device where the mediator is), or dynamic (i.e., another smartphone, a sensor/actuator). Fixed ambient sources are known in advance and always connected to the mediator, e.g.built-in sensors.</p><p>Dynamic ambient sources correspond to sources that appear and disappear to the mediation system over time due to the source mobility itself or due to the mobility of the user which embeds a mediator on his personal smartphone.</p><p>If a smartphone is close to a mobile device, a communication can be established and some messages can be exchanged as long as the device is reachable. If suddenly it disappears due to the user mobility, some messages can be lost. Moreover, the user himself can be an ambient data producer as he/she behaves like any other sensor (intelligent sensor). For instance, the user is discovering a broken window and wants the mediation system to inform automatically the technical sta in charge of repair.</p><p>In the remaining of the paper, we focus more on the dynamic data sources. Each one exports its capabilities (e.g., metadata) in an XML document as depicted in the Figure <ref type="figure">2</ref>. Each dynamic source corresponds to a physical device characterized by an 'id', a 'type' (e.g., Arduino, Android) and a version number.</p><p>Figure <ref type="figure">2</ref>: Sources Description</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">A declarative approach</head><p>The declarative approach used in CAÏMAN is ECA. ECA rules are a generalization of several methods to achieve active behavior, such as triggers and production rules. ECA rules are evaluated in three steps: (1) when an occurrence of an event is detected, (2) the system evaluates the condition under which the event is considered relevant, and (3) if it is veried, the rule action is executed. The separation between E-C-A is important for many reasons and has been emphasized by the active database community <ref type="bibr" target="#b15">[17]</ref>.</p><p>When designing a mediator based on the ECA paradigm it is important to carefully take into account the life cycle of a rule and the dimensions related to its semantic execution. Indeed this knowledge is mandatory for those designing an application. Moreover by separating the dimensions, there is more exibility, dierent behaviors can be proposed for specic applications. In the Figure <ref type="figure" target="#fig_2">3</ref>, we summarize them.</p><p>Here we shortly explain some of the dimensions. The event detection and composition and the visible DB states will be explained in the next section.</p><p>There exist many modes of event consumption, among them we selected two modes more suitable to our environment:</p><p>1. recent: only the most recent instances of any event are considered; older events are discarded. It is most suitable for fast-changing environments in which new events supersede old ones. The granularity of processing denes whether the rule processor reacts after the detection of each event (instanceoriented processing) or after a detection of a set of events (set-oriented processing). An example of instance-oriented processing is to call emergency after detecting a critical situation like the unconsciousness of a person. In order to avoid a false alarm, we can wait for multiple events before calling the emergency. In CAÏMAN, this latter dimension can be oered by dening windows on the events arrival. The rule priorities determines how rules are selected among a conict set of rules (i.e. rules triggered by the same event).</p><p>The EC and CA coupling modes indicates when condition (resp. action) is evaluated after event detection (resp. condition evaluation). The dierent options are: immediate, deferred, or detached. CAÏMAN proposes immediate coupling modes. In our system, we do not consider cascading execution because we assume that our actions have no side eect.</p><p>In our experimental prototype, only one semantics is implemented for the rule processor. Rules are evaluated in parallel and no cascading executions is allowed, but the event consumption and the granularity of processing can be parameterized.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3">The Ambient Mediation Schema</head><p>The CAÏMAN mediation schema is composed of: (1) a set of events types, corresponding to the data ows required by ambient applications, and events detectors, (2) a context model and a default user prole, and (3) a set of personalized and contextual continuous queries (dened as ECA rules).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.1">Events &amp; Event Detectors</head><p>An event type can be either simple (SE) or complex (CE).</p><p>A complex event type is a combination of other simple or complex events types. These event types are dened by the application designer.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Each event type (SE &amp; CE) is dened by a set of attributes:</head><p>• name : name of the event type,</p><p>• lifespan: default time interval during which the event instance is valid,</p><p>• aggrFunction : function which aggregates events to produce a complex event. For simple events, there is no aggregation function.</p><p>Each event type can be instantiated at runtime according to data ows arriving to the mediation system. These event instances (SE &amp; CE) are dened by a set of attributes:</p><p>• value : event instance value,</p><p>• source : source name that captured the event instance,</p><p>• raisingDate : moment when the event instance is produced/observed by its source,</p><p>• systemTime : moment when the event instance is detected by the mediation system,</p><p>• lifespan: time interval during which the event instance is valid after its raisingDate,</p><p>• raisingLocation: geo-location where an event instance is produced/observed by its source.</p><p>The lifespan is a metadata which can be provided by the event source or assigned by the application. Event instances are relevant during a limited period of time. Pervasive environments can cause delays between the raising date of an event instance and the time for treating this instance. Consequently the validity V of an event ei is dened by:</p><formula xml:id="formula_0">V (ei) = 1 if raisingDate(ei) + lif espan(ei) &lt; currentT ime) 0 otherwise</formula><p>The raisingLocation is a useful notion for many locationaware applications. Indeed, the location can inuence the relevance of a given event instance. For example, an event ood detected far away from a user can be irrelevant for him.</p><p>Once event types are dened, one should specify how and when event instances are created or captured. This is done by specifying event detectors. Depending on the event type and on the target data source, an event detector may be dened in various ways: a listener, a lookup function or any other procedure able to transform a specic signal into a semantic event.</p><p>For our scenario, the designers have separately dened three simple event types : UnvalidTemperature, UnvalidHumidity and Advertisement, with respectively a default lifespan of 5 min, 5 min and 1 week, and one complex event type UncomfortableSituation with its associated aggregate function Foo as depicted in the Figure <ref type="figure" target="#fig_3">4</ref>. For each event, the designer must dene a detector. Here, we only give the simple event detector DT on temperature expressed as a CQL query and the complex event detector US expressed as a CEP-like manner. Others are omitted as they can be expressed in a similar way.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.2">Context Model</head><p>According to <ref type="bibr" target="#b18">[20]</ref>, there exist six dierent models for representing the context information. Some models like the ontology-based model is very expressive and allows powerful context processing. However in CAÏMAN the model used is the simple key-value model as it should be embedded.</p><p>Following our previous work <ref type="bibr" target="#b1">[3]</ref>, we dene a context by ve dimensions : spatial , temporal, environmental, equipment and user state.</p><p>1. The spatial dimension is an important characteristics of mobile and pervasive environments. Indeed, depending on how much the user is mobile, the system will react dierently. For instance, if a user is highly </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">The environmental dimension concerns all the sensors</head><p>describing the environment of the user (e.g. temperature, humidity, luminosity). This information is important when the environment is xed, for example a smart home.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">The equipment dimension characterizes all informa-</head><p>tion about the media used by the user to interact with the application: the used device (e.g. type, battery autonomy, memory storage, computing power) and the connectivity (e.g. type of connection, rate). This dimension is important to adapt dynamically the system accordingly with the equipment constraints (e.g. low battery, uncertain connectivity).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">The user state dimension allows to know if a user is</head><p>available or not, and how he feels. In our case, we are more interested in the user availability which can have an impact on the system behavior.</p><p>Designers have to provide the context model used by their application and the set of context rules to the mediator that can compute the current context. For that, a list of context models is proposed with default context rules. For example, if the application designer is interested in the location information, there exists a rule associated with this dimension which captures the GPS coordinates from the smartphone GPS sensor every minute. However designers can also write their own context rules and submit them to the mediator.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.3">Profile Model</head><p>The survey <ref type="bibr" target="#b17">[19]</ref> highlights the diculty of choosing the good representation for the user preferences: qualitative or quantitative. The quantitative approach allows a total order between preferences but is not intuitive because this implies that the user put weights on his preferences. While the qualitative approach is very intuitive but makes dicult the usage because there is not necessarily a total order between preferences. In CAIMAN the user preferences considered are viewed as dynamic criteria by the application. Thus there is no order between preferences as all preferences must be considered by the application.</p><p>Following the denition given in <ref type="bibr" target="#b1">[3]</ref>, a user prole is organized into several dimensions, possibly decomposed into sub-dimensions. Each dimension and its sub-dimensions contain a set of attributes and their values on which preferences are expressed. We retain four important dimensions:</p><p>1. Personal data contains all information about the user (e.g. his name, his address, his birthday). This dimension may also contain data on social groups to which the user belongs to (e.g. student, professor).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">Domain of interest is generally the central dimension</head><p>of the user prole, it represents the user domain of interest and preferences. For example, the domain of interest may be the types of events the user is interested in and the preferences on how/when event instances are received or treated.</p><p>3. Resource discovery contains the user preferences on the remote resources (i.e. type of resource, associated data collectors, related security issues and all meta data useful to understand data stream semantics). An example can be receiving events only from sources located in the same place as the user.</p><p>4. System adaptation groups user preferences on how the system should adapt to the user context or to its own behavioral parameters. An example can be to disable the resource discovery component during the night. A set of preference rules can also be dened to adapt the system behavior in case of low battery, that is either disabling some functionalities or changing the frequency of the captured data.</p><p>In the same way as the context, designers specify a default user prole for their application. The Figure <ref type="figure">5</ref> describes the application default prole set by the designers for our scenario. We have gathered the prole of each application into a global one, but in reality each application has its own. $name and $$name variables represent respectively a string or a set of strings.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Figure 5: User Prole</head><p>For each application, the designer has specied the resource discovery constraints. Indeed, to control the temperature in a room, we are only interested by sensors and actuators located in the same room where the user is currently located. Some variables have a default value set by the designer. If not, they will be lled by the user when installing his application on his mobile device. For instance, the default temperature variables are ($1=18°, $2=22°) for the day time and ($13=16°,$4=18°) for the night. In the same manner, advertisements relevant to a user are those within $6='15km'. Others variables are set by the user.</p><p>For instance, Paul decides to change the default value $6 to 25km, and set the $$5 to (`music','sport').</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3.4">Application ECA Rules</head><p>The last task of the designer consists in dening his set of ECA application rules. For example, let's consider the following rules dened in the Figure <ref type="figure" target="#fig_4">6</ref> that model our scenarii.</p><p>As said before rules are contextual and personalized. Thus, the context and the user prole can be either explicitly used by designers in their rules and in particular in the condition, or implicitly used by the system during the runtime when specied within the user prole.</p><p>The rst rule of the smart oce scenario explicitly uses the user prole and in particular the UserPref.Temperature.min and UserPref.Temperature.max variables described above.</p><p>As these variables are context-dependent (i.e. day or night), their values are changing over time. So, they will be instantiated just before evaluating the rule condition.</p><p>In the second rule, a user receives advertisements. Here no condition is specied; however one will be added by the system at runtime since an implicit preference has been dened on this event type in the default prole. The reason why the condition is not directly written in the rule, is to allow the user to change his condition at any time. Here, users receive advertisements relevant to their personal topics and within the required distance. When an event is relevant for the user, he is informed by email. delivery mode (i.e. local, wireless, email, SMS), of a particular message or event. We separate messages from events, messages are generated to users and denitively leave the system, by opposition to events that will be ltered and reinjected later in a mediator that can interpret them. The action activate($type, $service, $serviceparameters) activates a service with some parameters on a specic actuator type that satises some user preferences.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">THE CAÏMAN MEDIATION SYSTEM</head><p>In this section, we briey describe the behavior of the main components of our system at runtime. Thus, we assume that AmI applications have been deployed on the smartphone, and that their default prole, detectors and rules have been transmitted to the mediator and uploaded in the application metadata database.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Data Collectors &amp; Actuator Commands</head><p>As the data sources are heterogeneous, a set of generic data collectors and actuator commands are needed to allow communications with the mediation system. The Data Collectors are used to collect and transform any kind of heterogeneous data so it can be understood and integrated in the mediator. Each source is bound with one instance of a data collector that is responsible for querying and controlling this data source. All communications are asynchronous.</p><p>Another issue also considered is the data transformation as the data provided by a source is not necessarily compatible to the coding, format, unit and scale of the expected data at the mediator level. The data collector is in charge of transforming these raw data into events, thus it activates the simple event detector associated with the source.</p><p>Actuator Commands allows the mediator to transform commands into real actions on the environment through actuators services.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2">Resource discovery &amp; Bindings</head><p>Due to the numerous communicating objects that enter and leave the eld of detection because of the user mobility, there is a need of a Resource Discovery component which is continuously aware of the equipment's environment.</p><p>Ambient data sources may connect and disconnect arbitrarily. As the mediator cannot rely on a centralized resources registry, the resource discovery service is dened as a seeking function which detects the surrounding objects, identies them through some metadata exchange and establishes connections to them if they are relevant at least for one active application deployed on the mediator.</p><p>As connections/disconnections can be frequent, the resource discovery component stores a history of all the discovered sources with their version number. This version number is useful to know if the source has changed since the last time it was discovered. This is to avoid unnecessary metadata exchanges. The history plays the role of a local resource registry which can be deleted at anytime, since it can be rebuilt at runtime.</p><p>Before communicating with a data source, one should know if the information it contains is relevant. For doing so, a matching is made between the source metadata and a part of the mediation schema. At the same time the context and prole information is used to select only the sources in a given location and at a given time, according to the preferences of the application or the user. Once the source is selected and a communication established, a dynamic binding enables to link the data source to the mediator, by instantiating the suitable data collector.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.3">Profile &amp; Context Manager</head><p>As many context-aware systems <ref type="bibr" target="#b4">[6]</ref>, the mediation system proposed makes a separation between the context acquisition, the context processing, and the context information usage. In fact, data collectors are in charge of retrieve context raw data, the context manager processes these data to infer context information which will be stored and used by applications and in particular application rules. These context information are also used by the prole manager to derive the active prole (i.e., all prole information which is valid for this current context). Indeed, the user prole is composed of a static part and a dynamic part. In the rst one, the prole information doesn't change frequently while the second one depends on a context that can change rapidly. As we have seen in the Figure <ref type="figure">5</ref>, the user prole can be contextual and it will be the role of the context and prole managers to keep the active prole up to date for the application. For simplicity reasons, an assumption is made on dening a contextual prole. Only If-then-else statements are allowed in order to avoid conicts between contextual predicates. Only one active prole is valid at any instant of time. Notice also that all variables can be changed at any time by the user, via a simple interface on his smartphone.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.4">Rule Processor</head><p>The Rule Processor is an idempotent service to which ECA rules with their associated detectors are submitted. As said earlier, it is important to follow rule execution semantic as described in the Figure <ref type="figure" target="#fig_2">3</ref>. The query processor relies on a multi-threaded execution framework. The approach we follow is, in a way, very similar to what has been proposed</p><p>by <ref type="bibr">Krämer [14]</ref> and especially their SweepArea that models a dynamic data structure to manage a collection of events of the same type. ECA rules act as continuous queries over collection of events and react over their environment when a situation is encountered.</p><p>As events of the same type can be used in many rules, events are not removed when used for triggering a rule.</p><p>Thus, a garbage collector is necessary and events are removed from the dynamic structure when their lifespan has expired. In order to avoid triggering multiple times a rule with the same events, each rule has a context summarizing the past execution. When the rule processor is looking for the rules that can be triggered, it uses the context which is also computed in a continuous way. Only the most recent event is kept for each dimension.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.5">The prototype</head><p>Smartphones as well as computers cannot really sense the world. For AmI environments, there is a need for tools for making computers that can sense and control more of the physical world than any other desktop computer. This is the role of the Arduino <ref type="bibr" target="#b0">[2]</ref> platform to sense the environment by receiving input from a variety of sensors and to aect its surroundings by controlling lights, motors, and other actuators.</p><p>A rst prototype combining Arduino and Android validating the approach has been implemented. Many sensors and actuators have been prototyped. The CAÏMAN mediator and many simple AmI applications can be deployed on an AN-DROID platform. For the time being, data collectors and actuators are operational, as well as the resource discovery.</p><p>Simple and complex event detectors, as well as simple ECA rules are supported. When the validity of events expires, the garbage collector automatically deletes the events. We are currently integrating the context and the user prole within the rules. The user agrees or not to install an AmI application on top of CAÏMAN. He can turn it on/o whenever he wants to. He can also checked the types and the number of events, the mediator is currently monitoring.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">CONCLUSION</head><p>In this paper, we have presented the dierent requirements posed by ambient environments and proposed an ambient mediation system called CAÏMAN. As we have seen, a declarative approach based on ECA rules is proposed.</p><p>The main originality is that it combines in an elegant way the context, the user prole and the continuous queries together. Some dimensions of the proles can be integrated and changed at anytime by the user. Another important contribution of our work is that it is based on personal mobile devices and local computation that better fulll the user privacy. To our knowledge CAIMAN is the rst ambient mediation system embedded in a smartphone oering such functionalities.</p><p>Some open issues still remain to be considered such as how to adapt the system if the context is critical (i.e., low battery), what to do when many mediators are acting in a conicting way on specic resources, how an event that has been sent several times by dierent data sources can be discovered to avoid repeating the same actions again and again.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>of work has been devoted to context and preference-aware queries by the database community. Traditionally, the integration of context and preferences in queries is made in two ways [10]. The query pre-processing consists in enriching the query with context or preference informations before executing it. The query post-processing ranks the query's answers according to these informations. Unfortunately, this mechanism works only for one-time queries and not for continuous queries in which the notions of pre and post-processing do not exist. Indeed, in traditional DBMS, data are permanent and queries are transient. In DSMS, data are transient and queries permanent as they are continuously evaluated over the transient data. To our knowledge, no solution has been proposed to handle the context and the user preferences on continuous queries.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: CAÏMAN sors can only send data during a period of time xed by the mediator, enabling the sensors and actuators to fall automatically asleep when they have nished their duty and thus turn back to their default state.</figDesc><graphic coords="3,316.82,53.64,228.25,169.26" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: Active Rules &amp; their Execution Semantics 2. chronicle: the oldest instances are considered and then discarded; i.e. events are consumed in a chronological order. It is preferred when there is a causal dependency between events.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: Simple &amp; complex event detectors mobile, he will not have time to establish proper connections with all equipments around him. The other important aspect is the location. It can be expressed in many ways depending on the application: GPS coordinates, an address, or a locality label (e.g. Room 305B, Administration Building). The spatial information can be provided by GPS built-in sensors or mobile networks or derived from Google Maps or databases.2. The temporal dimension is an important informationthat can be used for personalizing an application. For instance, a user can be interested to receive events only in the morning. Designers can change the notion of moment in the core context, e.g. when the morning begins and ends. This information can be provided by the phone clock (i.e. date, time) or derived from context denition (i.e. moment).</figDesc><graphic coords="5,316.82,53.64,263.55,148.58" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Figure 6 :</head><label>6</label><figDesc>Figure 6: Rule Examples</figDesc></figure>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgment</head><p>This work is partially funded by the French National Agency for Research (ANR) project under grant KISS (2011-INSe-005-03).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<ptr target="site.www.arduino.cc" />
		<title level="m">Arduino</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">A personalized access model: concepts and services for content delivery platforms</title>
		<author>
			<persName><forename type="first">S</forename><surname>Abbar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Bouzeghoub</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Kostadinov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Lopes</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Aghasaryan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Betge-Brezetz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 10th Int. Conf. on Information Integration and Web-based Applications and Services</title>
				<meeting>of the 10th Int. Conf. on Information Integration and Web-based Applications and Services<address><addrLine>New York, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2008">2008</date>
			<biblScope unit="page">4147</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">STREAM: the Stanford stream data manager (demo)</title>
		<author>
			<persName><forename type="first">A</forename><surname>Arasu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Babcock</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Babu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Datar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Ito</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Nishizawa</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Rosenstein</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Widom</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the ACM SIGMOD Int. Conf. on Management of data</title>
				<meeting>of the ACM SIGMOD Int. Conf. on Management of data<address><addrLine>New York, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="page">665665</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">The CQL continuous query language: semantic foundations and query execution</title>
		<author>
			<persName><forename type="first">A</forename><surname>Arasu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Babu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Widom</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">The VLDB Journal</title>
		<imprint>
			<biblScope unit="volume">15</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page">121142</biblScope>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">A survey on context-aware systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Baldauf</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Dustdar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Rosenberg</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Int. J. Ad Hoc Ubiquitous Comput</title>
		<imprint>
			<biblScope unit="volume">2</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page">263277</biblScope>
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">A framework for developing mobile, context-aware applications</title>
		<author>
			<persName><forename type="first">G</forename><surname>Biegel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Cahill</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 2nd IEEE Int. Conf on Perv. Comp. and Comm. (PerCom&apos;04)</title>
				<meeting>of the 2nd IEEE Int. Conf on Perv. Comp. and Comm. (PerCom&apos;04)<address><addrLine>Washington, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2004">2004</date>
			<biblScope unit="page">361</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">SECRET: a model for analysis of the execution semantics of stream processing systems</title>
		<author>
			<persName><forename type="first">I</forename><surname>Botan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Derakhshan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Dindar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Haas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">J</forename><surname>Miller</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Tatbul</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. VLDB Endow</title>
				<meeting>VLDB Endow</meeting>
		<imprint>
			<date type="published" when="2010-09">Sept. 2010</date>
			<biblScope unit="volume">3</biblScope>
			<biblScope unit="page">232243</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">A CEP Babelsh: Languages for Complex Event Processing and Querying Surveyed</title>
		<author>
			<persName><forename type="first">M</forename><surname>Eckert</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Bry</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Brodt</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Poppe</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Hausmann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Reasoning in Event-Based Distributed Systems</title>
				<editor>
			<persName><forename type="first">S</forename><surname>Helmer</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Poulovassilis</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Xhafa</surname></persName>
		</editor>
		<meeting><address><addrLine>Berlin / Heidelberg</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2011">2011</date>
			<biblScope unit="volume">347</biblScope>
			<biblScope unit="page">4770</biblScope>
		</imprint>
	</monogr>
	<note>Studies in Computational Intelligence</note>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Towards context-aware data management for ambient intelligence</title>
		<author>
			<persName><forename type="first">L</forename><surname>Feng</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">P M</forename><surname>Apers</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">W</forename><surname>Jonker</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">15th Int. Conf. on Database and Expert Systems Applications</title>
				<imprint>
			<date type="published" when="2004">2004</date>
			<biblScope unit="page">422431</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Context-awareness on mobile devices -the hydrogen approach</title>
		<author>
			<persName><forename type="first">T</forename><surname>Hofer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Schwinger</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Pichler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Leonhartsberger</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Altmann</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Retschitzegger</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 36th Annual Hawaii Int.Conf. on Syst. Sci. (HICSS&apos;03)</title>
				<meeting>of the 36th Annual Hawaii Int.Conf. on Syst. Sci. (HICSS&apos;03)<address><addrLine>Washington, DC, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="page">292</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Location management in pervasive systems</title>
		<author>
			<persName><forename type="first">J</forename><surname>Indulska</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Sutton</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the Australasian inf. sec. workshop conf. on ACSW frontiers</title>
				<meeting>of the Australasian inf. sec. workshop conf. on ACSW frontiers<address><addrLine>Darlinghurst, Australia, Australia</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2003">2003</date>
			<biblScope unit="page">143151</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Towards a streaming SQL standard</title>
		<author>
			<persName><forename type="first">N</forename><surname>Jain</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Mishra</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Srinivasan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Gehrke</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Widom</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Balakrishnan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">U</forename><surname>Çetintemel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Cherniack</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Tibbetts</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Zdonik</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. VLDB Endow</title>
				<meeting>VLDB Endow</meeting>
		<imprint>
			<date type="published" when="2008-08">Aug. 2008</date>
			<biblScope unit="volume">1</biblScope>
			<biblScope unit="page">13791390</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Semantics and implementation of continuous sliding window queries over data streams</title>
		<author>
			<persName><forename type="first">J</forename><surname>Krämer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Seeger</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Trans. Database Syst</title>
		<imprint>
			<biblScope unit="volume">34</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page">49</biblScope>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">TinyDB: an acquisitional query processing system for sensor networks</title>
		<author>
			<persName><forename type="first">S</forename><forename type="middle">R</forename><surname>Madden</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">J</forename><surname>Franklin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">M</forename><surname>Hellerstein</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Hong</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Trans. Database Syst</title>
		<imprint>
			<biblScope unit="volume">30</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page">122173</biblScope>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">Processing ows of information: from data stream to complex event processing</title>
		<author>
			<persName><forename type="first">A</forename><surname>Margara</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Cugola</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proc. of the 5th ACM int. conf. on Distributed event-based system, DEBS &apos;11</title>
				<meeting>of the 5th ACM int. conf. on Distributed event-based system, DEBS &apos;11<address><addrLine>New York, NY, USA</addrLine></address></meeting>
		<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="2011">2011</date>
			<biblScope unit="page">359360</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Active database systems</title>
		<author>
			<persName><forename type="first">N</forename><forename type="middle">W</forename><surname>Paton</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Diaz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Comput. Surv</title>
		<imprint>
			<biblScope unit="volume">31</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page">63103</biblScope>
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">Ambient intelligence: A survey</title>
		<author>
			<persName><forename type="first">F</forename><surname>Sadri</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Comput. Surv</title>
		<imprint>
			<biblScope unit="volume">43</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page">66</biblScope>
			<date type="published" when="2011-10">Oct. 2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">A survey on representation, composition and application of preferences in database systems</title>
		<author>
			<persName><forename type="first">K</forename><surname>Stefanidis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Koutrika</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Pitoura</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Trans. Database Syst</title>
		<imprint>
			<biblScope unit="volume">36</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page">19</biblScope>
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">A context modeling survey</title>
		<author>
			<persName><forename type="first">T</forename><surname>Strang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">L</forename><surname>Popien</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">UbiComp 1st Int. Workshop on Advanced Context Modelling, Reasoning and Management</title>
				<imprint>
			<date type="published" when="2004-09">September 2004</date>
			<biblScope unit="page">3141</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">Mediation in information systems</title>
		<author>
			<persName><forename type="first">G</forename><surname>Wiederhold</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ACM Comput. Surv</title>
		<imprint>
			<biblScope unit="volume">27</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page">265267</biblScope>
			<date type="published" when="1995">1995</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
