Context-based Just-in-Time Retrieval of Cultural Resources on Mobile Android Devices

Post on 22-May-2015

94 views 2 download

Tags:

Transcript of Context-based Just-in-Time Retrieval of Cultural Resources on Mobile Android Devices

Context-based Just-in-Time Retrieval of Cultural Resources

on Mobile Android DevicesWolfgang Lutz, Student M.Sc. Informatik

Betreuer: Prof.Dr. Michael Granitzer, Dr. Christin Seifert

1

ImagineBeing in front of this: When your phone tells you

10 interesting entries found near your location

But only if you are not…… in a hurry… listening to music… talking to your friend

2

What is context?• Context is any information that can be used to

characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.

[from Towards a Better Understanding of Context and Context-Awareness by Dey/Abowd, 1999]

3

Basic Idea

• Collect information about the user’s context on the device to proactively retrieve information, that could be of interest/use for the user, and – at an appropriate time – present it.

4

Basic Idea

• Collect information about the user’s context on the device to proactively retrieve information, that could be of interest/use for the user, and – at an appropriate time – present it.

Collection

4

Basic Idea

• Collect information about the user’s context on the device to proactively retrieve information, that could be of interest/use for the user, and – at an appropriate time – present it.

PerceptionCollection

4

Basic Idea

• Collect information about the user’s context on the device to proactively retrieve information, that could be of interest/use for the user, and – at an appropriate time – present it.

Query PerceptionCollection

4

Basic Idea

• Collect information about the user’s context on the device to proactively retrieve information, that could be of interest/use for the user, and – at an appropriate time – present it.

Presentation Query PerceptionCollection

4

Basic Idea

5

Basic Idea

Collection

Sensor Data

5

Basic Idea

Perception

Trigger

When to present results?

What terms to use in query?

Collection

Sensor Data

5

Database

Query

Retrieve Information

Basic Idea

Perception

Trigger

When to present results?

What terms to use in query?

Collection

Sensor Data

5

Presentation

Present Results

Database

Query

Retrieve Information

Basic Idea

Perception

Trigger

When to present results?

What terms to use in query?

Collection

Sensor Data

5

Thesis Questions

• How can context be used in mobile devices to detect what to query from the Database?

• How can context be used in mobile devices to detect when to query from the Database and present the results?

6

Technical Implementation

Presentation Query PerceptionCollection

Term Processing

Implementation for Android

Trigger Processing

Modified Europena4J

Library Notification,!App shows

query results

Abs

trac

tion

Laye

r

AWARE!Framework!+ custom!Plugins

7

Technical Implementation

Presentation Query PerceptionCollection

Term Processing

Implementation for Android

Trigger Processing

Modified Europena4J

Library Notification,!App shows

query results

Abs

trac

tion

Laye

r

AWARE!Framework!+ custom!Plugins

7

Europeana

• European Union project (europeana.eu)

• Portal for books, movies, paintings and music

• Goal: Collection of Europe's cultural and scientific heritage

8

AWARE Framework• Android Framework for harvesting context

information

• Good collection of default sensors

• Plugin mechanism for extensions

• Interface between plugins: context provider (i.e. SQLITE Database)

9

ArchitectureAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

10

ArchitectureAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

10

Text Processing

11

Text ProcessingJohann Sebastian Bach (geboren 31. März 1685 in Eisenach; gestorben 28. Juli 1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als einer der bekanntesten und bedeutendsten Musiker, vor allem für Berufsmusiker ist er oft der größte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende Komponistengenerationen.Zu Lebzeiten wurde Bach als Virtuose, Organist und Orgelinspektor hoch geschätzt, allerdings waren seine Kompositionen nur einem relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine Werke jahrzehntelang in Vergessenheit und wurden kaum noch öffentlich aufgeführt. Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk auseinandergesetzt hatten, begann mit der Wiederaufführung der Matthäus-Passion unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance in der breiten Öffentlichkeit.

11

Text ProcessingJohann Sebastian Bach (geboren 31. März 1685 in Eisenach; gestorben 28. Juli 1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als einer der bekanntesten und bedeutendsten Musiker, vor allem für Berufsmusiker ist er oft der größte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende Komponistengenerationen.Zu Lebzeiten wurde Bach als Virtuose, Organist und Orgelinspektor hoch geschätzt, allerdings waren seine Kompositionen nur einem relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine Werke jahrzehntelang in Vergessenheit und wurden kaum noch öffentlich aufgeführt. Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk auseinandergesetzt hatten, begann mit der Wiederaufführung der Matthäus-Passion unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance in der breiten Öffentlichkeit.

1. Split

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach; gestorben 28. Juli

1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als

einer der bekanntesten und bedeutendsten Musiker, vor allem fur Berufsmusiker

ist er oft der großte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende

Komponistengenerationen. Zu Lebzeiten wurde Bach als Virtuose, Organist und

Orgelinspektor hoch geschatzt, allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit. Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

1

1. Split

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach; gestorben 28. Juli

1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als

einer der bekanntesten und bedeutendsten Musiker, vor allem fur Berufsmusiker

ist er oft der großte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende

Komponistengenerationen. Zu Lebzeiten wurde Bach als Virtuose, Organist und

Orgelinspektor hoch geschatzt, allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit. Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

1

1. Split2. Filter

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach; gestorben 28. Juli

1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als

einer der bekanntesten und bedeutendsten Musiker, vor allem fur Berufsmusiker

ist er oft der großte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende

Komponistengenerationen. Zu Lebzeiten wurde Bach als Virtuose, Organist und

Orgelinspektor hoch geschatzt, allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit. Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

2

1. Split2. Filter

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach; gestorben 28. Juli

1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als

einer der bekanntesten und bedeutendsten Musiker, vor allem fur Berufsmusiker

ist er oft der großte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende

Komponistengenerationen. Zu Lebzeiten wurde Bach als Virtuose, Organist und

Orgelinspektor hoch geschatzt, allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit. Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

2

1. Split2. Filter3. Reformulate

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach; gestorben 28. Juli

1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als

einer der bekanntesten und bedeutendsten Musiker, vor allem fur Berufsmusiker

ist er oft der großte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende

Komponistengenerationen. Zu Lebzeiten wurde Bach als Virtuose, Organist und

Orgelinspektor hoch geschatzt, allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit. Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

3

1. Split2. Filter3. Reformulate

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach; gestorben 28. Juli

1750 in Leipzig) war ein deutscher Komponist des Barock. Er gilt heute als

einer der bekanntesten und bedeutendsten Musiker, vor allem fur Berufsmusiker

ist er oft der großte Komponist aller Zeiten. Seine Werke beeinflussten nachfolgende

Komponistengenerationen. Zu Lebzeiten wurde Bach als Virtuose, Organist und

Orgelinspektor hoch geschatzt, allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit. Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

3

1. Split2. Filter3. Reformulate4. Clean

11

Text ProcessingJohann Sebastian Bach (geboren 31. Marz 1685 in Eisenach gestorben 28. Juli

1750 in Leipzig war ein deutscher Komponist des Barock Er gilt heute als einer

der bekanntesten und bedeutendsten Musiker vor allem fur Berufsmusiker ist er

oft der großte Komponist aller Zeiten Seine Werke beeinflussten nachfolgende

Komponistengenerationen Zu Lebzeiten wurde Bach als Virtuose Organist und

Orgelinspektor hoch geschatzt allerdings waren seine Kompositionen nur einem

relativ kleinen Kreis von Musikkennern bekannt. Nach Bachs Tod gerieten seine

Werke jahrzehntelang in Vergessenheit und wurden kaum noch o↵entlich aufgefuhrt.

Nachdem die Komponisten der Wiener Klassik sich mit Teilen von Bachs Werk

auseinandergesetzt hatten, begann mit der Wiederau↵uhrung der Matthaus-Passion

unter Leitung von Felix Mendelssohn Bartholdy im Jahre 1829 die Bach-Renaissance

in der breiten O↵entlichkeit Johann Sebastian Sebastian Bach Organist und Orgelinspektor

Bachs Tod Komponisten der Wiener Wiener Klassik Bachs Werk Felix Mendelssohn

Mendelssohn Bartholdy Bartholdy im Jahre

4

1. Split2. Filter3. Reformulate4. Clean

11

Text Processing Results

Johann Johann Sebastian Sebastian Sebastian Bach Bach Eisenach Leipzig Komponist

Barock Musiker Berufsmusiker Zeiten Werke Komponistengenerationen Lebzeiten

Virtuose Virtuose Organist Organist Organist und Orgelinspektor Orgelinspektor Kompositionen

Kreis Musikkennern Bachs Bachs Tod Tod Vergessenheit Komponisten Komponisten der Wiener

Wiener Wiener Klassik Klassik Bachs Werk Werk Wiederau↵uhrung Leitung Felix

Felix Mendelssohn Mendelssohn Mendelssohn Bartholdy Bartholdy Bartholdy im Jahre

Jahre O↵entlichkeit

5

Sebastian Bach Eisenach Leipzig

6

TermData

GeoData

12

ArchitectureAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

13

ArchitectureAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

13

Europeana Mapping

proxy dc contributor

EDMFields

(selection)

ag skos prefLabel

proxy dc creator

edm UGC

provider aggregation edm dataProvider

provider aggregation edm provider

proxy dc type

proxy dc format

cc skos broaderLabel

cc skos prefLabel

proxy dcterms created

ts skos prefLabel

proxy dc date

proxy dc coverage

proxy dcterms temporal

pl skos prefLabel

proxy dcterms spatial

proxy dcterms alternative

proxy dc title

europeana completeness

europeana aggregation edm country

proxy dc identifier

europeana aggregation edm language

provider aggregation edm rights

proxy edm year

proxy dc description

proxy dcterms tableOfContents

who

EDMAggregated

Fields

UGC

DATA PROVIDER

PROVIDER

what

date

when

subject

where

location

title

COMPLETENESS

COUNTRY

identifier

LANGUAGE

RIGHTS

YEAR

description

A

TermCollector

ContextophelesContext

Integration

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ContextophelesContextSources

OSMPoiResolver

GeonameResolver

Mapping in the Europeana Data Model

Information Flow in Contextopheles

Mapping in AutomaticQuery Plugin

Figure 1: Overview over the system

1

14

Query GenerationWhatObjects

WhereObjects

Que

ryO

bjec

ts

From Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

From Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

What? Bach

From Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

Where? Leipzig

What? Bach

Where? Leipzig

Where? Leipzig What? Bach

From Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

What? Werk

Where? Leipzig

What? Bach

Where? Leipzig

Where? Leipzig What? Bach

From Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

What? Werk

Where? Leipzig

What? Bach

Where? Leipzig

Where? Leipzig What? Bach

What? Werk Where? Leipzig

What? WerkFrom Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

What? Werk

Where? Leipzig

Where? Wien

What? Bach

Where? Leipzig

Where? Leipzig What? Bach

What? Werk Where? Leipzig

What? WerkFrom Term

Collector

15

Query Generation

What? Bach

WhatObjects

WhereObjects

Que

ryO

bjec

ts

What? Werk

Where? Leipzig

What? Bach

Where? Leipzig

Where? Leipzig What? Bach

What? Werk Where? Leipzig

What? Werk

. . .

From Term

Collector

15

DEMO(or videos, if things start to explode)

Improvements and Future WorkAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

17

Improvements and Future WorkAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

Improve Location Resolvers

17

Improvements and Future WorkAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

Improve Term Heuristics

Improve Location Resolvers

17

Improvements and Future WorkAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

Improve Term Heuristics

Improve Location Resolvers

Extend and fixUser Interface, extend Situation

detection

17

Improvements and Future WorkAWARE/Android

Sensors

AWARELocation

ContextophelesSensors

GeonameResolver

OSMPoiResolver

ClipboardCatcher

NotificationCatcher

UIContent

SMSReceiver

ImageReceiver

AndroidClipBoardManager

AndroidAccessibilityServices

AndroidMediaStore

AndroidTelephonyProvider

ContextophelesSensor

Processing

TermCollector

ContextophelesApplication

Layer

Automatic Query

Figure 1: Description:

1. Step 1.

1

Improve Term Heuristics

Improve Location Resolvers

Extend and fixUser Interface, extend Situation

detection

and more

17

Example Extension

18

Todo• Evaluation: Expert review soon, more sophisticated

evaluation later (including quality of queries and results)

• Stability Improvements

• More Plugins (e.g. LocationProjector)

• More sophisticated situation detection (when to query and notify)

• Reduce Energy Consumption

• Comfort features (e.g. history of queries)

19

At a glance

• We built a prototype to proof the concept

• Still a lot of work to do to use it in „real life“

• Current performance of the app is very promising

• Building it was fun (most of the time 😃 )

20

Thank you very much