We present PRISSMA, a context-aware presentation layer for Linked Data. PRISSMA extends the Fresnel vocabulary with the notion of mobile context. Besides, it includes an algorithm that determines whether the sensed context is compatible with some context declarations. The algorithm finds optimal error-tolerant subgraph isomorphisms between RDF graphs using the notion of graph edit distance and is sublinear in the number of context declarations in the system.
2. 2
Mobile Guide
Museum Triplestore
“Is it optimized for my tablet?”
“Does it highlight practical
information when I am on my way?”
“Does it have a visually-impaired mode?”
Example: An RDF-based Mobile Guide for Museums
3. 3
How to enable context-aware adaptation
for Linked Data consumption?
Research Challenges
1. Model context-aware presentation metadata?
2. Select proper presentation metadata at runtime?
“Context” as in [Dey 2001]
7. 7
Presentation Frameworks for the Semantic Web
Haystack
Noadster
Surrogates
Declarative
approach
✓
✓
Domain
Independence
✓
✓
✓
Standard Languages
✓
✓
Context Awareness
Automatic
stylesheets
Evaluation
Distribution
Multimodality
✓
Xenon
Tal4Rdf
LESS
Hidethe
Stack
LDVM
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
✓
Fresnel
✓
✓
✓
✓
PRISSMA
(OurSystem)
✓
✓
✓
✓
✓
✓
8. Fresnel [Pietriga et al. 2006]
8
Illustration from [Pietriga et al. 2006]
Content formatting
and additional
content"
Content selection
and ordering"
Styling instructions
for fonts, colors, and
borders"
Presentation Metadata Vocabulary and Rendering Engine for RDF
9. 9
Our Contribution: Extending Fresnel with PRISSMA*
Context
PRISSMA Prism
Context
Description
PRISSMA Context
*Presentation of Resources for Interoperable Semantic and Shareable Mobile Adaptability
10. Extending Fresnel with PRISSMA
10
Context
fresnel:Lens
fresnel:Format
fresnel:group
fresnel:group
Environment
environment
Device
device
User
user
ns.inria.fr/prissma
fresnel:Group
fresnel:purpose
Fresnel
PRISSMA (Our Contribution)
Contextfresnel:Purpose
Prismfresnel:Group
owl:equivalentClass
fresnel:purpose
owl:equivalentClass
11. 11
Example
A Prism for showing and styling titles and
authors of paintings metadata accessed from
inside the museum.
12. 12
:paintingPrism a prissma:Prism, fresnel:Group ;!
fresnel:stylesheetLink <style.css> ;!
fresnel:purpose :atTheMuseum .!
!
:paintinglens a fresnel:Lens;!
fresnel:group :PaintingPrism ;!
fresnel:classLensDomain art:Painting ;!
fresnel:showProperties (dc:title!
dcn:author) .!
!
:depictionFormat a fresnel:Format ;!
fresnel:group :paintingPrism ;!
fresnel:propertyFormatDomain dc:title ;!
fresnel:valueStyle ”title"^^fresnel:styleClass .!
!
:atTheMuseum a prissma:Context ;!
prissma:environment :museumEnv .!
!
:museumEnv a prissma:Environment ;!
prissma:poi :museumGeo .!
!
:museumGeo geo:lat "48.86034" ;!
geo:long "2.337599" ;!
prissma:radius ”200" .!
Lens
Format
Context
prissma:environment
2.337599
48.86034
200
:museumGeo
geo:lat
geo:long
prissma:radius
prissma:poi
prissma:Environment
prissma:Context
:atTheMuseum
:museumEnv
A Prism for showing and styling titles and authors of
paintings metadata accessed from inside the museum.
Example:
13. Examples
PRISSMA Browser for Android
13
Smartphone, user walking
in museum town.
Tablet, user at home.
github.com/lukostaz/prissma-browser/