28
TU/e technische universiteit eindhoven Hypermedia Presentation Adaptation on the Semantic Web Flavius Frasincar Geert-Jan Houben http://wwwis.win.tue.nl/ ~hera

TU/e technische universiteit eindhoven Hypermedia Presentation Adaptation on the Semantic Web Flavius Frasincar Geert-Jan Houben hera

  • View
    294

  • Download
    0

Embed Size (px)

Citation preview

TU/e technische universiteit eindhoven

Hypermedia Presentation Adaptation

on the Semantic Web

Flavius Frasincar

Geert-Jan Houben

http://wwwis.win.tue.nl/~hera

TU/e technische universiteit eindhoven

Overview

• Motivation and Goals• HERA Design Methodology• Conceptual Design• Application Design• Adaptation Design• Prototype and Rendering• Conclusion

TU/e technische universiteit eindhoven

Motivation: WIS Engineering

• Methodologies exist for manual hypermedia presentation design, HERA targets automated presentation

• Automated presentation is important for databased content (the ‘deep web’) as opposed to manually crafted content (the ‘surface web’): most WIS are data driven

TU/e technische universiteit eindhoven

Motivation: Adaptation

• Presentations must be adaptable to different users/user platforms

• Devices (PC, PDA, WAP Phone, WebTV etc.)• Device capabilities (display size, memory size,

network speed, etc.)• User preferences (desired layout, navigation

patterns, etc.)• User browsing history

TU/e technische universiteit eindhoven

Goals

• Develop a methodology for automated hypermedia presentation design (generation) that– is intended for Web-based information systems (WIS)

– integrates heterogeneous data sources

– facilitates presentation (server/client-side) adaptation to device capabilities and user preferences

– enables semi-structured data queries

TU/e technische universiteit eindhoven

HERA Architecture

Relational Database

Object-Oriented Database

XML Database

ODB-XML Wrapper

RDB-XML Wrapper

Mediator/ Integrator

Logical Presentation

Logical-WML Presentation

HTML Presentation

SMIL Presentation

WML Presentation

Logical-SMIL Presentation

Logical-HTML Presentation

Information Retrieval

Hypermedia Presentation

…Query

Use

r/P

latf

orm

A

dapt

atio

n

TU/e technische universiteit eindhoven

Hera Design Methodology

• Originates from RMM (Relationship Management Methodology)

• Suggests a sequence of design steps to be taken when designing a web application

• Supports – integration of heterogeneous information

– automated presentation design

– user/platform adaptation

TU/e technische universiteit eindhoven

Hera Design Methodology

Hera Suite

Design Methodology

RequirementsAnalysis

ConceptualDesign

IntegrationDesign

ApplicationDesign

AdaptationDesign

PresentationDesign

(Search)Agent

inforequest

(meta) data

ConceptualModel Application

Model

info request(slice)

presentation

End User

RQL / RDF XSLT / XML

UserModel

PresentationModel

PresentationEngine

ApplicationEngine

IntegrationEngine

CuypersEngine

AdaptationEngine

info request HTML/WML

IntegrationModel

Semantic Layer Application Layer Presentation Layer

TU/e technische universiteit eindhoven

Conceptual Model (CM)

• Provides a uniform semantic view over different data sources that are integrated within a given Web application

• Consists of hierarchies of concepts relevant within the given domain, their properties, and relations

• Encoded in RDF(S)

TU/e technische universiteit eindhoven

Conceptual Model Example

TU/e technische universiteit eindhoven

CM Example RDF(S) Syntax

<rdfs:Class rdf:ID="Artifact"/><rdfs:Class rdf:ID="Painting"> <rdfs:subClassOf rdf:resource="#Artifact"/></rdfs:Class><rdf:Property rdf:ID="name"> <rdfs:domain rdf:resource="#Artifact"/> <rdfs:range rdf:resource="#String"/></rdf:Property><rdf:Property rdf:ID="year"> <rdfs:domain rdf:resource="#Artifact"/> <rdfs:range rdf:resource="#Integer"/></rdf:Property>

<rdf:Property rdf:ID="picture"> <rdfs:domain rdf:resource="#Painting"/> <rdfs:range rdf:resource="#Image"/></rdf:Property><rdf:Property rdf:ID="created_by"> <sys:cardinality rdf:resource="#single"/> <sys:inverse rdf:resource="#creates"/> <rdfs:domain rdf:resource="#Artifact"/> <rdfs:range rdf:resource="#Creator"/></rdf:Property>...

TU/e technische universiteit eindhoven

Application Model (AM)

• Captures navigational view over CM, describing hypermedia aspects

• Slices are meaningful presentation units:– Associated to concepts from CM– Containing properties/attributes and possibly other slices

• Slices are linked together with slice relationships:– Aggregation relationships: index, tour, indexed guided tour

etc.– Reference relationships: link with an anchor specified

• Encoded in RDF(S)

TU/e technische universiteit eindhoven

Application Model Example

TU/e technische universiteit eindhoven

AM Example RDF(S) Syntax<rdfs:Class rdf:ID="Slice.technique.main"> <rdfs:subClassOf rdf:resource="#Slice"/></rdfs:Class><rdfs:Class rdf:ID="Slice.painting.main"> <rdfs:subClassOf rdf:resource="#Slice"/></rdfs:Class><rdfs:Class rdf:ID="Link_exemplified_by" rdfs:subClassOf="#Link"></rdfs:Class><rdf:Property rdf:ID="source"> <rdfs:domain rdf:resource="#Link_exemplified_by"/> <rdfs:range rdf:resource="#Image"/></rdf:Property><rdf:Property rdf:ID="destination"> <rdfs:domain rdf:resource="#Link_exemplified_by"/> <rdfs:range rdf:resource="#Slice.painting.main"/></rdf:Property><rdf:Property rdf:ID="slice.painting.main"> <rdfs:domain rdf:resource="#Painting"/> <rdfs:range rdf:resource="#Slice.painting.main"/></rdf:Property>

TU/e technische universiteit eindhoven

Adaptation

• WIS are accessed through multitude of devices and by different users– Device capabilities

– User preferences

– Browsing history

• Adaptation based on conditioning the appearance of slices in AM

TU/e technische universiteit eindhoven

Adaptation/User Model

• Captures two kinds of adaptation• Adaptability takes into account the situation in which the user will

use the presentation (e.g. the browsing platform) • Adaptivity means that the presentation changes itself according to

the “state of the user’s mind” while being browsed

• Consists of • Device/User Profile captures “static” visual and platform

preferences encoded in CC/PP• User Session represents the dynamic user’s state, e.g. did the user

visit (learn) this slice (concept)• Application and Update Rules describe the behavior of the

presentation (e.g. conditional slices in AM) and keep the User Session up-to-date (AHAM rules)

TU/e technische universiteit eindhoven

Adaptation Model Example

TU/e technische universiteit eindhoven

Adaptation Model Syntax

Adaptability Condition

Adaptivity Condition<rdfs:Class rdf:ID=“Slice.painter.main”

slice:condition=“us:Biography =false”>

<rdf:subClassOf rdf:resource=“#Slice”/>

</rdfs:Class>

<rdfs:Class rdf:ID=“Slice.painting.picture”

slice:condition=“prf:ImageCapable=Yes”>

<rdf:subClassOf rdf:resource=“#Slice”/>

</rdfs:Class>

<rdfs:Class rdf:ID=“Slice.painting.main”

slice:condition=“us:Painter > 10”>

<rdf:subClassOf rdf:resource=“#Slice”/>

</rdfs:Class>

TU/e technische universiteit eindhoven

Profile Example

Device/User Profile (CC/PP encoding)• Screen size: 100x80

• Preferred language: English

<ccpp:component>

<up:UserPreferences>

<up:Language>English</up:Language>

</up:UserPreferences>

</ccpp:component>

</rdf:Description>

<rdf:Description rdf:about=“Profile”>

<ccpp:component>

<prf:HardwarePlatform>

<prf:ImageCapable>No</prf:ImageCapable>

<prf:ScreenSize>100x80</prf:ScreenSize>

</prf:HardwarePlatform>

</ccpp:component>

TU/e technische universiteit eindhoven

Update Rule (AHA) Example

Update the Biography record in the User Session table to true after the user visited “Slice.painter.main”.

<us:Slice.painter.main”>

<aha:updatelist>

<aha:SetOfConcepts>

<aha:item><us:Biography

aha:update=“true”/></aha:item>

</aha:SetOfConcepts>

</aha:updatelist>

</us:Slice.painter.main>

US Value

us.Biography(“Rembrandt”)

false

US Value

us.Biography(“Rembrandt”)

true

TU/e technische universiteit eindhoven

Update Rule (AHA) Example

<us:Slice.painter.main”>

<aha:updatelist>

<aha:SetOfConcepts>

<aha:item><us:Painting aha:update=“+80”/></aha:item>

<aha:item><us:Painter aha:update=“+40”/></aha:item>

</aha:SetOfConcepts>

</aha:updatelist>

</us:Slice.painter.main>

US Value

us.Painter(“Rembrandt”)

0 (<10)

US Value

us.Painter(“Rembrandt”)

40%x35=14 (>10)

TU/e technische universiteit eindhoven

Presentation Model

• Based on the concept of region which contains attributes and possibly other regions

• Each region has a rectangular area associated• Slices are translated to regions, one slice can be

mapped to several regions• Slice relationships are materialized with:

– Navigational relationships– Spatial relationships– Temporal relationships

TU/e technische universiteit eindhoven

Presentation Model Example

Bookcase regions

Screen rendering

bookcase

shelf

P.picture

painting

P.picture

P.name

Region

Attribute

(Associated to a certain painting P)

xy

right

below

Navigational Relationship

Spatial Relationship

0

1

2 0

P1 P2 P3

P4 P5 P6

P7

P1

‘Stone Bridge’ 1638 …

Priority (Priority 0 is always fulfilled)

TU/e technische universiteit eindhoven

XSL

Prototype

• XSLT code generation

• Two code generators:– HTML for PC Web browsers– WML code for WAP phone browsers

XSL

<xsl:template match=“slice-instance”>

<TABLE>

<xsl:apply-templates select=“*”/>

</TABLE>

</xsl:template>

<xsl:template match=“slice-instance”>

<CARD id=“{@id}”>

<xsl:apply-templates select=“*”/>

</CARD>

</xsl:template>

HTMLWML

TU/e technische universiteit eindhoven

Rendering

TU/e technische universiteit eindhoven

Rendering

TU/e technische universiteit eindhoven

Summary

• Hera methodology originated from RMM, suggests a sequence of design steps

• Our framework supports – integration of heterogeneous information (CM

populated from several heterogeneous data sources)– automated presentation design: AM serves as a

presentation blue print from which a concrete presentation is derived (w.r.t. a query)

– user/platform adaptation (adaptability and adaptivity)

TU/e technische universiteit eindhoven

Future Work

• Adaptation in all design steps including the Conceptual Model and Integration Model

• Experiment with higher ontology languages (e.g. DAML+OIL) as the basis for the CM

• Further development of tools for presentation rendering

• Authoring tools that would help the designer to build specification models in all design steps