Error-Tolerant RDF Subgraph
Matching for Adaptive Presentation
of Linked Data on Mobile
Luca Costabello
2
Mobile Guide
 Museum Triplestore
“Is it optimized for my tablet?”
“Does it highlight practical
information when I am on ...
3
How to enable context-aware adaptation
for Linked Data consumption?
Research Challenges
1.  Model context-aware presenta...
4
Modeling Presentation Metadata
1
Selecting Presentation Metadata
with Error-Tolerant Matching
2
Evaluation
3
Conclusions...
5
Modeling Presentation Metadata
1
Selecting Presentation Metadata
with Error-Tolerant Matching
2
Evaluation
3
Conclusions...
6
NAC
Laakko
Chen
Zhang
Chamaleon
Butter
Paternò
MIMOSA
CAMB
Adipat
COIN
CSSMedia
Queries
PRISSMA
(OurSystem)
Linked Data
...
7
Presentation Frameworks for the Semantic Web
Haystack
Noadster
Surrogates
Declarative
approach
 ✓
 ✓
Domain
Independence...
Fresnel [Pietriga et al. 2006]
8
Illustration from [Pietriga et al. 2006]
Content formatting
and additional
content"
Conte...
9
Our Contribution: Extending Fresnel with PRISSMA*
Context
PRISSMA Prism
Context
Description
PRISSMA Context
*Presentatio...
Extending Fresnel with PRISSMA
10
Context
fresnel:Lens
fresnel:Format
fresnel:group
fresnel:group
Environment
environment
...
11
Example
A Prism for showing and styling titles and
authors of paintings metadata accessed from
inside the museum.
12
:paintingPrism a prissma:Prism, fresnel:Group ;!
fresnel:stylesheetLink <style.css> ;!
fresnel:purpose :atTheMuseum .!
...
Examples

PRISSMA Browser for Android
13
Smartphone, user walking
in museum town.
Tablet, user at home.
github.com/lukosta...
14
Modeling Presentation Metadata
1
Selecting Presentation Metadata
with Error-Tolerant Matching
2
Evaluation
3
Conclusion...
Selecting Presentation Metadata 
15
:smartphoneMoving
:tabletAtHome
:maleVisitorAtTheMuseum
:actualContext
16
Ambiguity
 Incompleteness
Selecting Presentation Metadata is tricky
Sensor Noise
2.32434
48.843453
:poi
geo:lat
geo:lon...
17
Error-tolerant matching for RDF Graphs
iSPARQL
Silk
Zou
RDF-specific
 ✓
 ✓
 ✓
Data Heterogeneity
Client-side Execution

...
Our Contribution: Adapting Messmer
to RDF and Mobile Context
Optimal error-tolerant subgraph isomorphisms based on graph e...
Prism Selection - Step 1: Decomposition
(i.e. Index Building)
19
prissma:environment
2.337599
48.86034
200
:museumGeo
geo:...
Prism Selection – Step 2: Online Search Algorithm!
1  foreach context unit S in D do!
2  compute_subgraph_isomorphisms(S,G...
prissma:Context
0 48.86034
-2.337599
200
geo:lat
geo:lon
prissma:radius
1
:museumGeo
prissma:Environment
2
{3,1,2,{prissma...
22
Modeling Presentation Metadata
1
Selecting Presentation Metadata with
Error-Tolerant Matching
2
Evaluation
3
Conclusion...
Evaluation: Memory Consumption
23
0
50
100
150
200
250
300
0.1
 0.3
 0.5
 0.7
 0.9
DecompositionItems
Percentage of common...
Evaluation: Response Time
24
If prisms are completely different
 if prisms are highly
similar
→
25
Modeling Presentation Metadata
1
Selecting Presentation Metadata with
Error-Tolerant Matching
2
Evaluation
3
Conclusion...
26
Limitations and Future Work
Prisms Distribution: 

Linked Presentation Metadata.
Modeling Presentation Metadata
1
Selec...
Upcoming SlideShare
Loading in …5
×

Error-Tolerant RDF Subgraph Matching for Adaptive Presentation of Linked Data on Mobile

996 views

Published on

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.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
996
On SlideShare
0
From Embeds
0
Number of Embeds
63
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Error-Tolerant RDF Subgraph Matching for Adaptive Presentation of Linked Data on Mobile

  1. 1. Error-Tolerant RDF Subgraph Matching for Adaptive Presentation of Linked Data on Mobile Luca Costabello
  2. 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. 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]
  4. 4. 4 Modeling Presentation Metadata 1 Selecting Presentation Metadata with Error-Tolerant Matching 2 Evaluation 3 Conclusions 4
  5. 5. 5 Modeling Presentation Metadata 1 Selecting Presentation Metadata with Error-Tolerant Matching 2 Evaluation 3 Conclusions 4
  6. 6. 6 NAC Laakko Chen Zhang Chamaleon Butter Paternò MIMOSA CAMB Adipat COIN CSSMedia Queries PRISSMA (OurSystem) Linked Data support ✓ Context-awareness ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Standard Languages ✓ ✓ ✓ ✓ ✓ ✓ ✓ Runtime adaptation ✓ ✓ ✓ ✓ Multimodality ✓ Client-side only
 (for privacy preservation) ✓ ✓ ✓ ✓ ✓ Evaluation ✓ ✓ ✓ ✓ ✓ Adaptive Presentation Frameworks for the Web
  7. 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. 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. 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. 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. 11 Example A Prism for showing and styling titles and authors of paintings metadata accessed from inside the museum.
  12. 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. 13. Examples
 PRISSMA Browser for Android 13 Smartphone, user walking in museum town. Tablet, user at home. github.com/lukostaz/prissma-browser/
  14. 14. 14 Modeling Presentation Metadata 1 Selecting Presentation Metadata with Error-Tolerant Matching 2 Evaluation 3 Conclusions 4
  15. 15. Selecting Presentation Metadata 15 :smartphoneMoving :tabletAtHome :maleVisitorAtTheMuseum :actualContext
  16. 16. 16 Ambiguity Incompleteness Selecting Presentation Metadata is tricky Sensor Noise 2.32434 48.843453 :poi geo:lat geo:long 10 prissma:radius 2.337599 48.86034 5 :poi geo:lat geo:long prissma:radius :user1 "computers" foaf:interest :user1 "computer science" foaf:interest :user1 :Karl :Anita prissma:nearbyEntity :John :user1 :Karl :Anita prissma:nearbyEntity Prism Actual Need Error-tolerant matching
  17. 17. 17 Error-tolerant matching for RDF Graphs iSPARQL Silk Zou RDF-specific ✓ ✓ ✓ Data Heterogeneity Client-side Execution
 (for privacy preservation) Incremental index updates ✓ Selective matching cache PRISSMA ✓ ✓ ✓ ✓ Messmer ✓
  18. 18. Our Contribution: Adapting Messmer to RDF and Mobile Context Optimal error-tolerant subgraph isomorphisms based on graph edit distance. 18 • Atomic element might be a graph: Context Units •  Core Context Classes •  Entities •  Literals •  Geo •  Time • Customized Cost Functions •  Strings (Monge-Elkan) •  Geographic (Haversine distance + Decay) •  Temporal (Interval Inclusion + Decay) •  Missing nodes 2.32434 48.843453 :poi geo:lat geo:long 10 prissma:radius Our Extensions: [Messmer et al. 98]
  19. 19. Prism Selection - Step 1: Decomposition (i.e. Index Building) 19 prissma:environment 2.337599 48.86034 200 :museumGeo geo:lat geo:long prissma:radius prissma:poi prissma:Environment prissma:Context :atTheMuseum :museumEnv prissma:Context 0 48.86034 -2.337599 200 geo:lat geo:lon prissma:radius 1 :museumGeo prissma:Environment 2 {3,1,2,{prissma:poi}} {4,0,3,{prissma:environment}} :atTheMuseum Context Units
  20. 20. Prism Selection – Step 2: Online Search Algorithm! 1  foreach context unit S in D do! 2  compute_subgraph_isomorphisms(S,GI)! 3  ! 4  while C(fcheapest)< T { ! 5  if S1 is Prism then! 6  R.add(S1)! 7  ! 8  foreach child of S1 do! 9  fchild= combine(fS1,fS2)! 10  }! 11  return R! 20 prissma:Context 0 48.86034 -2.337599 200 geo:lat geo:lon prissma:radius 1 :museumGeo prissma:Environment 2 {3,1,2,{prissma:poi}} {4,0,3,{prissma:environment}} :atTheMuseum prissma:environment 2.32434 48.843453 :actualPOI geo:lat geo:long prissma:poi :ActualCtx :actualEnv 10 prissma:radius C=0! C=0.34! C=0! 1. Compute context units isomorphisms costs
  21. 21. prissma:Context 0 48.86034 -2.337599 200 geo:lat geo:lon prissma:radius 1 :museumGeo prissma:Environment 2 {3,1,2,{prissma:poi}} {4,0,3,{prissma:environment}} :atTheMuseum Prism Selection: Search Algorithm! 1  foreach context unit S in D do! 2  compute_subgraph_isomorphisms(S,GI)! 3  ! 4  while C(fcheapest)< T { ! 5  if S1 is Prism then! 6  R.add(S1)! 7  ! 8  foreach child of S1 do! 9  fchild= combine(fS1,fS2)! 10  }! 11  return R! 21 prissma:environment 2.32434 48.843453 :actualPOI geo:lat geo:long prissma:poi :ActualCtx :actualEnv 10 prissma:radius C=0! C=0.34! C=0! C=0.17! C=0.09! T=0.6! ✓ ✓ ✓ ✓ ✓ 2. Combine costs C < T --> Match!
  22. 22. 22 Modeling Presentation Metadata 1 Selecting Presentation Metadata with Error-Tolerant Matching 2 Evaluation 3 Conclusions 4
  23. 23. Evaluation: Memory Consumption 23 0 50 100 150 200 250 300 0.1 0.3 0.5 0.7 0.9 DecompositionItems Percentage of common context units Total decomposition Items Context Units (decomposition) Context Units (raw prisms) 0 5 10 15 20 25 0.1 0.3 0.5 0.7 0.9 Memory[KB] Percentage of common context units PRISSMA decomposition Jena Models
  24. 24. Evaluation: Response Time 24 If prisms are completely different if prisms are highly similar →
  25. 25. 25 Modeling Presentation Metadata 1 Selecting Presentation Metadata with Error-Tolerant Matching 2 Evaluation 3 Conclusions 4
  26. 26. 26 Limitations and Future Work Prisms Distribution: 
 Linked Presentation Metadata. Modeling Presentation Metadata 1 Selecting Presentation Metadata with Error-Tolerant Matching 2 Evaluation 3 User acceptability evaluation campaign. Machine learning to optimize cost functions parameterization. Beyond Fresnel: support for other presentation engines Thanks. wimmics.inria.fr/projects/prissma @lukostaz

×