Context-aware Semantic Middleware Solutions for Pervasive Applications

Similar documents
Semantic Web Platform for Personal Information Management

a paradigm for the Introduction to Semantic Web Semantic Web Angelica Lo Duca IIT-CNR Linked Open Data:

Using the Semantic Web in Ubiquitous and Mobile Computing

Semantic Web: vision and reality

Introduction. October 5, Petr Křemen Introduction October 5, / 31

Contextion: A Framework for Developing Context-Aware Mobile Applications

Towards the Semantic Desktop. Dr. Øyvind Hanssen University Library of Tromsø

A SEMANTIC MATCHMAKER SERVICE ON THE GRID

Semantic agents for location-aware service provisioning in mobile networks

SwapMe. Semantic Web Application Platform for the Mobile Ecosystem

CHAPTER 1 INTRODUCTION

Ontology Servers and Metadata Vocabulary Repositories

What you have learned so far. Interoperability. Ontology heterogeneity. Being serious about the semantic web

Efficient, Scalable, and Provenance-Aware Management of Linked Data

Towards the Semantic Web

Linked Open Data: a short introduction

Porting Social Media Contributions with SIOC

SEXTANT 1. Purpose of the Application

Semantic Web Systems Introduction Jacques Fleuriot School of Informatics

The Semantic Web: A Vision or a Dream?

MODEL-BASED SYSTEMS ENGINEERING DESIGN AND TRADE-OFF ANALYSIS WITH RDF GRAPHS

DYNAMIC FOAF MANAGEMENT METHOD FOR SOCIAL NETWORKS IN THE SOCIAL WEB ENVIRONMENT

COMP6217 Social Networking Technologies Web evolution and the Social Semantic Web. Dr Thanassis Tiropanis

Wither OWL in a knowledgegraphed, Linked-Data World?

The Semantic Web. What is the Semantic Web?

Knowledge Representation in Social Context. CS227 Spring 2011

Novel System Architectures for Semantic Based Sensor Networks Integraion

A Survey of Context Modelling and Reasoning Techniques

Reducing Consumer Uncertainty

WebGUI & the Semantic Web. William McKee WebGUI Users Conference 2009

Einführung in die Erweiterte Realität

Semantic Web Company. PoolParty - Server. PoolParty - Technical White Paper.

Proteus A Semantic Context-Aware Adaptive Policy Model

An Infrastructure for MultiMedia Metadata Management

Semantic Web Publishing. Dr Nicholas Gibbins 32/4037

Linked Data and RDF. COMP60421 Sean Bechhofer

Opus: University of Bath Online Publication Store

SEMANTIC WEB AN INTRODUCTION. Luigi De

Paolo Bellavista Veronica Conti Carlo Giannelli Jukka Honkola

model (ontology) and every DRS and CMS server has a well-known address (IP and port).

Semantic Web Fundamentals

University of Bath. Publication date: Document Version Publisher's PDF, also known as Version of record. Link to publication

Policy-Based Context-Management for Mobile Solutions

PROJECT PERIODIC REPORT

Semantic Web and Python Concepts to Application development

Semantic web. Tapas Kumar Mishra 11CS60R32

Plug-and-Analyze (PnA): An Integrated Framework for Architecture Tradeoff Analysis Tool Support

Presented By Aditya R Joshi Neha Purohit

Lesson 5 Web Service Interface Definition (Part II)

Aspect-oriented Data. Mika Mannermaa Ora Lassila. Nokia Services. Invited

From Raw Sensor Data to Semantic Web Triples Information Flow in Semantic Sensor Networks

Proposal for Implementing Linked Open Data on Libraries Catalogue

Racer: An OWL Reasoning Agent for the Semantic Web

Linked Data: What Now? Maine Library Association 2017

JENA: A Java API for Ontology Management

H1 Spring B. Programmers need to learn the SOAP schema so as to offer and use Web services.

An Entity Name Systems (ENS) for the [Semantic] Web

Knowledge-Driven Video Information Retrieval with LOD

The Emerging Data Lake IT Strategy

1 What-is-anopen-platform/

Position Paper for Ubiquitous WEB

Collaborative Ontology Construction using Template-based Wiki for Semantic Web Applications

Semantic Document Architecture for Desktop Data Integration and Management

Development of an Ontology-Based Portal for Digital Archive Services

Using ESML in a Semantic Web Approach for Improved Earth Science Data Usability

Interoperability ~ An Introduction

Semantics Modeling and Representation. Wendy Hui Wang CS Department Stevens Institute of Technology

Mapping between Digital Identity Ontologies through SISM

Reasoning on Business Processes and Ontologies in a Logic Programming Environment

INTELLIGENT SYSTEMS OVER THE INTERNET

Annotation for the Semantic Web During Website Development

Bridging the Gap between Semantic Web and Networked Sensors: A Position Paper

Agent-Enabling Transformation of E-Commerce Portals with Web Services

745: Advanced Database Systems

Practical experiences towards generic resource navigation and visualization

Developing A Semantic Web-based Framework for Executing the Clinical Quality Language Using FHIR

COMPUTER AND INFORMATION SCIENCE JENA DB. Group Abhishek Kumar Harshvardhan Singh Abhisek Mohanty Suhas Tumkur Chandrashekhara

An Ontology-Based Intelligent Information System for Urbanism and Civil Engineering Data

W3C Provenance Incubator Group: An Overview. Thanks to Contributing Group Members

Introduction to Distributed Systems

An overview of Graph Categories and Graph Primitives

THE GETTY VOCABULARIES TECHNICAL UPDATE

Context-Aware Systems. Michael Maynord Feb. 24, 2014

: Semantic Web (2013 Fall)

Linking datasets with user commentary, annotations and publications: the CHARMe project

Enterprise Information Integration using Semantic Web Technologies:

KawaWiki: A Semantic Wiki Based on RDF Templates

New Approach to Graph Databases

The Point of View Axis: Varying the Levels of Explanation Within a Generic RDF Data Browsing Environment

Ontological Library Generator for Hypermedia-Based E-Learning System

Hyperdata: Update APIs for RDF Data Sources (Vision Paper)

Contents. G52IWS: The Semantic Web. The Semantic Web. Semantic web elements. Semantic Web technologies. Semantic Web Services

Interactive Knowledge Capture

Semantic Integration with Apache Jena and Apache Stanbol

An Introduction to the Semantic Web. Jeff Heflin Lehigh University

The Model-Driven Semantic Web Emerging Standards & Technologies

Applying Semantic Web in Mobile and Ubiquitous Computing: Will Policy-Awareness Help?

Semantic Web-An Extensive Literature Review

Are you afraid of Semantic Web?

Ontology Summit2007 Survey Response Analysis. Ken Baclawski Northeastern University

Transcription:

Solutions for Pervasive Applications Alessandra Toninelli alessandra.toninelli@unibo.it Università degli Studi di Bologna Department of Electronics, Information and Systems PhD Course Infrastructure and Supports for Wireless Systems Università degli Studi di Bologna Facoltà di Ingegneria 17 September 2009

Outline Context-aware Systems Background & Motivations State of the Art 1 Context-aware Systems Background & Motivations State of the Art 2 3 Summary Emerging Directions

Context-Aware Computing Background & Motivations State of the Art Scenario Heterogeneous devices & connection interfaces Mobile users, devices & services Variable interaction conditions (location, preferences, device, social setting) Goal To support service/application provisioning by adapting to changing operating conditions Solution Context-aware (middleware) systems

What is Context? Context-aware Systems Background & Motivations State of the Art Context is any information that can be used to characterize the state or the activity of an entity, and the environment where this entity operates. (based on [Dey, Salber & Abowd, 2001]) Any information in principle could be context, depending on the application. Location, device status & capabilities, user preferences, environmental conditions, date/time, past context,... Context Awareness is the ability of a system/application to use available context information to change its behavior accordingly. context-aware adaptation

Context-aware Systems Background & Motivations State of the Art Supporting context-aware adaptation basically requires the definition of three building blocks 1 Conceptual models to represent context information, and propagate it up to the application level 2 Concepts and mechanisms to represent & enforce context-dependent behavior adaptation 3 Appropriate support services to manage context information & support context-aware adaptation

Context Models Context-aware Systems Background & Motivations State of the Art Variable levels of abstraction & granularity Context attributes vs. contexts as entities Application-specific vs. general purpose (?) Several KR models key-value pairs object-oriented models (contexts as objects) markup schemes (XML) graphical models (UML) logical models (LP, DL, fuzzy logic), including: ontological models ( Semantic Web) Reasoning deriving inferred context info dealing with imprecise/conflicting context

Context-aware Adaptation Background & Motivations State of the Art Issues Specify context-dependent behavior strategies Enforce context-dependent strategies when need (proactive vs. reactive) E.g., show to the user only services currently available in his location. System/Architecture level approaches Metadata Software level approaches Reflection techniques (programming) Aspect-oriented design (software engineering) Note that architecture and software level approaches can be jointly applied

Background & Motivations State of the Art Metadata to Support Context Awareness Metadata provide a declarative approach to describe: 1 the structure/meaning of resources composing a system and their state profiles e.g., this device belongs to Alessandra and its battery status is now 70%. 2 the specification of management operations expressed at a high level of abstraction policies e.g., if the device battery goes under 30% disable application X. Metadata allow to specify context and context-aware adaptation strategies without affecting the application logic separation of concerns

Context Management Background & Motivations State of the Art Any context-aware system should support a standard set of functionalities application context-aware adaptation distribution storage - management pre-processing sensor data retrieval context abstraction & complexity Pre-processing might include context aggregation and/or verification Reasoning might take place at all horizontal levels Context-aware adaptation typically takes place at application level

Background & Motivations State of the Art Context Management Architectures Context access & retrieval Direct sensor access (with a loose meaning of sensor) Context server Middleware Context distribution & management Widgets (sensor-oriented) Networked services (service-oriented) Blackboard model (information-oriented) Software application design Libraries Toolkits Frameworks/Infrastructures

Outline Context-aware Systems 1 Context-aware Systems Background & Motivations State of the Art 2 3 Summary Emerging Directions

Some History Context-aware Systems First article by Berners-Lee, Hendler & Lassila (2001) Initially a lot of hype and several contributions... AI (ontology languages, rules, reasoners) Web-oriented applications (annotations, folksonomy,...) DB management (huge ontology KBs) But after some years things were getting too complicated to be usable :-( Towards a usable trade-off Coexisting ontology languages, used for different purposes Small interconnected ontologies vs. huge agreed ontologies Inconsistent knowledge as a matter of fact... A little semantics goes a long way, Jim Hendler

The Core Model Context-aware Systems is a web of data The Resource Description Framework (RDF) is a language for representing information about resources (identifiable) in the World Wide Web by identifying things using Web identifiers (called URIs) by describing resources in terms of simple properties and property values. RDF provides a common framework for expressing information so it can be exchanged between applications without loss of meaning Contents of this and the following slide are partly borrowed from http://www.w3.org/2007/03/sw

SW Languages &Technologies RDFS introduces a formal semantic schema behind RDF vocabulary OWL provides enhanced expressivity ontologies Semantic Tools Ontology management systems (editing, versioning, mapping) Knowledge management (storage & access to data) Reasoner engines

Context-aware Systems Profiles & policies can be used to: define and propagate context information define and enforce context-adaptation strategies However the underlying context model is always implicit (i.e., it is only known to the developer/designer) Semantic metadata allow the representation of context and context-aware adaptation strategies with unambiguous semantics 1 Context metadata can be exchanged between applications without loss of meaning 2 Automated reasoning can be performed to infer new context information

Original Research Directions PhD Thesis Semantic technologies (metadata) to build context-aware middleware 1 Context-aware discovery mature Context is used to provide mobile users with a personalized view on services Semantic-based profiles allow flexible matching between user requirements and service offer 2 Security, mainly access control Context-aware policies 3 Socially-aware applications Context is used to personalize user experience with social applications Social characterization of context (the other way round)

Policies Example In case of emergency, any qualified physician located within the hospital is allowed to access Alice s health protected information Access control policies High level directives defining who can access which resource under which circumstances Traditional policies based on identities/roles static Context-aware access control policies Definition of policies based on context Use of semantic technologies to represent & reason about policies/contexts

Policies Example In case of emergency, any qualified physician located within the hospital is allowed to access Alice s health protected information Access control policies High level directives defining who can access which resource under which circumstances Traditional policies based on identities/roles static Context-aware access control policies Definition of policies based on context Use of semantic technologies to represent & reason about policies/contexts

The Proteus Context-Aware Policy Framework Proteus policies associate resources to protection contexts A protection context is a set of attributes & constrained values The current state is a set of attributes & values measured by sensors A protection context is active if context assertions describing the current state match its context elements Activation of protection contexts (and associated policies) allows access to a resource

Proteus Context & Policy Representation Example In case of emergency, any qualified physician located within the hospital is allowed to access Alice s health protected information PersonalEmergencyContext ProtectionContext owner.alice requestor.inhospitalqualifiedphysician resource.alicehpi environment.personalemergency < Dr.Green, located, EmergencyRoom > < CurrentState, environment, PersonalEmergency > Context & policy representation based on Description Logic

Proteus Middleware Architecture OWL-DL to represent contexts and policies Java prototype v1.0 Pellet 1.5 DL reasoner via OWL API & SPARQL PEM implementation via Java Security Manager extension (JAAS) CM implemented on top of Contory context provisioning platform

Usable Security on Mobile Phones Relevant use cases in mobile phone usage modeled as access control issues: access to user status information (status sharing) access to the user s attention (call filtering) Access control policies High level directives defining who can access which resource under which circumstances Why is it difficult for mobile phone users to express their policies? Users are not able to handle technical details only details? Users don t understand policy models they are supposed to use User strategies are strongly dependent on their social context software systems are not

Design Requirements for Usable Policies User understandable policies Usable policy-based framework 1 Intensional definition of policies 2 Socially aware modeling of access conditions Need for a social vocabulary describing the user s environment Created and maintained by the phone 3 Support for specifying policies only when needed Deferred policy specification 4 Support for viewing/grouping policies based on different criteria Warning: necessary but (probably) not sufficient

Access Control Policies - State of the Art Powerful representation model for access control decisions Research on policy specification, management & enforcement Different logical approaches (LP, ILP, DL, abduction,...) Semantic policies (e.g. KAoS, Rei) Conflict analysis & consistency check Policy refinement Limitations of existing policy languages/models Little support for social vocabulary in policy definition Social data remain fragmented (no semantic interconnection) Inflexible policy definition and retrieval (fixed place, time & application)

A Socially Aware Policy Model A policy is modeled as a set of attributes and constrained values defining: what (the resource) who (the requestor - a socially aware description) the context (when, where, why) how (the access modality) The current state is modeled as a set of attribute-value pairs A policy is in effect if the current state values match the definition of the policy constraints.

Graph-based Representation of Policies Example My phone will ring if a friend of mine calls me p:userattention rdf:type?res p:ring p:owner p:resource p:modality?o?p p:action?a foaf:knows p:requestor rdf:type?r p:call A policy is represented as a set of RDF statements and/or SPARQL triple patterns in case of variables (to be matched at policy enforcement time)

Graph-based Policy Evaluation The current state is represented as a set of RDF statements (triples) RDF/SPARQL policy graphs are matched against current state triples p:userattention rdf:type p:policy p:ring p:owner p:resource rdf:type p:modality p:action foaf:knows p:requestor rdf:type foaf:name p:call Ora Lassila foaf:name Alessandra Toninelli

Why RDF as a Policy Language Semantic languages are well suited to represent and reason over social information (e.g., FoaF, CoaC) Social data constantly evolve - semantic languages are extensible RDF allows semi-structured data models Humans tend to organize their knowledge in concepts and relations typically flexible and adaptive wrt. to the situation This is our modeling choice Other KR models/languages might serve the purpose

Why a Graph-based Policy Model RDF graphs allow to create and semantically interconnect social data from different sources Different applications running on the user s behalf (e.g., calendar, address book, facebook) Phones belonging to different users (e.g., colleagues, family) The policy graph can be browsed in multiple directions and starting from different applications From the address book - which status info can this person access? From the calendar - who can call (access) me during this event? From the document manager - who can see this document in which situation? And from the policy manager, too

Prototype Implementation Policy evaluation Piglet + OINK (Nokia) to navigate and query RDF graphs Python Prototype mobile phone application (address book) ongoing work Android platform (open source) Java Cross-application/deferred specification of policies

Outline Context-aware Systems Summary Emerging Directions 1 Context-aware Systems Background & Motivations State of the Art 2 3 Summary Emerging Directions

Summary Context-aware Systems Summary Emerging Directions Context-aware systems at the state of the art Context representation models Representation & enforcement of context-aware adaptation strategies Context management support services Semantic metadata to build context-aware middleware Meaningful exchange of context information interoperability Reasoning to infer new context knowledge flexibility and adaptation Semantic approaches require a tradeoff between complexity and expressivity Performance (reasoning takes time and resources) Scalability (when dealing with thousands of triples)

Emerging Research Directions Summary Emerging Directions Focus on information in distributed systems design Wide-scale integration of devices/services based on interoperable information exchange (including context) Interoperability is moving at the information level Semantic Web as key technology? Mobile phones as truly ubiquitous devices Emerging trends in ubiquitous applications Social characterization of context Social Semantic Web Network-based approaches rising up to the application level Web 2.0 and others Cloud computing infrastructure/middleware as a service

Open Issues Context-aware Systems Summary Emerging Directions Managing the web of data Provenance tracking where does this data graph come from? Graph partitioning how can we split this graph without loss of information? Link metadata to data (e.g., link access control policies to controlled resources) Information overload usability and performance issues Novel approaches to (semantic) context-aware middleware should consider the network and socially aware nature of pervasive applications

Thank you Context-aware Systems Summary Emerging Directions Thanks for listening...... Questions? http://lia.deis.unibo.it/staff/alessandratoninelli/research.htm http://lia.deis.unibo.it/staff/alessandratoninelli/publications.htm